@beinformed/ui 1.23.3-beta.0 → 1.23.5

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 (1160) hide show
  1. package/CHANGELOG.md +5 -1
  2. package/esm/builder/index.js +0 -1
  3. package/esm/builder/index.js.map +1 -1
  4. package/esm/builder/mergeLayoutHintConfigurations.js +11 -1
  5. package/esm/builder/mergeLayoutHintConfigurations.js.map +1 -1
  6. package/esm/constants/Constants.js +28 -23
  7. package/esm/constants/Constants.js.map +1 -1
  8. package/esm/constants/LayoutHintConfig.js +0 -1
  9. package/esm/constants/LayoutHintConfig.js.map +1 -1
  10. package/esm/constants/LayoutHints.js +27 -11
  11. package/esm/constants/LayoutHints.js.map +1 -1
  12. package/esm/constants/Settings.js +15 -9
  13. package/esm/constants/Settings.js.map +1 -1
  14. package/esm/constants/index.js +0 -1
  15. package/esm/constants/index.js.map +1 -1
  16. package/esm/exceptions/ConfigurationException.js +2 -2
  17. package/esm/exceptions/ConfigurationException.js.map +1 -1
  18. package/esm/exceptions/FetchException.js +28 -9
  19. package/esm/exceptions/FetchException.js.map +1 -1
  20. package/esm/exceptions/IllegalArgumentException.js +2 -1
  21. package/esm/exceptions/IllegalArgumentException.js.map +1 -1
  22. package/esm/exceptions/IllegalReturnException.js +2 -1
  23. package/esm/exceptions/IllegalReturnException.js.map +1 -1
  24. package/esm/exceptions/IllegalStateException.js +2 -1
  25. package/esm/exceptions/IllegalStateException.js.map +1 -1
  26. package/esm/exceptions/JsonParseException.js +2 -1
  27. package/esm/exceptions/JsonParseException.js.map +1 -1
  28. package/esm/exceptions/MissingPropertyException.js +2 -1
  29. package/esm/exceptions/MissingPropertyException.js.map +1 -1
  30. package/esm/exceptions/NetworkException.js +10 -1
  31. package/esm/exceptions/NetworkException.js.map +1 -1
  32. package/esm/exceptions/NotAllowedUriException.js +2 -1
  33. package/esm/exceptions/NotAllowedUriException.js.map +1 -1
  34. package/esm/exceptions/NotFoundException.js +11 -1
  35. package/esm/exceptions/NotFoundException.js.map +1 -1
  36. package/esm/exceptions/ServerRequestException.js +2 -1
  37. package/esm/exceptions/ServerRequestException.js.map +1 -1
  38. package/esm/exceptions/ThemePropertyException.js +2 -1
  39. package/esm/exceptions/ThemePropertyException.js.map +1 -1
  40. package/esm/exceptions/TimeoutException.js +6 -1
  41. package/esm/exceptions/TimeoutException.js.map +1 -1
  42. package/esm/exceptions/UnauthorizedException.js +10 -1
  43. package/esm/exceptions/UnauthorizedException.js.map +1 -1
  44. package/esm/exceptions/UnsupportedOperationException.js +2 -1
  45. package/esm/exceptions/UnsupportedOperationException.js.map +1 -1
  46. package/esm/exceptions/index.js +0 -1
  47. package/esm/exceptions/index.js.map +1 -1
  48. package/esm/hooks/index.js +0 -1
  49. package/esm/hooks/index.js.map +1 -1
  50. package/esm/hooks/useAllFormsOnModel.js +16 -0
  51. package/esm/hooks/useAllFormsOnModel.js.map +1 -1
  52. package/esm/hooks/useAuthentication.js +23 -9
  53. package/esm/hooks/useAuthentication.js.map +1 -1
  54. package/esm/hooks/useContent.js +10 -3
  55. package/esm/hooks/useContent.js.map +1 -1
  56. package/esm/hooks/useDeepCompareEffect.js +6 -2
  57. package/esm/hooks/useDeepCompareEffect.js.map +1 -1
  58. package/esm/hooks/useForm.js +13 -4
  59. package/esm/hooks/useForm.js.map +1 -1
  60. package/esm/hooks/useI18n.js +7 -3
  61. package/esm/hooks/useI18n.js.map +1 -1
  62. package/esm/hooks/useModal.js +3 -0
  63. package/esm/hooks/useModal.js.map +1 -1
  64. package/esm/hooks/useModelCatalog.js +21 -10
  65. package/esm/hooks/useModelCatalog.js.map +1 -1
  66. package/esm/hooks/useModels.js +1 -1
  67. package/esm/hooks/useModels.js.map +1 -1
  68. package/esm/hooks/useModularUI.js +11 -7
  69. package/esm/hooks/useModularUI.js.map +1 -1
  70. package/esm/hooks/useModularUIBasic.js +12 -2
  71. package/esm/hooks/useModularUIBasic.js.map +1 -1
  72. package/esm/hooks/useModularUIModel.js +10 -11
  73. package/esm/hooks/useModularUIModel.js.map +1 -1
  74. package/esm/hooks/useModularUIRequest.js +1 -2
  75. package/esm/hooks/useModularUIRequest.js.map +1 -1
  76. package/esm/hooks/useNotification.js +2 -2
  77. package/esm/hooks/useNotification.js.map +1 -1
  78. package/esm/hooks/usePreference.js +1 -1
  79. package/esm/hooks/usePreference.js.map +1 -1
  80. package/esm/hooks/useProgressIndicator.js +2 -3
  81. package/esm/hooks/useProgressIndicator.js.map +1 -1
  82. package/esm/hooks/useRouter.js +10 -7
  83. package/esm/hooks/useRouter.js.map +1 -1
  84. package/esm/i18n/Locale.js +40 -15
  85. package/esm/i18n/Locale.js.map +1 -1
  86. package/esm/i18n/Locales.js +33 -13
  87. package/esm/i18n/Locales.js.map +1 -1
  88. package/esm/i18n/Message.js +5 -3
  89. package/esm/i18n/Message.js.map +1 -1
  90. package/esm/i18n/index.js +0 -1
  91. package/esm/i18n/index.js.map +1 -1
  92. package/esm/i18n/languages.js +0 -1
  93. package/esm/i18n/languages.js.map +1 -1
  94. package/esm/i18n/translations/beinformed_error_messages_en.nl.js +0 -1
  95. package/esm/i18n/translations/beinformed_error_messages_en.nl.js.map +1 -1
  96. package/esm/i18n/translations/beinformed_error_messages_nl.nl.js +0 -1
  97. package/esm/i18n/translations/beinformed_error_messages_nl.nl.js.map +1 -1
  98. package/esm/i18n/withMessage.js +4 -1
  99. package/esm/i18n/withMessage.js.map +1 -1
  100. package/esm/index.js +0 -1
  101. package/esm/index.js.map +1 -1
  102. package/esm/models/actions/ActionCollection.js +26 -13
  103. package/esm/models/actions/ActionCollection.js.map +1 -1
  104. package/esm/models/actions/ActionModel.js +60 -23
  105. package/esm/models/actions/ActionModel.js.map +1 -1
  106. package/esm/models/application/ApplicationModel.js +34 -14
  107. package/esm/models/application/ApplicationModel.js.map +1 -1
  108. package/esm/models/attributes/AttributeCollection.js +81 -27
  109. package/esm/models/attributes/AttributeCollection.js.map +1 -1
  110. package/esm/models/attributes/AttributeContent.js +56 -23
  111. package/esm/models/attributes/AttributeContent.js.map +1 -1
  112. package/esm/models/attributes/AttributeDataHelper.js +83 -33
  113. package/esm/models/attributes/AttributeDataHelper.js.map +1 -1
  114. package/esm/models/attributes/AttributeModel.js +258 -102
  115. package/esm/models/attributes/AttributeModel.js.map +1 -1
  116. package/esm/models/attributes/AttributeSetModel.js +17 -6
  117. package/esm/models/attributes/AttributeSetModel.js.map +1 -1
  118. package/esm/models/attributes/BooleanAttributeModel.js +76 -29
  119. package/esm/models/attributes/BooleanAttributeModel.js.map +1 -1
  120. package/esm/models/attributes/CaptchaAttributeModel.js +8 -5
  121. package/esm/models/attributes/CaptchaAttributeModel.js.map +1 -1
  122. package/esm/models/attributes/ChoiceAttributeModel.js +108 -38
  123. package/esm/models/attributes/ChoiceAttributeModel.js.map +1 -1
  124. package/esm/models/attributes/ChoiceAttributeOptionCollection.js +80 -27
  125. package/esm/models/attributes/ChoiceAttributeOptionCollection.js.map +1 -1
  126. package/esm/models/attributes/ChoiceAttributeOptionModel.js +102 -34
  127. package/esm/models/attributes/ChoiceAttributeOptionModel.js.map +1 -1
  128. package/esm/models/attributes/CompositeAttributeChildCollection.js +64 -23
  129. package/esm/models/attributes/CompositeAttributeChildCollection.js.map +1 -1
  130. package/esm/models/attributes/CompositeAttributeModel.js +99 -40
  131. package/esm/models/attributes/CompositeAttributeModel.js.map +1 -1
  132. package/esm/models/attributes/DatetimeAttributeModel.js +145 -51
  133. package/esm/models/attributes/DatetimeAttributeModel.js.map +1 -1
  134. package/esm/models/attributes/HelptextAttributeModel.js +17 -7
  135. package/esm/models/attributes/HelptextAttributeModel.js.map +1 -1
  136. package/esm/models/attributes/LabelAttributeModel.js +8 -4
  137. package/esm/models/attributes/LabelAttributeModel.js.map +1 -1
  138. package/esm/models/attributes/MemoAttributeModel.js +10 -6
  139. package/esm/models/attributes/MemoAttributeModel.js.map +1 -1
  140. package/esm/models/attributes/MoneyAttributeModel.js +10 -5
  141. package/esm/models/attributes/MoneyAttributeModel.js.map +1 -1
  142. package/esm/models/attributes/NumberAttributeModel.js +49 -22
  143. package/esm/models/attributes/NumberAttributeModel.js.map +1 -1
  144. package/esm/models/attributes/PasswordAttributeModel.js +65 -23
  145. package/esm/models/attributes/PasswordAttributeModel.js.map +1 -1
  146. package/esm/models/attributes/StringAttributeModel.js +72 -29
  147. package/esm/models/attributes/StringAttributeModel.js.map +1 -1
  148. package/esm/models/attributes/UploadAttributeModel.js +62 -21
  149. package/esm/models/attributes/UploadAttributeModel.js.map +1 -1
  150. package/esm/models/attributes/XMLAttributeModel.js +10 -5
  151. package/esm/models/attributes/XMLAttributeModel.js.map +1 -1
  152. package/esm/models/attributes/_createAttribute.js +21 -7
  153. package/esm/models/attributes/_createAttribute.js.map +1 -1
  154. package/esm/models/attributes/input-constraints/BSNConstraint.js +19 -8
  155. package/esm/models/attributes/input-constraints/BSNConstraint.js.map +1 -1
  156. package/esm/models/attributes/input-constraints/ConstraintCollection.js +10 -3
  157. package/esm/models/attributes/input-constraints/ConstraintCollection.js.map +1 -1
  158. package/esm/models/attributes/input-constraints/ConstraintModel.js +22 -6
  159. package/esm/models/attributes/input-constraints/ConstraintModel.js.map +1 -1
  160. package/esm/models/attributes/input-constraints/DateBoundaryConstraint.js +59 -16
  161. package/esm/models/attributes/input-constraints/DateBoundaryConstraint.js.map +1 -1
  162. package/esm/models/attributes/input-constraints/DateTimeDateFormatConstraint.js +22 -8
  163. package/esm/models/attributes/input-constraints/DateTimeDateFormatConstraint.js.map +1 -1
  164. package/esm/models/attributes/input-constraints/DateTimeTimeFormatConstraint.js +22 -8
  165. package/esm/models/attributes/input-constraints/DateTimeTimeFormatConstraint.js.map +1 -1
  166. package/esm/models/attributes/input-constraints/DatetimeFormatConstraint.js +28 -10
  167. package/esm/models/attributes/input-constraints/DatetimeFormatConstraint.js.map +1 -1
  168. package/esm/models/attributes/input-constraints/FileExtensionConstraint.js +18 -7
  169. package/esm/models/attributes/input-constraints/FileExtensionConstraint.js.map +1 -1
  170. package/esm/models/attributes/input-constraints/FileSizeConstraint.js +24 -10
  171. package/esm/models/attributes/input-constraints/FileSizeConstraint.js.map +1 -1
  172. package/esm/models/attributes/input-constraints/IBANConstraint.js +13 -6
  173. package/esm/models/attributes/input-constraints/IBANConstraint.js.map +1 -1
  174. package/esm/models/attributes/input-constraints/MandatoryConstraint.js +15 -8
  175. package/esm/models/attributes/input-constraints/MandatoryConstraint.js.map +1 -1
  176. package/esm/models/attributes/input-constraints/MandatoryRangeConstraint.js +25 -8
  177. package/esm/models/attributes/input-constraints/MandatoryRangeConstraint.js.map +1 -1
  178. package/esm/models/attributes/input-constraints/NumberBoundaryConstraint.js +53 -17
  179. package/esm/models/attributes/input-constraints/NumberBoundaryConstraint.js.map +1 -1
  180. package/esm/models/attributes/input-constraints/NumberFormatConstraint.js +41 -15
  181. package/esm/models/attributes/input-constraints/NumberFormatConstraint.js.map +1 -1
  182. package/esm/models/attributes/input-constraints/NumberGroupingConstraint.js +39 -15
  183. package/esm/models/attributes/input-constraints/NumberGroupingConstraint.js.map +1 -1
  184. package/esm/models/attributes/input-constraints/PasswordConfirmConstraint.js +20 -8
  185. package/esm/models/attributes/input-constraints/PasswordConfirmConstraint.js.map +1 -1
  186. package/esm/models/attributes/input-constraints/PasswordLowerAndUpperCaseConstraint.js +12 -7
  187. package/esm/models/attributes/input-constraints/PasswordLowerAndUpperCaseConstraint.js.map +1 -1
  188. package/esm/models/attributes/input-constraints/PasswordMinNumericCharactersConstraint.js +17 -7
  189. package/esm/models/attributes/input-constraints/PasswordMinNumericCharactersConstraint.js.map +1 -1
  190. package/esm/models/attributes/input-constraints/PasswordMinSpecialCharactersConstraint.js +17 -7
  191. package/esm/models/attributes/input-constraints/PasswordMinSpecialCharactersConstraint.js.map +1 -1
  192. package/esm/models/attributes/input-constraints/PasswordThreeConsecutiveCharactersNotAllowedConstraint.js +22 -8
  193. package/esm/models/attributes/input-constraints/PasswordThreeConsecutiveCharactersNotAllowedConstraint.js.map +1 -1
  194. package/esm/models/attributes/input-constraints/RangeConstraint.js +57 -22
  195. package/esm/models/attributes/input-constraints/RangeConstraint.js.map +1 -1
  196. package/esm/models/attributes/input-constraints/RegexConstraint.js +18 -7
  197. package/esm/models/attributes/input-constraints/RegexConstraint.js.map +1 -1
  198. package/esm/models/attributes/input-constraints/StringLengthConstraint.js +50 -14
  199. package/esm/models/attributes/input-constraints/StringLengthConstraint.js.map +1 -1
  200. package/esm/models/attributes/input-constraints/XMLConstraint.js +17 -8
  201. package/esm/models/attributes/input-constraints/XMLConstraint.js.map +1 -1
  202. package/esm/models/attributes/layouthint-rules/BaseLayoutHintRule.js +17 -9
  203. package/esm/models/attributes/layouthint-rules/BaseLayoutHintRule.js.map +1 -1
  204. package/esm/models/attributes/layouthint-rules/DependentAttribute.js +84 -30
  205. package/esm/models/attributes/layouthint-rules/DependentAttribute.js.map +1 -1
  206. package/esm/models/attributes/layouthint-rules/LayoutHintRuleCollection.js +11 -5
  207. package/esm/models/attributes/layouthint-rules/LayoutHintRuleCollection.js.map +1 -1
  208. package/esm/models/attributes/layouthint-rules/RemainingTotalUploadSize.js +10 -4
  209. package/esm/models/attributes/layouthint-rules/RemainingTotalUploadSize.js.map +1 -1
  210. package/esm/models/base/BaseCollection.js +67 -27
  211. package/esm/models/base/BaseCollection.js.map +1 -1
  212. package/esm/models/base/BaseModel.js +39 -14
  213. package/esm/models/base/BaseModel.js.map +1 -1
  214. package/esm/models/base/ResourceCollection.js +5 -2
  215. package/esm/models/base/ResourceCollection.js.map +1 -1
  216. package/esm/models/base/ResourceModel.js +53 -21
  217. package/esm/models/base/ResourceModel.js.map +1 -1
  218. package/esm/models/caseview/CaseViewModel.js +46 -16
  219. package/esm/models/caseview/CaseViewModel.js.map +1 -1
  220. package/esm/models/concepts/BusinessScenarioModel.js +39 -10
  221. package/esm/models/concepts/BusinessScenarioModel.js.map +1 -1
  222. package/esm/models/concepts/ConceptDetailModel.js +85 -32
  223. package/esm/models/concepts/ConceptDetailModel.js.map +1 -1
  224. package/esm/models/concepts/ConceptIndexModel.js +36 -12
  225. package/esm/models/concepts/ConceptIndexModel.js.map +1 -1
  226. package/esm/models/concepts/ConceptLinkModel.js +45 -16
  227. package/esm/models/concepts/ConceptLinkModel.js.map +1 -1
  228. package/esm/models/concepts/ConceptRelationCollection.js +20 -7
  229. package/esm/models/concepts/ConceptRelationCollection.js.map +1 -1
  230. package/esm/models/concepts/ConceptRelationModel.js +22 -8
  231. package/esm/models/concepts/ConceptRelationModel.js.map +1 -1
  232. package/esm/models/concepts/ConceptTypeDetailModel.js +25 -12
  233. package/esm/models/concepts/ConceptTypeDetailModel.js.map +1 -1
  234. package/esm/models/concepts/SourceReferenceCollection.js +5 -2
  235. package/esm/models/concepts/SourceReferenceCollection.js.map +1 -1
  236. package/esm/models/concepts/SourceReferenceModel.js +21 -10
  237. package/esm/models/concepts/SourceReferenceModel.js.map +1 -1
  238. package/esm/models/content/ContentIndexModel.js +37 -13
  239. package/esm/models/content/ContentIndexModel.js.map +1 -1
  240. package/esm/models/content/ContentLinkModel.js +56 -19
  241. package/esm/models/content/ContentLinkModel.js.map +1 -1
  242. package/esm/models/content/ContentModel.js +59 -22
  243. package/esm/models/content/ContentModel.js.map +1 -1
  244. package/esm/models/content/ContentTOCModel.js +45 -17
  245. package/esm/models/content/ContentTOCModel.js.map +1 -1
  246. package/esm/models/content/ContentTypeModel.js +16 -8
  247. package/esm/models/content/ContentTypeModel.js.map +1 -1
  248. package/esm/models/content/SectionModel.js +57 -20
  249. package/esm/models/content/SectionModel.js.map +1 -1
  250. package/esm/models/content/SubSectionModel.js +43 -16
  251. package/esm/models/content/SubSectionModel.js.map +1 -1
  252. package/esm/models/contentconfiguration/ContentConfiguration.js +20 -6
  253. package/esm/models/contentconfiguration/ContentConfiguration.js.map +1 -1
  254. package/esm/models/contentconfiguration/ContentConfigurationElements.js +48 -11
  255. package/esm/models/contentconfiguration/ContentConfigurationElements.js.map +1 -1
  256. package/esm/models/contentconfiguration/ContentConfigurationEndResults.js +13 -3
  257. package/esm/models/contentconfiguration/ContentConfigurationEndResults.js.map +1 -1
  258. package/esm/models/contentconfiguration/ContentConfigurationQuestions.js +15 -5
  259. package/esm/models/contentconfiguration/ContentConfigurationQuestions.js.map +1 -1
  260. package/esm/models/contentconfiguration/ContentConfigurationResults.js +32 -13
  261. package/esm/models/contentconfiguration/ContentConfigurationResults.js.map +1 -1
  262. package/esm/models/detail/DetailModel.js +54 -21
  263. package/esm/models/detail/DetailModel.js.map +1 -1
  264. package/esm/models/error/ErrorCollection.js +29 -11
  265. package/esm/models/error/ErrorCollection.js.map +1 -1
  266. package/esm/models/error/ErrorModel.js +21 -8
  267. package/esm/models/error/ErrorModel.js.map +1 -1
  268. package/esm/models/error/ErrorResponse.js +93 -37
  269. package/esm/models/error/ErrorResponse.js.map +1 -1
  270. package/esm/models/filters/AssignmentFilterModel.js +45 -19
  271. package/esm/models/filters/AssignmentFilterModel.js.map +1 -1
  272. package/esm/models/filters/BaseFilterModel.js +58 -25
  273. package/esm/models/filters/BaseFilterModel.js.map +1 -1
  274. package/esm/models/filters/ConceptIndexFilterModel.js +5 -1
  275. package/esm/models/filters/ConceptIndexFilterModel.js.map +1 -1
  276. package/esm/models/filters/FilterCollection.js +44 -11
  277. package/esm/models/filters/FilterCollection.js.map +1 -1
  278. package/esm/models/filters/FilterModel.js +1 -2
  279. package/esm/models/filters/FilterModel.js.map +1 -1
  280. package/esm/models/filters/RangeFilterModel.js +6 -1
  281. package/esm/models/filters/RangeFilterModel.js.map +1 -1
  282. package/esm/models/form/FormModel.js +332 -136
  283. package/esm/models/form/FormModel.js.map +1 -1
  284. package/esm/models/form/FormObjectModel.js +141 -55
  285. package/esm/models/form/FormObjectModel.js.map +1 -1
  286. package/esm/models/grouping/GroupingModel.js +58 -20
  287. package/esm/models/grouping/GroupingModel.js.map +1 -1
  288. package/esm/models/href/Href.js +121 -47
  289. package/esm/models/href/Href.js.map +1 -1
  290. package/esm/models/href/ListHref.js +32 -11
  291. package/esm/models/href/ListHref.js.map +1 -1
  292. package/esm/models/index.js +0 -1
  293. package/esm/models/index.js.map +1 -1
  294. package/esm/models/layouthint/LayoutHintCollection.js +32 -9
  295. package/esm/models/layouthint/LayoutHintCollection.js.map +1 -1
  296. package/esm/models/links/LinkCollection.js +44 -15
  297. package/esm/models/links/LinkCollection.js.map +1 -1
  298. package/esm/models/links/LinkModel.js +57 -21
  299. package/esm/models/links/LinkModel.js.map +1 -1
  300. package/esm/models/links/normalizeLinkJSON.js +21 -5
  301. package/esm/models/links/normalizeLinkJSON.js.map +1 -1
  302. package/esm/models/list/ListDetailModel.js +79 -31
  303. package/esm/models/list/ListDetailModel.js.map +1 -1
  304. package/esm/models/list/ListHeaderModel.js +28 -10
  305. package/esm/models/list/ListHeaderModel.js.map +1 -1
  306. package/esm/models/list/ListItemCollection.js +20 -4
  307. package/esm/models/list/ListItemCollection.js.map +1 -1
  308. package/esm/models/list/ListItemModel.js +23 -7
  309. package/esm/models/list/ListItemModel.js.map +1 -1
  310. package/esm/models/list/ListModel.js +115 -38
  311. package/esm/models/list/ListModel.js.map +1 -1
  312. package/esm/models/lookup/LookupOptionCollection.js +6 -4
  313. package/esm/models/lookup/LookupOptionCollection.js.map +1 -1
  314. package/esm/models/lookup/LookupOptionsModel.js +16 -5
  315. package/esm/models/lookup/LookupOptionsModel.js.map +1 -1
  316. package/esm/models/modelcatalog/ModelCatalogModel.js +14 -6
  317. package/esm/models/modelcatalog/ModelCatalogModel.js.map +1 -1
  318. package/esm/models/paging/PagesizeModel.js +12 -4
  319. package/esm/models/paging/PagesizeModel.js.map +1 -1
  320. package/esm/models/paging/PagingModel.js +26 -11
  321. package/esm/models/paging/PagingModel.js.map +1 -1
  322. package/esm/models/panels/GroupingPanelModel.js +41 -14
  323. package/esm/models/panels/GroupingPanelModel.js.map +1 -1
  324. package/esm/models/parameter/Parameter.js +41 -14
  325. package/esm/models/parameter/Parameter.js.map +1 -1
  326. package/esm/models/process/ProcessStatusSettingsModel.js +24 -10
  327. package/esm/models/process/ProcessStatusSettingsModel.js.map +1 -1
  328. package/esm/models/resolveModel.js +7 -2
  329. package/esm/models/resolveModel.js.map +1 -1
  330. package/esm/models/search/CaseSearchModel.js +9 -3
  331. package/esm/models/search/CaseSearchModel.js.map +1 -1
  332. package/esm/models/sorting/SortOptionModel.js +41 -15
  333. package/esm/models/sorting/SortOptionModel.js.map +1 -1
  334. package/esm/models/sorting/SortingModel.js +28 -9
  335. package/esm/models/sorting/SortingModel.js.map +1 -1
  336. package/esm/models/tab/TabModel.js +41 -14
  337. package/esm/models/tab/TabModel.js.map +1 -1
  338. package/esm/models/taskgroup/TaskGroupCollection.js +2 -1
  339. package/esm/models/taskgroup/TaskGroupCollection.js.map +1 -1
  340. package/esm/models/taskgroup/TaskGroupModel.js +17 -7
  341. package/esm/models/taskgroup/TaskGroupModel.js.map +1 -1
  342. package/esm/models/user/UserModel.js +10 -5
  343. package/esm/models/user/UserModel.js.map +1 -1
  344. package/esm/models/user/UserProfileModel.js +10 -2
  345. package/esm/models/user/UserProfileModel.js.map +1 -1
  346. package/esm/models/user/UserServicesModel.js +27 -11
  347. package/esm/models/user/UserServicesModel.js.map +1 -1
  348. package/esm/modularui/Authenticate.js +56 -21
  349. package/esm/modularui/Authenticate.js.map +1 -1
  350. package/esm/modularui/ModularUIError.js +8 -3
  351. package/esm/modularui/ModularUIError.js.map +1 -1
  352. package/esm/modularui/ModularUIRequest.js +194 -77
  353. package/esm/modularui/ModularUIRequest.js.map +1 -1
  354. package/esm/modularui/ModularUIResponse.js +37 -13
  355. package/esm/modularui/ModularUIResponse.js.map +1 -1
  356. package/esm/modularui/index.js +0 -1
  357. package/esm/modularui/index.js.map +1 -1
  358. package/esm/react/ErrorBoundary.js +12 -2
  359. package/esm/react/ErrorBoundary.js.map +1 -1
  360. package/esm/react/ErrorBoundaryFallback.js +2 -2
  361. package/esm/react/ErrorBoundaryFallback.js.map +1 -1
  362. package/esm/react/index.js +0 -1
  363. package/esm/react/index.js.map +1 -1
  364. package/esm/react/utils.js +7 -3
  365. package/esm/react/utils.js.map +1 -1
  366. package/esm/react-client/Init.js +2 -1
  367. package/esm/react-client/Init.js.map +1 -1
  368. package/esm/react-client/client.js +29 -15
  369. package/esm/react-client/client.js.map +1 -1
  370. package/esm/react-client/contextPath.js +8 -3
  371. package/esm/react-client/contextPath.js.map +1 -1
  372. package/esm/react-client/index.js +0 -1
  373. package/esm/react-client/index.js.map +1 -1
  374. package/esm/react-client/rehydrate.js +19 -4
  375. package/esm/react-client/rehydrate.js.map +1 -1
  376. package/esm/react-server/contextPath.js +2 -2
  377. package/esm/react-server/contextPath.js.map +1 -1
  378. package/esm/react-server/createSSRComplete.js +12 -2
  379. package/esm/react-server/createSSRComplete.js.map +1 -1
  380. package/esm/react-server/htmlpage.js +12 -25
  381. package/esm/react-server/htmlpage.js.map +1 -1
  382. package/esm/react-server/index.js +0 -1
  383. package/esm/react-server/index.js.map +1 -1
  384. package/esm/react-server/renderSSRComplete.js +4 -4
  385. package/esm/react-server/renderSSRComplete.js.map +1 -1
  386. package/esm/react-server/renderSSRMinimal.js +2 -1
  387. package/esm/react-server/renderSSRMinimal.js.map +1 -1
  388. package/esm/react-server/requestInformation.js +38 -9
  389. package/esm/react-server/requestInformation.js.map +1 -1
  390. package/esm/react-server/serverNoSSR.js +7 -3
  391. package/esm/react-server/serverNoSSR.js.map +1 -1
  392. package/esm/react-server/serverSSR.js +2 -1
  393. package/esm/react-server/serverSSR.js.map +1 -1
  394. package/esm/react-server/serverUtil.js +37 -13
  395. package/esm/react-server/serverUtil.js.map +1 -1
  396. package/esm/react-theme/ThemeProvider.js +2 -1
  397. package/esm/react-theme/ThemeProvider.js.map +1 -1
  398. package/esm/react-theme/createTheme.js +20 -7
  399. package/esm/react-theme/createTheme.js.map +1 -1
  400. package/esm/react-theme/index.js +0 -1
  401. package/esm/react-theme/index.js.map +1 -1
  402. package/esm/react-theme/useTheme.js +2 -1
  403. package/esm/react-theme/useTheme.js.map +1 -1
  404. package/esm/react-theme/utils/background.js +5 -2
  405. package/esm/react-theme/utils/background.js.map +1 -1
  406. package/esm/react-theme/utils/colors.js +9 -3
  407. package/esm/react-theme/utils/colors.js.map +1 -1
  408. package/esm/react-theme/utils/contrast.js +27 -8
  409. package/esm/react-theme/utils/contrast.js.map +1 -1
  410. package/esm/react-theme/utils/corners.js +10 -4
  411. package/esm/react-theme/utils/corners.js.map +1 -1
  412. package/esm/react-theme/utils/spacers.js +22 -7
  413. package/esm/react-theme/utils/spacers.js.map +1 -1
  414. package/esm/react-theme/utils/themeProps.js +22 -8
  415. package/esm/react-theme/utils/themeProps.js.map +1 -1
  416. package/esm/redux/_i18n/actions.js +3 -3
  417. package/esm/redux/_i18n/actions.js.map +1 -1
  418. package/esm/redux/_i18n/index.js +0 -1
  419. package/esm/redux/_i18n/index.js.map +1 -1
  420. package/esm/redux/_i18n/reducer.js +16 -13
  421. package/esm/redux/_i18n/reducer.js.map +1 -1
  422. package/esm/redux/_modularui/actions.js +48 -36
  423. package/esm/redux/_modularui/actions.js.map +1 -1
  424. package/esm/redux/_modularui/connector.js +18 -21
  425. package/esm/redux/_modularui/connector.js.map +1 -1
  426. package/esm/redux/_modularui/index.js +0 -1
  427. package/esm/redux/_modularui/index.js.map +1 -1
  428. package/esm/redux/_modularui/middleware.js +22 -8
  429. package/esm/redux/_modularui/middleware.js.map +1 -1
  430. package/esm/redux/_modularui/modularuiUtils.js +25 -10
  431. package/esm/redux/_modularui/modularuiUtils.js.map +1 -1
  432. package/esm/redux/_modularui/reducer.js +39 -19
  433. package/esm/redux/_modularui/reducer.js.map +1 -1
  434. package/esm/redux/_modularui/selectors.js +62 -20
  435. package/esm/redux/_modularui/selectors.js.map +1 -1
  436. package/esm/redux/_modularui/withModularUI.js +3 -3
  437. package/esm/redux/_modularui/withModularUI.js.map +1 -1
  438. package/esm/redux/_router/actions.js +5 -7
  439. package/esm/redux/_router/actions.js.map +1 -1
  440. package/esm/redux/_router/connectors.js +14 -11
  441. package/esm/redux/_router/connectors.js.map +1 -1
  442. package/esm/redux/_router/index.js +0 -1
  443. package/esm/redux/_router/index.js.map +1 -1
  444. package/esm/redux/_router/middleware.js +1 -2
  445. package/esm/redux/_router/middleware.js.map +1 -1
  446. package/esm/redux/_router/reducer.js +3 -3
  447. package/esm/redux/_router/reducer.js.map +1 -1
  448. package/esm/redux/actions/Application.js +4 -2
  449. package/esm/redux/actions/Application.js.map +1 -1
  450. package/esm/redux/actions/Authorization.js +14 -8
  451. package/esm/redux/actions/Authorization.js.map +1 -1
  452. package/esm/redux/actions/Error.js +13 -5
  453. package/esm/redux/actions/Error.js.map +1 -1
  454. package/esm/redux/actions/Form.js +3 -2
  455. package/esm/redux/actions/Form.js.map +1 -1
  456. package/esm/redux/actions/FormAttributeSet.js +9 -1
  457. package/esm/redux/actions/FormAttributeSet.js.map +1 -1
  458. package/esm/redux/actions/FormAttributeSetRepeatable.js +3 -3
  459. package/esm/redux/actions/FormAttributeSetRepeatable.js.map +1 -1
  460. package/esm/redux/actions/FormAutosave.js +6 -4
  461. package/esm/redux/actions/FormAutosave.js.map +1 -1
  462. package/esm/redux/actions/FormAutosubmit.js +4 -1
  463. package/esm/redux/actions/FormAutosubmit.js.map +1 -1
  464. package/esm/redux/actions/FormValidations.js +7 -3
  465. package/esm/redux/actions/FormValidations.js.map +1 -1
  466. package/esm/redux/actions/Modals.js +1 -3
  467. package/esm/redux/actions/Modals.js.map +1 -1
  468. package/esm/redux/actions/Notification.js +10 -5
  469. package/esm/redux/actions/Notification.js.map +1 -1
  470. package/esm/redux/actions/Preferences.js +26 -14
  471. package/esm/redux/actions/Preferences.js.map +1 -1
  472. package/esm/redux/actions/ProgressIndicator.js +4 -5
  473. package/esm/redux/actions/ProgressIndicator.js.map +1 -1
  474. package/esm/redux/actions/SignIn.js +8 -5
  475. package/esm/redux/actions/SignIn.js.map +1 -1
  476. package/esm/redux/actions/SignOut.js +2 -2
  477. package/esm/redux/actions/SignOut.js.map +1 -1
  478. package/esm/redux/actions/index.js +0 -1
  479. package/esm/redux/actions/index.js.map +1 -1
  480. package/esm/redux/connectors/Application.js +1 -1
  481. package/esm/redux/connectors/Application.js.map +1 -1
  482. package/esm/redux/connectors/Breadcrumb.js +3 -2
  483. package/esm/redux/connectors/Breadcrumb.js.map +1 -1
  484. package/esm/redux/connectors/CaseView.js +1 -1
  485. package/esm/redux/connectors/CaseView.js.map +1 -1
  486. package/esm/redux/connectors/ConceptDetail.js +5 -2
  487. package/esm/redux/connectors/ConceptDetail.js.map +1 -1
  488. package/esm/redux/connectors/ContentBrowser.js +1 -1
  489. package/esm/redux/connectors/ContentBrowser.js.map +1 -1
  490. package/esm/redux/connectors/ContentDetail.js +5 -2
  491. package/esm/redux/connectors/ContentDetail.js.map +1 -1
  492. package/esm/redux/connectors/ContentDetailSection.js +5 -2
  493. package/esm/redux/connectors/ContentDetailSection.js.map +1 -1
  494. package/esm/redux/connectors/Form.js +10 -3
  495. package/esm/redux/connectors/Form.js.map +1 -1
  496. package/esm/redux/connectors/FormAttributeSet.js +3 -2
  497. package/esm/redux/connectors/FormAttributeSet.js.map +1 -1
  498. package/esm/redux/connectors/ListDetail.js +1 -1
  499. package/esm/redux/connectors/ListDetail.js.map +1 -1
  500. package/esm/redux/connectors/Modal.js +5 -1
  501. package/esm/redux/connectors/Modal.js.map +1 -1
  502. package/esm/redux/connectors/ModelCatalog.js +1 -1
  503. package/esm/redux/connectors/ModelCatalog.js.map +1 -1
  504. package/esm/redux/connectors/Notification.js +3 -2
  505. package/esm/redux/connectors/Notification.js.map +1 -1
  506. package/esm/redux/connectors/PanelRenderer.js +5 -1
  507. package/esm/redux/connectors/PanelRenderer.js.map +1 -1
  508. package/esm/redux/connectors/Preferences.js +4 -2
  509. package/esm/redux/connectors/Preferences.js.map +1 -1
  510. package/esm/redux/connectors/Progress.js +1 -2
  511. package/esm/redux/connectors/Progress.js.map +1 -1
  512. package/esm/redux/connectors/ProgressIndicator.js +3 -2
  513. package/esm/redux/connectors/ProgressIndicator.js.map +1 -1
  514. package/esm/redux/connectors/QuickSearch.js +1 -2
  515. package/esm/redux/connectors/QuickSearch.js.map +1 -1
  516. package/esm/redux/connectors/SignIn.js +6 -3
  517. package/esm/redux/connectors/SignIn.js.map +1 -1
  518. package/esm/redux/connectors/SignOut.js +6 -4
  519. package/esm/redux/connectors/SignOut.js.map +1 -1
  520. package/esm/redux/connectors/Tab.js +1 -1
  521. package/esm/redux/connectors/Tab.js.map +1 -1
  522. package/esm/redux/connectors/index.js +0 -1
  523. package/esm/redux/connectors/index.js.map +1 -1
  524. package/esm/redux/index.js +7 -16
  525. package/esm/redux/index.js.map +1 -1
  526. package/esm/redux/reducers/AuthReducer.js +14 -13
  527. package/esm/redux/reducers/AuthReducer.js.map +1 -1
  528. package/esm/redux/reducers/ErrorReducer.js +4 -3
  529. package/esm/redux/reducers/ErrorReducer.js.map +1 -1
  530. package/esm/redux/reducers/ModalsReducer.js +15 -11
  531. package/esm/redux/reducers/ModalsReducer.js.map +1 -1
  532. package/esm/redux/reducers/NotificationReducer.js +8 -7
  533. package/esm/redux/reducers/NotificationReducer.js.map +1 -1
  534. package/esm/redux/reducers/PreferencesReducer.js +7 -7
  535. package/esm/redux/reducers/PreferencesReducer.js.map +1 -1
  536. package/esm/redux/reducers/ProgressIndicatorReducer.js +15 -11
  537. package/esm/redux/reducers/ProgressIndicatorReducer.js.map +1 -1
  538. package/esm/redux/reducers/createReducer.js +1 -1
  539. package/esm/redux/reducers/createReducer.js.map +1 -1
  540. package/esm/redux/reducers/index.js +0 -1
  541. package/esm/redux/reducers/index.js.map +1 -1
  542. package/esm/redux/selectors/i18n.js +4 -5
  543. package/esm/redux/selectors/i18n.js.map +1 -1
  544. package/esm/redux/selectors/index.js +0 -1
  545. package/esm/redux/selectors/index.js.map +1 -1
  546. package/esm/redux/store/beforeRenderHooks.js +1 -2
  547. package/esm/redux/store/beforeRenderHooks.js.map +1 -1
  548. package/esm/redux/store/configureStore.js +7 -3
  549. package/esm/redux/store/configureStore.js.map +1 -1
  550. package/esm/utils/browser/Cache.js +44 -17
  551. package/esm/utils/browser/Cache.js.map +1 -1
  552. package/esm/utils/browser/Cookies.js +9 -4
  553. package/esm/utils/browser/Cookies.js.map +1 -1
  554. package/esm/utils/datetime/DateTimeUtil.js +110 -53
  555. package/esm/utils/datetime/DateTimeUtil.js.map +1 -1
  556. package/esm/utils/fetch/serverFetch.js +8 -2
  557. package/esm/utils/fetch/serverFetch.js.map +1 -1
  558. package/esm/utils/fetch/universalFetch.js +17 -6
  559. package/esm/utils/fetch/universalFetch.js.map +1 -1
  560. package/esm/utils/fetch/xhr.js +101 -42
  561. package/esm/utils/fetch/xhr.js.map +1 -1
  562. package/esm/utils/helpers/checkResource.js +6 -6
  563. package/esm/utils/helpers/checkResource.js.map +1 -1
  564. package/esm/utils/helpers/createHash.js +5 -3
  565. package/esm/utils/helpers/createHash.js.map +1 -1
  566. package/esm/utils/helpers/createUUID.js +1 -1
  567. package/esm/utils/helpers/createUUID.js.map +1 -1
  568. package/esm/utils/helpers/objects.js +8 -5
  569. package/esm/utils/helpers/objects.js.map +1 -1
  570. package/esm/utils/helpers/sanitizeHtml.js +9 -7
  571. package/esm/utils/helpers/sanitizeHtml.js.map +1 -1
  572. package/esm/utils/helpers/text.js +3 -2
  573. package/esm/utils/helpers/text.js.map +1 -1
  574. package/esm/utils/index.js +3 -8
  575. package/esm/utils/index.js.map +1 -1
  576. package/esm/utils/number/DecimalFormat.js +124 -43
  577. package/esm/utils/number/DecimalFormat.js.map +1 -1
  578. package/esm/utils/number/formatValue.js +18 -5
  579. package/esm/utils/number/formatValue.js.map +1 -1
  580. package/esm/utils/number/parseNumbers.js +17 -5
  581. package/esm/utils/number/parseNumbers.js.map +1 -1
  582. package/lib/builder/index.js +3 -0
  583. package/lib/builder/index.js.map +1 -1
  584. package/lib/builder/mergeLayoutHintConfigurations.js +13 -1
  585. package/lib/builder/mergeLayoutHintConfigurations.js.map +1 -1
  586. package/lib/constants/Constants.js +32 -25
  587. package/lib/constants/Constants.js.map +1 -1
  588. package/lib/constants/LayoutHintConfig.js.map +1 -1
  589. package/lib/constants/LayoutHints.js +29 -9
  590. package/lib/constants/LayoutHints.js.map +1 -1
  591. package/lib/constants/Settings.js +38 -9
  592. package/lib/constants/Settings.js.map +1 -1
  593. package/lib/constants/index.js +7 -0
  594. package/lib/constants/index.js.map +1 -1
  595. package/lib/exceptions/ConfigurationException.js +2 -0
  596. package/lib/exceptions/ConfigurationException.js.map +1 -1
  597. package/lib/exceptions/FetchException.js +27 -9
  598. package/lib/exceptions/FetchException.js.map +1 -1
  599. package/lib/exceptions/IllegalArgumentException.js +3 -0
  600. package/lib/exceptions/IllegalArgumentException.js.map +1 -1
  601. package/lib/exceptions/IllegalReturnException.js +3 -0
  602. package/lib/exceptions/IllegalReturnException.js.map +1 -1
  603. package/lib/exceptions/IllegalStateException.js +3 -0
  604. package/lib/exceptions/IllegalStateException.js.map +1 -1
  605. package/lib/exceptions/JsonParseException.js +3 -0
  606. package/lib/exceptions/JsonParseException.js.map +1 -1
  607. package/lib/exceptions/MissingPropertyException.js +3 -0
  608. package/lib/exceptions/MissingPropertyException.js.map +1 -1
  609. package/lib/exceptions/NetworkException.js +10 -1
  610. package/lib/exceptions/NetworkException.js.map +1 -1
  611. package/lib/exceptions/NotAllowedUriException.js +3 -0
  612. package/lib/exceptions/NotAllowedUriException.js.map +1 -1
  613. package/lib/exceptions/NotFoundException.js +10 -1
  614. package/lib/exceptions/NotFoundException.js.map +1 -1
  615. package/lib/exceptions/ServerRequestException.js +3 -0
  616. package/lib/exceptions/ServerRequestException.js.map +1 -1
  617. package/lib/exceptions/ThemePropertyException.js +3 -0
  618. package/lib/exceptions/ThemePropertyException.js.map +1 -1
  619. package/lib/exceptions/TimeoutException.js +10 -1
  620. package/lib/exceptions/TimeoutException.js.map +1 -1
  621. package/lib/exceptions/UnauthorizedException.js +9 -1
  622. package/lib/exceptions/UnauthorizedException.js.map +1 -1
  623. package/lib/exceptions/UnsupportedOperationException.js +3 -0
  624. package/lib/exceptions/UnsupportedOperationException.js.map +1 -1
  625. package/lib/exceptions/index.js +16 -0
  626. package/lib/exceptions/index.js.map +1 -1
  627. package/lib/hooks/index.js +33 -0
  628. package/lib/hooks/index.js.map +1 -1
  629. package/lib/hooks/useAllFormsOnModel.js +23 -0
  630. package/lib/hooks/useAllFormsOnModel.js.map +1 -1
  631. package/lib/hooks/useAuthentication.js +35 -8
  632. package/lib/hooks/useAuthentication.js.map +1 -1
  633. package/lib/hooks/useContent.js +16 -3
  634. package/lib/hooks/useContent.js.map +1 -1
  635. package/lib/hooks/useDeepCompareEffect.js +12 -1
  636. package/lib/hooks/useDeepCompareEffect.js.map +1 -1
  637. package/lib/hooks/useForm.js +27 -3
  638. package/lib/hooks/useForm.js.map +1 -1
  639. package/lib/hooks/useI18n.js +15 -3
  640. package/lib/hooks/useI18n.js.map +1 -1
  641. package/lib/hooks/useModal.js +9 -0
  642. package/lib/hooks/useModal.js.map +1 -1
  643. package/lib/hooks/useModelCatalog.js +45 -9
  644. package/lib/hooks/useModelCatalog.js.map +1 -1
  645. package/lib/hooks/useModels.js +3 -0
  646. package/lib/hooks/useModels.js.map +1 -1
  647. package/lib/hooks/useModularUI.js +19 -6
  648. package/lib/hooks/useModularUI.js.map +1 -1
  649. package/lib/hooks/useModularUIBasic.js +17 -2
  650. package/lib/hooks/useModularUIBasic.js.map +1 -1
  651. package/lib/hooks/useModularUIModel.js +39 -9
  652. package/lib/hooks/useModularUIModel.js.map +1 -1
  653. package/lib/hooks/useModularUIRequest.js +7 -1
  654. package/lib/hooks/useModularUIRequest.js.map +1 -1
  655. package/lib/hooks/useNotification.js +7 -1
  656. package/lib/hooks/useNotification.js.map +1 -1
  657. package/lib/hooks/usePreference.js +4 -0
  658. package/lib/hooks/usePreference.js.map +1 -1
  659. package/lib/hooks/useProgressIndicator.js +4 -2
  660. package/lib/hooks/useProgressIndicator.js.map +1 -1
  661. package/lib/hooks/useRouter.js +20 -6
  662. package/lib/hooks/useRouter.js.map +1 -1
  663. package/lib/i18n/Locale.js +44 -15
  664. package/lib/i18n/Locale.js.map +1 -1
  665. package/lib/i18n/Locales.js +44 -13
  666. package/lib/i18n/Locales.js.map +1 -1
  667. package/lib/i18n/Message.js +8 -2
  668. package/lib/i18n/Message.js.map +1 -1
  669. package/lib/i18n/index.js +9 -0
  670. package/lib/i18n/index.js.map +1 -1
  671. package/lib/i18n/languages.js.map +1 -1
  672. package/lib/i18n/translations/beinformed_error_messages_en.nl.js.map +1 -1
  673. package/lib/i18n/translations/beinformed_error_messages_nl.nl.js.map +1 -1
  674. package/lib/i18n/withMessage.js +10 -1
  675. package/lib/i18n/withMessage.js.map +1 -1
  676. package/lib/index.js +13 -0
  677. package/lib/index.js.map +1 -1
  678. package/lib/models/actions/ActionCollection.js +33 -12
  679. package/lib/models/actions/ActionCollection.js.map +1 -1
  680. package/lib/models/actions/ActionModel.js +68 -23
  681. package/lib/models/actions/ActionModel.js.map +1 -1
  682. package/lib/models/application/ApplicationModel.js +41 -14
  683. package/lib/models/application/ApplicationModel.js.map +1 -1
  684. package/lib/models/attributes/AttributeCollection.js +87 -27
  685. package/lib/models/attributes/AttributeCollection.js.map +1 -1
  686. package/lib/models/attributes/AttributeContent.js +65 -23
  687. package/lib/models/attributes/AttributeContent.js.map +1 -1
  688. package/lib/models/attributes/AttributeDataHelper.js +89 -32
  689. package/lib/models/attributes/AttributeDataHelper.js.map +1 -1
  690. package/lib/models/attributes/AttributeModel.js +254 -101
  691. package/lib/models/attributes/AttributeModel.js.map +1 -1
  692. package/lib/models/attributes/AttributeSetModel.js +20 -5
  693. package/lib/models/attributes/AttributeSetModel.js.map +1 -1
  694. package/lib/models/attributes/BooleanAttributeModel.js +83 -29
  695. package/lib/models/attributes/BooleanAttributeModel.js.map +1 -1
  696. package/lib/models/attributes/CaptchaAttributeModel.js +10 -3
  697. package/lib/models/attributes/CaptchaAttributeModel.js.map +1 -1
  698. package/lib/models/attributes/ChoiceAttributeModel.js +115 -38
  699. package/lib/models/attributes/ChoiceAttributeModel.js.map +1 -1
  700. package/lib/models/attributes/ChoiceAttributeOptionCollection.js +84 -26
  701. package/lib/models/attributes/ChoiceAttributeOptionCollection.js.map +1 -1
  702. package/lib/models/attributes/ChoiceAttributeOptionModel.js +108 -34
  703. package/lib/models/attributes/ChoiceAttributeOptionModel.js.map +1 -1
  704. package/lib/models/attributes/CompositeAttributeChildCollection.js +70 -23
  705. package/lib/models/attributes/CompositeAttributeChildCollection.js.map +1 -1
  706. package/lib/models/attributes/CompositeAttributeModel.js +109 -40
  707. package/lib/models/attributes/CompositeAttributeModel.js.map +1 -1
  708. package/lib/models/attributes/DatetimeAttributeModel.js +159 -51
  709. package/lib/models/attributes/DatetimeAttributeModel.js.map +1 -1
  710. package/lib/models/attributes/HelptextAttributeModel.js +20 -5
  711. package/lib/models/attributes/HelptextAttributeModel.js.map +1 -1
  712. package/lib/models/attributes/LabelAttributeModel.js +11 -3
  713. package/lib/models/attributes/LabelAttributeModel.js.map +1 -1
  714. package/lib/models/attributes/MemoAttributeModel.js +13 -4
  715. package/lib/models/attributes/MemoAttributeModel.js.map +1 -1
  716. package/lib/models/attributes/MoneyAttributeModel.js +14 -4
  717. package/lib/models/attributes/MoneyAttributeModel.js.map +1 -1
  718. package/lib/models/attributes/NumberAttributeModel.js +61 -21
  719. package/lib/models/attributes/NumberAttributeModel.js.map +1 -1
  720. package/lib/models/attributes/PasswordAttributeModel.js +75 -23
  721. package/lib/models/attributes/PasswordAttributeModel.js.map +1 -1
  722. package/lib/models/attributes/StringAttributeModel.js +79 -28
  723. package/lib/models/attributes/StringAttributeModel.js.map +1 -1
  724. package/lib/models/attributes/UploadAttributeModel.js +66 -21
  725. package/lib/models/attributes/UploadAttributeModel.js.map +1 -1
  726. package/lib/models/attributes/XMLAttributeModel.js +16 -4
  727. package/lib/models/attributes/XMLAttributeModel.js.map +1 -1
  728. package/lib/models/attributes/_createAttribute.js +41 -7
  729. package/lib/models/attributes/_createAttribute.js.map +1 -1
  730. package/lib/models/attributes/input-constraints/BSNConstraint.js +19 -6
  731. package/lib/models/attributes/input-constraints/BSNConstraint.js.map +1 -1
  732. package/lib/models/attributes/input-constraints/ConstraintCollection.js +15 -3
  733. package/lib/models/attributes/input-constraints/ConstraintCollection.js.map +1 -1
  734. package/lib/models/attributes/input-constraints/ConstraintModel.js +19 -6
  735. package/lib/models/attributes/input-constraints/ConstraintModel.js.map +1 -1
  736. package/lib/models/attributes/input-constraints/DateBoundaryConstraint.js +58 -16
  737. package/lib/models/attributes/input-constraints/DateBoundaryConstraint.js.map +1 -1
  738. package/lib/models/attributes/input-constraints/DateTimeDateFormatConstraint.js +22 -8
  739. package/lib/models/attributes/input-constraints/DateTimeDateFormatConstraint.js.map +1 -1
  740. package/lib/models/attributes/input-constraints/DateTimeTimeFormatConstraint.js +22 -8
  741. package/lib/models/attributes/input-constraints/DateTimeTimeFormatConstraint.js.map +1 -1
  742. package/lib/models/attributes/input-constraints/DatetimeFormatConstraint.js +27 -10
  743. package/lib/models/attributes/input-constraints/DatetimeFormatConstraint.js.map +1 -1
  744. package/lib/models/attributes/input-constraints/FileExtensionConstraint.js +20 -7
  745. package/lib/models/attributes/input-constraints/FileExtensionConstraint.js.map +1 -1
  746. package/lib/models/attributes/input-constraints/FileSizeConstraint.js +26 -10
  747. package/lib/models/attributes/input-constraints/FileSizeConstraint.js.map +1 -1
  748. package/lib/models/attributes/input-constraints/IBANConstraint.js +14 -5
  749. package/lib/models/attributes/input-constraints/IBANConstraint.js.map +1 -1
  750. package/lib/models/attributes/input-constraints/MandatoryConstraint.js +15 -6
  751. package/lib/models/attributes/input-constraints/MandatoryConstraint.js.map +1 -1
  752. package/lib/models/attributes/input-constraints/MandatoryRangeConstraint.js +25 -8
  753. package/lib/models/attributes/input-constraints/MandatoryRangeConstraint.js.map +1 -1
  754. package/lib/models/attributes/input-constraints/NumberBoundaryConstraint.js +51 -17
  755. package/lib/models/attributes/input-constraints/NumberBoundaryConstraint.js.map +1 -1
  756. package/lib/models/attributes/input-constraints/NumberFormatConstraint.js +44 -15
  757. package/lib/models/attributes/input-constraints/NumberFormatConstraint.js.map +1 -1
  758. package/lib/models/attributes/input-constraints/NumberGroupingConstraint.js +40 -15
  759. package/lib/models/attributes/input-constraints/NumberGroupingConstraint.js.map +1 -1
  760. package/lib/models/attributes/input-constraints/PasswordConfirmConstraint.js +20 -8
  761. package/lib/models/attributes/input-constraints/PasswordConfirmConstraint.js.map +1 -1
  762. package/lib/models/attributes/input-constraints/PasswordLowerAndUpperCaseConstraint.js +12 -5
  763. package/lib/models/attributes/input-constraints/PasswordLowerAndUpperCaseConstraint.js.map +1 -1
  764. package/lib/models/attributes/input-constraints/PasswordMinNumericCharactersConstraint.js +18 -7
  765. package/lib/models/attributes/input-constraints/PasswordMinNumericCharactersConstraint.js.map +1 -1
  766. package/lib/models/attributes/input-constraints/PasswordMinSpecialCharactersConstraint.js +18 -7
  767. package/lib/models/attributes/input-constraints/PasswordMinSpecialCharactersConstraint.js.map +1 -1
  768. package/lib/models/attributes/input-constraints/PasswordThreeConsecutiveCharactersNotAllowedConstraint.js +24 -8
  769. package/lib/models/attributes/input-constraints/PasswordThreeConsecutiveCharactersNotAllowedConstraint.js.map +1 -1
  770. package/lib/models/attributes/input-constraints/RangeConstraint.js +57 -22
  771. package/lib/models/attributes/input-constraints/RangeConstraint.js.map +1 -1
  772. package/lib/models/attributes/input-constraints/RegexConstraint.js +19 -7
  773. package/lib/models/attributes/input-constraints/RegexConstraint.js.map +1 -1
  774. package/lib/models/attributes/input-constraints/StringLengthConstraint.js +50 -13
  775. package/lib/models/attributes/input-constraints/StringLengthConstraint.js.map +1 -1
  776. package/lib/models/attributes/input-constraints/XMLConstraint.js +17 -6
  777. package/lib/models/attributes/input-constraints/XMLConstraint.js.map +1 -1
  778. package/lib/models/attributes/layouthint-rules/BaseLayoutHintRule.js +18 -8
  779. package/lib/models/attributes/layouthint-rules/BaseLayoutHintRule.js.map +1 -1
  780. package/lib/models/attributes/layouthint-rules/DependentAttribute.js +88 -30
  781. package/lib/models/attributes/layouthint-rules/DependentAttribute.js.map +1 -1
  782. package/lib/models/attributes/layouthint-rules/LayoutHintRuleCollection.js +19 -4
  783. package/lib/models/attributes/layouthint-rules/LayoutHintRuleCollection.js.map +1 -1
  784. package/lib/models/attributes/layouthint-rules/RemainingTotalUploadSize.js +13 -3
  785. package/lib/models/attributes/layouthint-rules/RemainingTotalUploadSize.js.map +1 -1
  786. package/lib/models/base/BaseCollection.js +73 -26
  787. package/lib/models/base/BaseCollection.js.map +1 -1
  788. package/lib/models/base/BaseModel.js +40 -14
  789. package/lib/models/base/BaseModel.js.map +1 -1
  790. package/lib/models/base/ResourceCollection.js +6 -1
  791. package/lib/models/base/ResourceCollection.js.map +1 -1
  792. package/lib/models/base/ResourceModel.js +53 -21
  793. package/lib/models/base/ResourceModel.js.map +1 -1
  794. package/lib/models/caseview/CaseViewModel.js +54 -16
  795. package/lib/models/caseview/CaseViewModel.js.map +1 -1
  796. package/lib/models/concepts/BusinessScenarioModel.js +44 -10
  797. package/lib/models/concepts/BusinessScenarioModel.js.map +1 -1
  798. package/lib/models/concepts/ConceptDetailModel.js +90 -32
  799. package/lib/models/concepts/ConceptDetailModel.js.map +1 -1
  800. package/lib/models/concepts/ConceptIndexModel.js +42 -12
  801. package/lib/models/concepts/ConceptIndexModel.js.map +1 -1
  802. package/lib/models/concepts/ConceptLinkModel.js +49 -16
  803. package/lib/models/concepts/ConceptLinkModel.js.map +1 -1
  804. package/lib/models/concepts/ConceptRelationCollection.js +25 -6
  805. package/lib/models/concepts/ConceptRelationCollection.js.map +1 -1
  806. package/lib/models/concepts/ConceptRelationModel.js +23 -8
  807. package/lib/models/concepts/ConceptRelationModel.js.map +1 -1
  808. package/lib/models/concepts/ConceptTypeDetailModel.js +26 -11
  809. package/lib/models/concepts/ConceptTypeDetailModel.js.map +1 -1
  810. package/lib/models/concepts/SourceReferenceCollection.js +11 -1
  811. package/lib/models/concepts/SourceReferenceCollection.js.map +1 -1
  812. package/lib/models/concepts/SourceReferenceModel.js +22 -9
  813. package/lib/models/concepts/SourceReferenceModel.js.map +1 -1
  814. package/lib/models/content/ContentIndexModel.js +44 -12
  815. package/lib/models/content/ContentIndexModel.js.map +1 -1
  816. package/lib/models/content/ContentLinkModel.js +61 -19
  817. package/lib/models/content/ContentLinkModel.js.map +1 -1
  818. package/lib/models/content/ContentModel.js +67 -21
  819. package/lib/models/content/ContentModel.js.map +1 -1
  820. package/lib/models/content/ContentTOCModel.js +55 -17
  821. package/lib/models/content/ContentTOCModel.js.map +1 -1
  822. package/lib/models/content/ContentTypeModel.js +18 -7
  823. package/lib/models/content/ContentTypeModel.js.map +1 -1
  824. package/lib/models/content/SectionModel.js +62 -19
  825. package/lib/models/content/SectionModel.js.map +1 -1
  826. package/lib/models/content/SubSectionModel.js +51 -15
  827. package/lib/models/content/SubSectionModel.js.map +1 -1
  828. package/lib/models/contentconfiguration/ContentConfiguration.js +25 -5
  829. package/lib/models/contentconfiguration/ContentConfiguration.js.map +1 -1
  830. package/lib/models/contentconfiguration/ContentConfigurationElements.js +45 -10
  831. package/lib/models/contentconfiguration/ContentConfigurationElements.js.map +1 -1
  832. package/lib/models/contentconfiguration/ContentConfigurationEndResults.js +17 -2
  833. package/lib/models/contentconfiguration/ContentConfigurationEndResults.js.map +1 -1
  834. package/lib/models/contentconfiguration/ContentConfigurationQuestions.js +16 -4
  835. package/lib/models/contentconfiguration/ContentConfigurationQuestions.js.map +1 -1
  836. package/lib/models/contentconfiguration/ContentConfigurationResults.js +37 -12
  837. package/lib/models/contentconfiguration/ContentConfigurationResults.js.map +1 -1
  838. package/lib/models/detail/DetailModel.js +61 -21
  839. package/lib/models/detail/DetailModel.js.map +1 -1
  840. package/lib/models/error/ErrorCollection.js +35 -10
  841. package/lib/models/error/ErrorCollection.js.map +1 -1
  842. package/lib/models/error/ErrorModel.js +17 -6
  843. package/lib/models/error/ErrorModel.js.map +1 -1
  844. package/lib/models/error/ErrorResponse.js +96 -36
  845. package/lib/models/error/ErrorResponse.js.map +1 -1
  846. package/lib/models/filters/AssignmentFilterModel.js +45 -19
  847. package/lib/models/filters/AssignmentFilterModel.js.map +1 -1
  848. package/lib/models/filters/BaseFilterModel.js +60 -24
  849. package/lib/models/filters/BaseFilterModel.js.map +1 -1
  850. package/lib/models/filters/ConceptIndexFilterModel.js +9 -0
  851. package/lib/models/filters/ConceptIndexFilterModel.js.map +1 -1
  852. package/lib/models/filters/FilterCollection.js +55 -11
  853. package/lib/models/filters/FilterCollection.js.map +1 -1
  854. package/lib/models/filters/FilterModel.js +3 -0
  855. package/lib/models/filters/FilterModel.js.map +1 -1
  856. package/lib/models/filters/RangeFilterModel.js +10 -1
  857. package/lib/models/filters/RangeFilterModel.js.map +1 -1
  858. package/lib/models/form/FormModel.js +328 -135
  859. package/lib/models/form/FormModel.js.map +1 -1
  860. package/lib/models/form/FormObjectModel.js +144 -55
  861. package/lib/models/form/FormObjectModel.js.map +1 -1
  862. package/lib/models/grouping/GroupingModel.js +58 -20
  863. package/lib/models/grouping/GroupingModel.js.map +1 -1
  864. package/lib/models/href/Href.js +123 -47
  865. package/lib/models/href/Href.js.map +1 -1
  866. package/lib/models/href/ListHref.js +29 -11
  867. package/lib/models/href/ListHref.js.map +1 -1
  868. package/lib/models/index.js +97 -0
  869. package/lib/models/index.js.map +1 -1
  870. package/lib/models/layouthint/LayoutHintCollection.js +40 -8
  871. package/lib/models/layouthint/LayoutHintCollection.js.map +1 -1
  872. package/lib/models/links/LinkCollection.js +51 -15
  873. package/lib/models/links/LinkCollection.js.map +1 -1
  874. package/lib/models/links/LinkModel.js +62 -20
  875. package/lib/models/links/LinkModel.js.map +1 -1
  876. package/lib/models/links/normalizeLinkJSON.js +21 -5
  877. package/lib/models/links/normalizeLinkJSON.js.map +1 -1
  878. package/lib/models/list/ListDetailModel.js +84 -31
  879. package/lib/models/list/ListDetailModel.js.map +1 -1
  880. package/lib/models/list/ListHeaderModel.js +30 -10
  881. package/lib/models/list/ListHeaderModel.js.map +1 -1
  882. package/lib/models/list/ListItemCollection.js +24 -4
  883. package/lib/models/list/ListItemCollection.js.map +1 -1
  884. package/lib/models/list/ListItemModel.js +29 -7
  885. package/lib/models/list/ListItemModel.js.map +1 -1
  886. package/lib/models/list/ListModel.js +123 -38
  887. package/lib/models/list/ListModel.js.map +1 -1
  888. package/lib/models/lookup/LookupOptionCollection.js +8 -2
  889. package/lib/models/lookup/LookupOptionCollection.js.map +1 -1
  890. package/lib/models/lookup/LookupOptionsModel.js +19 -5
  891. package/lib/models/lookup/LookupOptionsModel.js.map +1 -1
  892. package/lib/models/modelcatalog/ModelCatalogModel.js +17 -4
  893. package/lib/models/modelcatalog/ModelCatalogModel.js.map +1 -1
  894. package/lib/models/paging/PagesizeModel.js +13 -4
  895. package/lib/models/paging/PagesizeModel.js.map +1 -1
  896. package/lib/models/paging/PagingModel.js +26 -10
  897. package/lib/models/paging/PagingModel.js.map +1 -1
  898. package/lib/models/panels/GroupingPanelModel.js +47 -14
  899. package/lib/models/panels/GroupingPanelModel.js.map +1 -1
  900. package/lib/models/parameter/Parameter.js +42 -13
  901. package/lib/models/parameter/Parameter.js.map +1 -1
  902. package/lib/models/process/ProcessStatusSettingsModel.js +29 -9
  903. package/lib/models/process/ProcessStatusSettingsModel.js.map +1 -1
  904. package/lib/models/resolveModel.js +33 -1
  905. package/lib/models/resolveModel.js.map +1 -1
  906. package/lib/models/search/CaseSearchModel.js +12 -3
  907. package/lib/models/search/CaseSearchModel.js.map +1 -1
  908. package/lib/models/sorting/SortOptionModel.js +39 -13
  909. package/lib/models/sorting/SortOptionModel.js.map +1 -1
  910. package/lib/models/sorting/SortingModel.js +35 -8
  911. package/lib/models/sorting/SortingModel.js.map +1 -1
  912. package/lib/models/tab/TabModel.js +48 -14
  913. package/lib/models/tab/TabModel.js.map +1 -1
  914. package/lib/models/taskgroup/TaskGroupCollection.js +4 -0
  915. package/lib/models/taskgroup/TaskGroupCollection.js.map +1 -1
  916. package/lib/models/taskgroup/TaskGroupModel.js +19 -6
  917. package/lib/models/taskgroup/TaskGroupModel.js.map +1 -1
  918. package/lib/models/user/UserModel.js +12 -4
  919. package/lib/models/user/UserModel.js.map +1 -1
  920. package/lib/models/user/UserProfileModel.js +14 -2
  921. package/lib/models/user/UserProfileModel.js.map +1 -1
  922. package/lib/models/user/UserServicesModel.js +30 -11
  923. package/lib/models/user/UserServicesModel.js.map +1 -1
  924. package/lib/modularui/Authenticate.js +66 -20
  925. package/lib/modularui/Authenticate.js.map +1 -1
  926. package/lib/modularui/ModularUIError.js +7 -3
  927. package/lib/modularui/ModularUIError.js.map +1 -1
  928. package/lib/modularui/ModularUIRequest.js +201 -77
  929. package/lib/modularui/ModularUIRequest.js.map +1 -1
  930. package/lib/modularui/ModularUIResponse.js +34 -13
  931. package/lib/modularui/ModularUIResponse.js.map +1 -1
  932. package/lib/modularui/index.js +4 -0
  933. package/lib/modularui/index.js.map +1 -1
  934. package/lib/react/ErrorBoundary.js +14 -2
  935. package/lib/react/ErrorBoundary.js.map +1 -1
  936. package/lib/react/ErrorBoundaryFallback.js +8 -1
  937. package/lib/react/ErrorBoundaryFallback.js.map +1 -1
  938. package/lib/react/index.js +5 -0
  939. package/lib/react/index.js.map +1 -1
  940. package/lib/react/utils.js +13 -2
  941. package/lib/react/utils.js.map +1 -1
  942. package/lib/react-client/Init.js +8 -0
  943. package/lib/react-client/Init.js.map +1 -1
  944. package/lib/react-client/client.js +49 -16
  945. package/lib/react-client/client.js.map +1 -1
  946. package/lib/react-client/contextPath.js +9 -2
  947. package/lib/react-client/contextPath.js.map +1 -1
  948. package/lib/react-client/index.js +4 -0
  949. package/lib/react-client/index.js.map +1 -1
  950. package/lib/react-client/rehydrate.js +23 -3
  951. package/lib/react-client/rehydrate.js.map +1 -1
  952. package/lib/react-server/contextPath.js +2 -1
  953. package/lib/react-server/contextPath.js.map +1 -1
  954. package/lib/react-server/createSSRComplete.js +16 -2
  955. package/lib/react-server/createSSRComplete.js.map +1 -1
  956. package/lib/react-server/htmlpage.js +16 -25
  957. package/lib/react-server/htmlpage.js.map +1 -1
  958. package/lib/react-server/index.js +12 -0
  959. package/lib/react-server/index.js.map +1 -1
  960. package/lib/react-server/renderSSRComplete.js +16 -3
  961. package/lib/react-server/renderSSRComplete.js.map +1 -1
  962. package/lib/react-server/renderSSRMinimal.js +10 -0
  963. package/lib/react-server/renderSSRMinimal.js.map +1 -1
  964. package/lib/react-server/requestInformation.js +48 -8
  965. package/lib/react-server/requestInformation.js.flow +25 -3
  966. package/lib/react-server/requestInformation.js.map +1 -1
  967. package/lib/react-server/serverNoSSR.js +14 -2
  968. package/lib/react-server/serverNoSSR.js.map +1 -1
  969. package/lib/react-server/serverSSR.js +8 -0
  970. package/lib/react-server/serverSSR.js.map +1 -1
  971. package/lib/react-server/serverUtil.js +60 -13
  972. package/lib/react-server/serverUtil.js.map +1 -1
  973. package/lib/react-theme/ThemeProvider.js +6 -0
  974. package/lib/react-theme/ThemeProvider.js.map +1 -1
  975. package/lib/react-theme/createTheme.js +23 -7
  976. package/lib/react-theme/createTheme.js.map +1 -1
  977. package/lib/react-theme/index.js +18 -0
  978. package/lib/react-theme/index.js.map +1 -1
  979. package/lib/react-theme/useTheme.js +3 -0
  980. package/lib/react-theme/useTheme.js.map +1 -1
  981. package/lib/react-theme/utils/background.js +5 -1
  982. package/lib/react-theme/utils/background.js.map +1 -1
  983. package/lib/react-theme/utils/colors.js +12 -2
  984. package/lib/react-theme/utils/colors.js.map +1 -1
  985. package/lib/react-theme/utils/contrast.js +35 -7
  986. package/lib/react-theme/utils/contrast.js.map +1 -1
  987. package/lib/react-theme/utils/corners.js +14 -3
  988. package/lib/react-theme/utils/corners.js.map +1 -1
  989. package/lib/react-theme/utils/spacers.js +30 -6
  990. package/lib/react-theme/utils/spacers.js.map +1 -1
  991. package/lib/react-theme/utils/themeProps.js +35 -7
  992. package/lib/react-theme/utils/themeProps.js.map +1 -1
  993. package/lib/redux/_i18n/actions.js +8 -2
  994. package/lib/redux/_i18n/actions.js.map +1 -1
  995. package/lib/redux/_i18n/index.js +5 -0
  996. package/lib/redux/_i18n/index.js.map +1 -1
  997. package/lib/redux/_i18n/reducer.js +21 -12
  998. package/lib/redux/_i18n/reducer.js.map +1 -1
  999. package/lib/redux/_modularui/actions.js +69 -36
  1000. package/lib/redux/_modularui/actions.js.map +1 -1
  1001. package/lib/redux/_modularui/connector.js +28 -20
  1002. package/lib/redux/_modularui/connector.js.map +1 -1
  1003. package/lib/redux/_modularui/index.js +14 -0
  1004. package/lib/redux/_modularui/index.js.map +1 -1
  1005. package/lib/redux/_modularui/middleware.js +28 -8
  1006. package/lib/redux/_modularui/middleware.js.map +1 -1
  1007. package/lib/redux/_modularui/modularuiUtils.js +36 -10
  1008. package/lib/redux/_modularui/modularuiUtils.js.map +1 -1
  1009. package/lib/redux/_modularui/reducer.js +45 -19
  1010. package/lib/redux/_modularui/reducer.js.map +1 -1
  1011. package/lib/redux/_modularui/selectors.js +97 -20
  1012. package/lib/redux/_modularui/selectors.js.map +1 -1
  1013. package/lib/redux/_modularui/withModularUI.js +11 -2
  1014. package/lib/redux/_modularui/withModularUI.js.map +1 -1
  1015. package/lib/redux/_router/actions.js +16 -5
  1016. package/lib/redux/_router/actions.js.map +1 -1
  1017. package/lib/redux/_router/connectors.js +15 -10
  1018. package/lib/redux/_router/connectors.js.map +1 -1
  1019. package/lib/redux/_router/index.js +9 -0
  1020. package/lib/redux/_router/index.js.map +1 -1
  1021. package/lib/redux/_router/middleware.js +2 -0
  1022. package/lib/redux/_router/middleware.js.map +1 -1
  1023. package/lib/redux/_router/reducer.js +4 -2
  1024. package/lib/redux/_router/reducer.js.map +1 -1
  1025. package/lib/redux/actions/Application.js +8 -1
  1026. package/lib/redux/actions/Application.js.map +1 -1
  1027. package/lib/redux/actions/Authorization.js +25 -6
  1028. package/lib/redux/actions/Authorization.js.map +1 -1
  1029. package/lib/redux/actions/Error.js +24 -4
  1030. package/lib/redux/actions/Error.js.map +1 -1
  1031. package/lib/redux/actions/Form.js +12 -1
  1032. package/lib/redux/actions/Form.js.map +1 -1
  1033. package/lib/redux/actions/FormAttributeSet.js +14 -0
  1034. package/lib/redux/actions/FormAttributeSet.js.map +1 -1
  1035. package/lib/redux/actions/FormAttributeSetRepeatable.js +8 -2
  1036. package/lib/redux/actions/FormAttributeSetRepeatable.js.map +1 -1
  1037. package/lib/redux/actions/FormAutosave.js +12 -3
  1038. package/lib/redux/actions/FormAutosave.js.map +1 -1
  1039. package/lib/redux/actions/FormAutosubmit.js +6 -0
  1040. package/lib/redux/actions/FormAutosubmit.js.map +1 -1
  1041. package/lib/redux/actions/FormValidations.js +13 -2
  1042. package/lib/redux/actions/FormValidations.js.map +1 -1
  1043. package/lib/redux/actions/Modals.js +4 -1
  1044. package/lib/redux/actions/Modals.js.map +1 -1
  1045. package/lib/redux/actions/Notification.js +19 -4
  1046. package/lib/redux/actions/Notification.js.map +1 -1
  1047. package/lib/redux/actions/Preferences.js +44 -13
  1048. package/lib/redux/actions/Preferences.js.map +1 -1
  1049. package/lib/redux/actions/ProgressIndicator.js +11 -3
  1050. package/lib/redux/actions/ProgressIndicator.js.map +1 -1
  1051. package/lib/redux/actions/SignIn.js +28 -5
  1052. package/lib/redux/actions/SignIn.js.map +1 -1
  1053. package/lib/redux/actions/SignOut.js +9 -1
  1054. package/lib/redux/actions/SignOut.js.map +1 -1
  1055. package/lib/redux/actions/index.js +31 -0
  1056. package/lib/redux/actions/index.js.map +1 -1
  1057. package/lib/redux/connectors/Application.js +2 -0
  1058. package/lib/redux/connectors/Application.js.map +1 -1
  1059. package/lib/redux/connectors/Breadcrumb.js +4 -1
  1060. package/lib/redux/connectors/Breadcrumb.js.map +1 -1
  1061. package/lib/redux/connectors/CaseView.js +2 -0
  1062. package/lib/redux/connectors/CaseView.js.map +1 -1
  1063. package/lib/redux/connectors/ConceptDetail.js +7 -1
  1064. package/lib/redux/connectors/ConceptDetail.js.map +1 -1
  1065. package/lib/redux/connectors/ContentBrowser.js +2 -0
  1066. package/lib/redux/connectors/ContentBrowser.js.map +1 -1
  1067. package/lib/redux/connectors/ContentDetail.js +7 -1
  1068. package/lib/redux/connectors/ContentDetail.js.map +1 -1
  1069. package/lib/redux/connectors/ContentDetailSection.js +8 -1
  1070. package/lib/redux/connectors/ContentDetailSection.js.map +1 -1
  1071. package/lib/redux/connectors/Form.js +19 -2
  1072. package/lib/redux/connectors/Form.js.map +1 -1
  1073. package/lib/redux/connectors/FormAttributeSet.js +5 -1
  1074. package/lib/redux/connectors/FormAttributeSet.js.map +1 -1
  1075. package/lib/redux/connectors/ListDetail.js +3 -0
  1076. package/lib/redux/connectors/ListDetail.js.map +1 -1
  1077. package/lib/redux/connectors/Modal.js +7 -1
  1078. package/lib/redux/connectors/Modal.js.map +1 -1
  1079. package/lib/redux/connectors/ModelCatalog.js +2 -0
  1080. package/lib/redux/connectors/ModelCatalog.js.map +1 -1
  1081. package/lib/redux/connectors/Notification.js +4 -1
  1082. package/lib/redux/connectors/Notification.js.map +1 -1
  1083. package/lib/redux/connectors/PanelRenderer.js +7 -0
  1084. package/lib/redux/connectors/PanelRenderer.js.map +1 -1
  1085. package/lib/redux/connectors/Preferences.js +5 -1
  1086. package/lib/redux/connectors/Preferences.js.map +1 -1
  1087. package/lib/redux/connectors/Progress.js +4 -1
  1088. package/lib/redux/connectors/Progress.js.map +1 -1
  1089. package/lib/redux/connectors/ProgressIndicator.js +3 -1
  1090. package/lib/redux/connectors/ProgressIndicator.js.map +1 -1
  1091. package/lib/redux/connectors/QuickSearch.js +7 -1
  1092. package/lib/redux/connectors/QuickSearch.js.map +1 -1
  1093. package/lib/redux/connectors/SignIn.js +8 -2
  1094. package/lib/redux/connectors/SignIn.js.map +1 -1
  1095. package/lib/redux/connectors/SignOut.js +8 -3
  1096. package/lib/redux/connectors/SignOut.js.map +1 -1
  1097. package/lib/redux/connectors/Tab.js +2 -0
  1098. package/lib/redux/connectors/Tab.js.map +1 -1
  1099. package/lib/redux/connectors/index.js +21 -0
  1100. package/lib/redux/connectors/index.js.map +1 -1
  1101. package/lib/redux/index.js +17 -0
  1102. package/lib/redux/index.js.map +1 -1
  1103. package/lib/redux/reducers/AuthReducer.js +14 -12
  1104. package/lib/redux/reducers/AuthReducer.js.map +1 -1
  1105. package/lib/redux/reducers/ErrorReducer.js +4 -2
  1106. package/lib/redux/reducers/ErrorReducer.js.map +1 -1
  1107. package/lib/redux/reducers/ModalsReducer.js +18 -11
  1108. package/lib/redux/reducers/ModalsReducer.js.map +1 -1
  1109. package/lib/redux/reducers/NotificationReducer.js +8 -6
  1110. package/lib/redux/reducers/NotificationReducer.js.map +1 -1
  1111. package/lib/redux/reducers/PreferencesReducer.js +7 -6
  1112. package/lib/redux/reducers/PreferencesReducer.js.map +1 -1
  1113. package/lib/redux/reducers/ProgressIndicatorReducer.js +15 -10
  1114. package/lib/redux/reducers/ProgressIndicatorReducer.js.map +1 -1
  1115. package/lib/redux/reducers/createReducer.js +11 -0
  1116. package/lib/redux/reducers/createReducer.js.map +1 -1
  1117. package/lib/redux/reducers/index.js +10 -0
  1118. package/lib/redux/reducers/index.js.map +1 -1
  1119. package/lib/redux/selectors/i18n.js +7 -3
  1120. package/lib/redux/selectors/i18n.js.map +1 -1
  1121. package/lib/redux/selectors/index.js +3 -0
  1122. package/lib/redux/selectors/index.js.map +1 -1
  1123. package/lib/redux/store/beforeRenderHooks.js +2 -0
  1124. package/lib/redux/store/beforeRenderHooks.js.map +1 -1
  1125. package/lib/redux/store/configureStore.js +13 -2
  1126. package/lib/redux/store/configureStore.js.map +1 -1
  1127. package/lib/utils/browser/Cache.js +49 -16
  1128. package/lib/utils/browser/Cache.js.map +1 -1
  1129. package/lib/utils/browser/Cookies.js +14 -3
  1130. package/lib/utils/browser/Cookies.js.map +1 -1
  1131. package/lib/utils/datetime/DateTimeUtil.js +115 -52
  1132. package/lib/utils/datetime/DateTimeUtil.js.map +1 -1
  1133. package/lib/utils/fetch/serverFetch.js +13 -2
  1134. package/lib/utils/fetch/serverFetch.js.map +1 -1
  1135. package/lib/utils/fetch/universalFetch.js +25 -6
  1136. package/lib/utils/fetch/universalFetch.js.map +1 -1
  1137. package/lib/utils/fetch/xhr.js +111 -42
  1138. package/lib/utils/fetch/xhr.js.map +1 -1
  1139. package/lib/utils/helpers/checkResource.js +11 -5
  1140. package/lib/utils/helpers/checkResource.js.map +1 -1
  1141. package/lib/utils/helpers/createHash.js +6 -1
  1142. package/lib/utils/helpers/createHash.js.map +1 -1
  1143. package/lib/utils/helpers/createUUID.js +2 -0
  1144. package/lib/utils/helpers/createUUID.js.map +1 -1
  1145. package/lib/utils/helpers/objects.js +15 -3
  1146. package/lib/utils/helpers/objects.js.map +1 -1
  1147. package/lib/utils/helpers/sanitizeHtml.js +13 -6
  1148. package/lib/utils/helpers/sanitizeHtml.js.map +1 -1
  1149. package/lib/utils/helpers/text.js +4 -0
  1150. package/lib/utils/helpers/text.js.map +1 -1
  1151. package/lib/utils/index.js +25 -0
  1152. package/lib/utils/index.js.map +1 -1
  1153. package/lib/utils/number/DecimalFormat.js +121 -43
  1154. package/lib/utils/number/DecimalFormat.js.map +1 -1
  1155. package/lib/utils/number/formatValue.js +22 -3
  1156. package/lib/utils/number/formatValue.js.map +1 -1
  1157. package/lib/utils/number/parseNumbers.js +19 -3
  1158. package/lib/utils/number/parseNumbers.js.map +1 -1
  1159. package/package.json +29 -29
  1160. package/src/react-server/requestInformation.js +25 -3
@@ -5,107 +5,127 @@ import ResourceModel from "../base/ResourceModel";
5
5
  import LinkModel from "../links/LinkModel";
6
6
  import UserServicesModel from "../user/UserServicesModel";
7
7
  import { NotAllowedUriException } from "../../exceptions";
8
+
8
9
  /**
9
10
  * The Application model
10
11
  */
11
12
  export default class ApplicationModel extends ResourceModel {
12
13
  constructor() {
13
14
  super(...arguments);
15
+
14
16
  _defineProperty(this, "_userServices", void 0);
15
17
  }
18
+
16
19
  /**
17
20
  * Retrieve type of model
18
21
  */
19
22
  get type() {
20
23
  return "Application";
21
24
  }
22
-
23
25
  /**
24
26
  */
27
+
28
+
25
29
  static isApplicableModel(data) {
26
30
  return data.contributions.resourcetype && data.contributions.resourcetype === "Application";
27
31
  }
28
-
29
32
  /**
30
33
  */
34
+
35
+
31
36
  getInitialChildModelLinks() {
32
37
  const userService = this.links.getLinkByKey("UserServices");
38
+
33
39
  if (userService && userService.href.path === "/login") {
34
40
  throw new NotAllowedUriException("The user service (Login panel) should not have the uri '/login', use a different URI because this uri matches the login service.");
35
41
  }
42
+
36
43
  return userService ? [userService] : [];
37
44
  }
38
-
39
45
  /**
40
46
  */
47
+
48
+
41
49
  setChildModels(models) {
42
50
  const userServiceModel = _findInstanceProperty(models).call(models, model => model.type === "UserServices");
51
+
43
52
  if (userServiceModel) {
44
53
  this.userServices = userServiceModel;
45
54
  }
46
55
  }
47
-
48
56
  /**
49
57
  * Getting the label of the application
50
58
  */
59
+
60
+
51
61
  get label() {
52
62
  return this.getContribution("label", "");
53
63
  }
54
-
55
64
  /**
56
65
  * Getting the authentication types of the application
57
66
  */
67
+
68
+
58
69
  get authenticationTypes() {
59
- const authenticationTypes = this.getContribution("security", []);
70
+ const authenticationTypes = this.getContribution("security", []); //put primary first
60
71
 
61
- //put primary first
62
72
  return authenticationTypes === null || authenticationTypes === void 0 ? void 0 : _sortInstanceProperty(authenticationTypes).call(authenticationTypes, (a, b) => a.isPrimary === b.isPrimary ? 0 : a.isPrimary ? -1 : 1);
63
73
  }
64
74
  /**
65
75
  * Getting the tab links
66
76
  */
77
+
78
+
67
79
  get tabs() {
68
80
  return this.links.getLinksByGroup("tab");
69
81
  }
70
-
71
82
  /**
72
83
  * Get modelcatalog link
73
84
  */
85
+
86
+
74
87
  get modelcatalog() {
75
88
  return LinkModel.create("modelcatalog", "/modelcatalog", "Model catalog");
76
89
  }
77
-
78
90
  /**
79
91
  * Set the userservices for this application
80
92
  */
93
+
94
+
81
95
  set userServices(model) {
82
96
  this._userServices = model instanceof UserServicesModel ? model : null;
83
97
  }
84
-
85
98
  /**
86
99
  * returns the userservices configured for this application
87
100
  */
101
+
102
+
88
103
  get userServices() {
89
104
  return this._userServices ? this._userServices : null;
90
105
  }
91
-
92
106
  /**
93
107
  * Indicates if the user is logged in
94
108
  */
109
+
110
+
95
111
  get isLoggedIn() {
96
- var _this$userServices;
97
- return ((_this$userServices = this.userServices) === null || _this$userServices === void 0 ? void 0 : _this$userServices.isLoggedIn) ?? false;
98
- }
112
+ var _this$userServices$is, _this$userServices;
99
113
 
114
+ return (_this$userServices$is = (_this$userServices = this.userServices) === null || _this$userServices === void 0 ? void 0 : _this$userServices.isLoggedIn) !== null && _this$userServices$is !== void 0 ? _this$userServices$is : false;
115
+ }
100
116
  /**
101
117
  * Retrieve link to the user information,
102
118
  * only available when the user services are available
103
119
  */
120
+
121
+
104
122
  get userHref() {
105
123
  if (this.userServices != null && this.userServices.userLink != null) {
106
124
  return this.userServices.userLink.href;
107
125
  }
126
+
108
127
  return null;
109
128
  }
129
+
110
130
  }
111
131
  //# sourceMappingURL=ApplicationModel.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ApplicationModel.js","names":["ResourceModel","LinkModel","UserServicesModel","NotAllowedUriException","ApplicationModel","type","isApplicableModel","data","contributions","resourcetype","getInitialChildModelLinks","userService","links","getLinkByKey","href","path","setChildModels","models","userServiceModel","model","userServices","label","getContribution","authenticationTypes","a","b","isPrimary","tabs","getLinksByGroup","modelcatalog","create","_userServices","isLoggedIn","userHref","userLink"],"sources":["../../../src/models/application/ApplicationModel.js"],"sourcesContent":["// @flow\nimport ResourceModel from \"../base/ResourceModel\";\nimport LinkModel from \"../links/LinkModel\";\nimport UserServicesModel from \"../user/UserServicesModel\";\n\nimport { NotAllowedUriException } from \"../../exceptions\";\n\nimport type { ModularUIModel, AuthenticationType } from \"../types\";\nimport type { ModularUIResponse } from \"../../modularui\";\nimport type LinkCollection from \"../links/LinkCollection\";\nimport type Href from \"../href/Href\";\n\n/**\n * The Application model\n */\nexport default class ApplicationModel extends ResourceModel {\n _userServices: ?UserServicesModel;\n\n /**\n * Retrieve type of model\n */\n get type(): string {\n return \"Application\";\n }\n\n /**\n */\n static isApplicableModel(data: ModularUIResponse): boolean {\n return (\n data.contributions.resourcetype &&\n data.contributions.resourcetype === \"Application\"\n );\n }\n\n /**\n */\n getInitialChildModelLinks(): Array<LinkModel> {\n const userService = this.links.getLinkByKey(\"UserServices\");\n if (userService && userService.href.path === \"/login\") {\n throw new NotAllowedUriException(\n \"The user service (Login panel) should not have the uri '/login', use a different URI because this uri matches the login service.\"\n );\n }\n\n return userService ? [userService] : [];\n }\n\n /**\n */\n setChildModels(models: Array<ModularUIModel>) {\n const userServiceModel = models.find(\n (model) => model.type === \"UserServices\"\n );\n\n if (userServiceModel) {\n this.userServices = userServiceModel;\n }\n }\n\n /**\n * Getting the label of the application\n */\n get label(): string {\n return this.getContribution(\"label\", \"\");\n }\n\n /**\n * Getting the authentication types of the application\n */\n get authenticationTypes(): Array<AuthenticationType> {\n const authenticationTypes = this.getContribution(\"security\", []);\n\n //put primary first\n return authenticationTypes?.sort(\n (a: AuthenticationType, b: AuthenticationType) =>\n a.isPrimary === b.isPrimary ? 0 : a.isPrimary ? -1 : 1\n );\n }\n /**\n * Getting the tab links\n */\n get tabs(): LinkCollection {\n return this.links.getLinksByGroup(\"tab\");\n }\n\n /**\n * Get modelcatalog link\n */\n get modelcatalog(): LinkModel {\n return LinkModel.create(\"modelcatalog\", \"/modelcatalog\", \"Model catalog\");\n }\n\n /**\n * Set the userservices for this application\n */\n set userServices(model: ?ModularUIModel) {\n this._userServices = model instanceof UserServicesModel ? model : null;\n }\n\n /**\n * returns the userservices configured for this application\n */\n get userServices(): ?UserServicesModel {\n return this._userServices ? this._userServices : null;\n }\n\n /**\n * Indicates if the user is logged in\n */\n get isLoggedIn(): boolean {\n return this.userServices?.isLoggedIn ?? false;\n }\n\n /**\n * Retrieve link to the user information,\n * only available when the user services are available\n */\n get userHref(): Href | null {\n if (this.userServices != null && this.userServices.userLink != null) {\n return this.userServices.userLink.href;\n }\n\n return null;\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"ApplicationModel.js","names":["ResourceModel","LinkModel","UserServicesModel","NotAllowedUriException","ApplicationModel","type","isApplicableModel","data","contributions","resourcetype","getInitialChildModelLinks","userService","links","getLinkByKey","href","path","setChildModels","models","userServiceModel","model","userServices","label","getContribution","authenticationTypes","a","b","isPrimary","tabs","getLinksByGroup","modelcatalog","create","_userServices","isLoggedIn","userHref","userLink"],"sources":["../../../src/models/application/ApplicationModel.js"],"sourcesContent":["// @flow\nimport ResourceModel from \"../base/ResourceModel\";\nimport LinkModel from \"../links/LinkModel\";\nimport UserServicesModel from \"../user/UserServicesModel\";\n\nimport { NotAllowedUriException } from \"../../exceptions\";\n\nimport type { ModularUIModel, AuthenticationType } from \"../types\";\nimport type { ModularUIResponse } from \"../../modularui\";\nimport type LinkCollection from \"../links/LinkCollection\";\nimport type Href from \"../href/Href\";\n\n/**\n * The Application model\n */\nexport default class ApplicationModel extends ResourceModel {\n _userServices: ?UserServicesModel;\n\n /**\n * Retrieve type of model\n */\n get type(): string {\n return \"Application\";\n }\n\n /**\n */\n static isApplicableModel(data: ModularUIResponse): boolean {\n return (\n data.contributions.resourcetype &&\n data.contributions.resourcetype === \"Application\"\n );\n }\n\n /**\n */\n getInitialChildModelLinks(): Array<LinkModel> {\n const userService = this.links.getLinkByKey(\"UserServices\");\n if (userService && userService.href.path === \"/login\") {\n throw new NotAllowedUriException(\n \"The user service (Login panel) should not have the uri '/login', use a different URI because this uri matches the login service.\"\n );\n }\n\n return userService ? [userService] : [];\n }\n\n /**\n */\n setChildModels(models: Array<ModularUIModel>) {\n const userServiceModel = models.find(\n (model) => model.type === \"UserServices\"\n );\n\n if (userServiceModel) {\n this.userServices = userServiceModel;\n }\n }\n\n /**\n * Getting the label of the application\n */\n get label(): string {\n return this.getContribution(\"label\", \"\");\n }\n\n /**\n * Getting the authentication types of the application\n */\n get authenticationTypes(): Array<AuthenticationType> {\n const authenticationTypes = this.getContribution(\"security\", []);\n\n //put primary first\n return authenticationTypes?.sort(\n (a: AuthenticationType, b: AuthenticationType) =>\n a.isPrimary === b.isPrimary ? 0 : a.isPrimary ? -1 : 1\n );\n }\n /**\n * Getting the tab links\n */\n get tabs(): LinkCollection {\n return this.links.getLinksByGroup(\"tab\");\n }\n\n /**\n * Get modelcatalog link\n */\n get modelcatalog(): LinkModel {\n return LinkModel.create(\"modelcatalog\", \"/modelcatalog\", \"Model catalog\");\n }\n\n /**\n * Set the userservices for this application\n */\n set userServices(model: ?ModularUIModel) {\n this._userServices = model instanceof UserServicesModel ? model : null;\n }\n\n /**\n * returns the userservices configured for this application\n */\n get userServices(): ?UserServicesModel {\n return this._userServices ? this._userServices : null;\n }\n\n /**\n * Indicates if the user is logged in\n */\n get isLoggedIn(): boolean {\n return this.userServices?.isLoggedIn ?? false;\n }\n\n /**\n * Retrieve link to the user information,\n * only available when the user services are available\n */\n get userHref(): Href | null {\n if (this.userServices != null && this.userServices.userLink != null) {\n return this.userServices.userLink.href;\n }\n\n return null;\n }\n}\n"],"mappings":"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"}
@@ -10,6 +10,7 @@ import ChoiceAttributeModel from "./ChoiceAttributeModel";
10
10
  import CompositeAttributeModel from "./CompositeAttributeModel";
11
11
  import ContentConfiguration from "../contentconfiguration/ContentConfiguration";
12
12
  import { ConfigurationException } from "../../exceptions";
13
+
13
14
  /**
14
15
  * Collection of attributes
15
16
  */
@@ -19,149 +20,179 @@ class AttributeCollection extends ResourceCollection {
19
20
  let contributions = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
20
21
  let isReadonly = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
21
22
  super();
23
+
22
24
  if (contributions) {
23
25
  contributions.forEach(contribution => {
24
26
  const [key] = _Object$keys(contribution);
27
+
25
28
  const attribute = createAttribute(key, data, contribution[key]);
29
+
26
30
  if (attribute !== null) {
27
31
  // when readonly is not explicitly set in the contributions, follow argument
28
32
  if (isReadonly && !has(contribution[key], "readonly")) {
29
33
  attribute.readonly = true;
30
34
  }
35
+
31
36
  this.collection.push(attribute);
32
37
  }
33
38
  });
34
39
  this.processLayoutHintRules();
35
40
  }
36
41
  }
37
-
38
42
  /**
39
43
  * Retrieve all attributes in this collection<br>
40
44
  * This getter processes layout hints, this is different from the standard {@link BaseCollection#all} property
41
45
  * @returns {Array<AttributeType>}
42
46
  */
47
+
48
+
43
49
  get attributes() {
44
50
  this.processLayoutHintRules();
45
51
  return this.all;
46
52
  }
47
-
48
53
  /**
49
54
  * Replace attributes with a new array of attributes
50
55
  */
56
+
57
+
51
58
  set attributes(attributes) {
52
59
  this.collection = attributes;
53
60
  }
54
-
55
61
  /**
56
62
  */
63
+
64
+
57
65
  processLayoutHintRules() {
58
66
  this.all.forEach(attribute => {
59
67
  attribute.processLayoutHintRules(this);
60
68
  });
61
69
  }
62
-
63
70
  /**
64
71
  * Retrieve only visible attributes from the collection
65
72
  */
73
+
74
+
66
75
  get visible() {
67
76
  // Let flow know that this is a AttributeCollection
68
77
  if (this instanceof AttributeCollection) {
69
78
  var _context;
79
+
70
80
  return _filterInstanceProperty(_context = this.attributes).call(_context, attribute => !attribute.isHidden);
71
81
  }
82
+
72
83
  return [];
73
84
  }
74
-
75
85
  /**
76
86
  */
87
+
88
+
77
89
  get questions() {
78
90
  var _context2;
91
+
79
92
  return _filterInstanceProperty(_context2 = this.visible).call(_context2, attribute => !attribute.isResult);
80
93
  }
81
-
82
94
  /**
83
95
  */
96
+
97
+
84
98
  get results() {
85
99
  var _context3;
100
+
86
101
  return _filterInstanceProperty(_context3 = this.visible).call(_context3, attribute => attribute.isResult);
87
102
  }
88
-
89
103
  /**
90
104
  */
105
+
106
+
91
107
  getAttributeByAttribute(attribute) {
92
108
  var _context4;
109
+
93
110
  return _findInstanceProperty(_context4 = this).call(_context4, attr => {
94
111
  if (attr.equals(attribute)) {
95
112
  return true;
96
113
  } else if (attribute instanceof CompositeAttributeModel) {
97
114
  return attribute.getChildByAttribute(attribute);
98
115
  }
116
+
99
117
  return false;
100
118
  });
101
119
  }
102
-
103
120
  /**
104
121
  * Get a single attribute by it's key
105
122
  */
123
+
124
+
106
125
  getAttributeByKey(key) {
107
126
  var _context5;
127
+
108
128
  return _findInstanceProperty(_context5 = this).call(_context5, attribute => {
109
129
  if (attribute.key === key) {
110
130
  return true;
111
131
  } else if (attribute instanceof CompositeAttributeModel) {
112
132
  return attribute.getChildByKey(key);
113
133
  }
134
+
114
135
  return false;
115
136
  });
116
137
  }
117
-
118
138
  /**
119
139
  * Indicates if attribute with key exists in collection
120
140
  */
141
+
142
+
121
143
  hasAttributeByKey(key) {
122
144
  return this.getAttributeByKey(key) !== null;
123
145
  }
124
-
125
146
  /**
126
147
  * Getting the first attribute having the supplied layout hint
127
148
  */
149
+
150
+
128
151
  getAttributeByLayoutHint() {
129
152
  var _context6;
153
+
130
154
  for (var _len = arguments.length, hints = new Array(_len), _key = 0; _key < _len; _key++) {
131
155
  hints[_key] = arguments[_key];
132
156
  }
157
+
133
158
  return _findInstanceProperty(_context6 = this).call(_context6, attribute => attribute.layouthint.has(...hints)) || null;
134
159
  }
135
-
136
160
  /**
137
161
  * Getting a choice attribute by layouthint, returns null when not found or not a choice attribute
138
162
  */
163
+
164
+
139
165
  getChoiceAttributeByLayoutHint(layoutHint) {
140
166
  const attribute = this.getAttributeByLayoutHint(layoutHint);
141
167
  return attribute instanceof ChoiceAttributeModel ? attribute : null;
142
168
  }
143
-
144
169
  /**
145
170
  * Getting all attributes having the supplied layout hint
146
171
  */
172
+
173
+
147
174
  getAttributesByLayoutHint() {
148
175
  var _context7;
176
+
149
177
  for (var _len2 = arguments.length, hints = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
150
178
  hints[_key2] = arguments[_key2];
151
179
  }
180
+
152
181
  return _filterInstanceProperty(_context7 = this).call(_context7, attribute => attribute.layouthint.has(...hints));
153
182
  }
154
-
155
183
  /**
156
184
  * Replace an attribute instance in the collection with a new attribute instance
157
185
  */
186
+
187
+
158
188
  replace(oldAttribute, newAttribute) {
159
189
  this.replaceByKey(oldAttribute.key, newAttribute);
160
190
  }
161
-
162
191
  /**
163
192
  * Replace an attribute by the key of the attribute
164
193
  */
194
+
195
+
165
196
  replaceByKey(key, newAttribute) {
166
197
  this.forEach((attribute, index) => {
167
198
  if (attribute.key === key) {
@@ -169,11 +200,12 @@ class AttributeCollection extends ResourceCollection {
169
200
  }
170
201
  });
171
202
  }
172
-
173
203
  /**
174
204
  * Set reference date by replacing an old attribute with a new attribute with a reference Date
175
205
  * Date is a string in ISO format yyyy-MM-dd
176
206
  */
207
+
208
+
177
209
  setReferenceDate(date) {
178
210
  this.forEach(attribute => {
179
211
  const newAttribute = attribute.clone();
@@ -181,58 +213,73 @@ class AttributeCollection extends ResourceCollection {
181
213
  this.replace(attribute, newAttribute);
182
214
  });
183
215
  }
184
-
185
216
  /**
186
217
  */
218
+
219
+
187
220
  hasServerErrors() {
188
221
  return this.collection.some(attribute => attribute.hasServerErrors());
189
222
  }
190
-
191
223
  /**
192
224
  */
225
+
226
+
193
227
  addServerError(error) {
194
228
  var _error$anchor;
229
+
195
230
  const elementid = error === null || error === void 0 ? void 0 : (_error$anchor = error.anchor) === null || _error$anchor === void 0 ? void 0 : _error$anchor.elementid;
231
+
196
232
  if (elementid) {
197
233
  const attribute = this.getAttributeByKey(elementid);
234
+
198
235
  if (attribute) {
199
236
  attribute.addServerError(error);
200
237
  } else {
201
- throw new ConfigurationException(`Could not add error to missing attribute with id ${elementid}`);
238
+ throw new ConfigurationException("Could not add error to missing attribute with id ".concat(elementid));
202
239
  }
203
240
  }
204
241
  }
205
-
206
242
  /**
207
243
  */
244
+
245
+
208
246
  hasErrors() {
209
247
  return this.visible.some(attribute => attribute.hasErrors());
210
248
  }
211
-
212
249
  /**
213
250
  */
251
+
252
+
214
253
  updateValidations(errors) {
215
254
  var _context8;
255
+
216
256
  _filterInstanceProperty(_context8 = this.all).call(_context8, attribute => attribute.hasDynamicValidationData).forEach(attribute => {
217
257
  const attributeErrors = _filterInstanceProperty(errors).call(errors, error => {
218
258
  var _error$anchor2;
259
+
219
260
  return ((_error$anchor2 = error.anchor) === null || _error$anchor2 === void 0 ? void 0 : _error$anchor2.elementid) === attribute.key;
220
261
  });
262
+
221
263
  attribute.updateValidations(attributeErrors);
264
+
222
265
  if (attribute instanceof CompositeAttributeModel) {
223
266
  const compositeChildErrors = _filterInstanceProperty(errors).call(errors, error => {
224
267
  var _error$anchor3;
268
+
225
269
  const elementId = (_error$anchor3 = error.anchor) === null || _error$anchor3 === void 0 ? void 0 : _error$anchor3.elementid;
226
- return elementId && _startsWithInstanceProperty(elementId).call(elementId, `${attribute.key}.`);
270
+ return elementId && _startsWithInstanceProperty(elementId).call(elementId, "".concat(attribute.key, "."));
227
271
  });
228
- attribute.children.updateValidations(`${attribute.key}.`, compositeChildErrors);
272
+
273
+ attribute.children.updateValidations("".concat(attribute.key, "."), compositeChildErrors);
229
274
  }
230
275
  });
276
+
231
277
  return this;
232
278
  }
233
-
234
279
  /**
235
280
  */
281
+
282
+
236
283
  indicateContentConfiguration(contentConfiguration) {
237
284
  if (contentConfiguration) {
238
285
  this.all.forEach(attribute => {
@@ -240,38 +287,45 @@ class AttributeCollection extends ResourceCollection {
240
287
  });
241
288
  }
242
289
  }
243
-
244
290
  /**
245
291
  * Generate formdata object for current collection based on formdata of attributes
246
292
  * Skip attributes that are readonly, the confirmation password or null
247
293
  */
294
+
295
+
248
296
  get formdata() {
249
297
  return this.getFormData(false);
250
298
  }
251
-
252
299
  /**
253
300
  */
301
+
302
+
254
303
  getFormData() {
255
304
  var _context9, _context10;
305
+
256
306
  let validationData = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
307
+
257
308
  const attributesFormData = _mapInstanceProperty(_context9 = _filterInstanceProperty(_context10 = this.attributes).call(_context10, attribute => attribute.formdata !== null && !attribute.readonly && (!validationData || attribute.hasDynamicValidationData))).call(_context9, attribute => {
258
309
  // make attribute empty when it is not (or no longer) visible
259
310
  if (attribute.isVisible) {
260
311
  return attribute.formdata;
261
312
  }
313
+
262
314
  return attribute.getEmptyFormData();
263
315
  });
316
+
264
317
  let data = {};
265
318
  attributesFormData.forEach(attributeFormData => {
266
319
  // $FlowIgnore[cannot-spread-indexer]
267
320
  // $FlowIgnore[exponential-spread]
268
- data = {
269
- ...data,
321
+ data = { ...data,
270
322
  ...attributeFormData
271
323
  };
272
324
  });
273
325
  return data;
274
326
  }
327
+
275
328
  }
329
+
276
330
  export default AttributeCollection;
277
331
  //# sourceMappingURL=AttributeCollection.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AttributeCollection.js","names":["has","ResourceCollection","createAttribute","ChoiceAttributeModel","CompositeAttributeModel","ContentConfiguration","ConfigurationException","AttributeCollection","constructor","data","contributions","isReadonly","forEach","contribution","key","attribute","readonly","collection","push","processLayoutHintRules","attributes","all","visible","isHidden","questions","isResult","results","getAttributeByAttribute","attr","equals","getChildByAttribute","getAttributeByKey","getChildByKey","hasAttributeByKey","getAttributeByLayoutHint","hints","layouthint","getChoiceAttributeByLayoutHint","layoutHint","getAttributesByLayoutHint","replace","oldAttribute","newAttribute","replaceByKey","index","setReferenceDate","date","clone","referenceDate","hasServerErrors","some","addServerError","error","elementid","anchor","hasErrors","updateValidations","errors","hasDynamicValidationData","attributeErrors","compositeChildErrors","elementId","children","indicateContentConfiguration","contentConfiguration","formdata","getFormData","validationData","attributesFormData","isVisible","getEmptyFormData","attributeFormData"],"sources":["../../../src/models/attributes/AttributeCollection.js"],"sourcesContent":["// @flow\nimport { has } from \"../../utils/helpers/objects\";\n\nimport ResourceCollection from \"../base/ResourceCollection\";\n\nimport createAttribute from \"./_createAttribute\";\nimport ChoiceAttributeModel from \"./ChoiceAttributeModel\";\nimport CompositeAttributeModel from \"./CompositeAttributeModel\";\n\nimport ContentConfiguration from \"../contentconfiguration/ContentConfiguration\";\n\nimport { ConfigurationException } from \"../../exceptions\";\n\nimport type { AttributeType, FormErrorAnchor } from \"../types\";\n\n/**\n * Collection of attributes\n */\nclass AttributeCollection extends ResourceCollection<AttributeType> {\n constructor(\n data: Object | Array<Object> = {},\n contributions: Array<Object> = [],\n isReadonly: boolean = false\n ) {\n super();\n\n if (contributions) {\n contributions.forEach((contribution) => {\n const [key] = Object.keys(contribution);\n\n const attribute = createAttribute(key, data, contribution[key]);\n\n if (attribute !== null) {\n // when readonly is not explicitly set in the contributions, follow argument\n if (isReadonly && !has(contribution[key], \"readonly\")) {\n attribute.readonly = true;\n }\n\n this.collection.push(attribute);\n }\n });\n\n this.processLayoutHintRules();\n }\n }\n\n /**\n * Retrieve all attributes in this collection<br>\n * This getter processes layout hints, this is different from the standard {@link BaseCollection#all} property\n * @returns {Array<AttributeType>}\n */\n get attributes(): Array<AttributeType> {\n this.processLayoutHintRules();\n return this.all;\n }\n\n /**\n * Replace attributes with a new array of attributes\n */\n set attributes(attributes: Array<AttributeType>) {\n this.collection = attributes;\n }\n\n /**\n */\n processLayoutHintRules() {\n this.all.forEach((attribute) => {\n attribute.processLayoutHintRules(this);\n });\n }\n\n /**\n * Retrieve only visible attributes from the collection\n */\n get visible(): Array<AttributeType> {\n // Let flow know that this is a AttributeCollection\n if (this instanceof AttributeCollection) {\n return this.attributes.filter((attribute) => !attribute.isHidden);\n }\n\n return [];\n }\n\n /**\n */\n get questions(): Array<AttributeType> {\n return this.visible.filter((attribute) => !attribute.isResult);\n }\n\n /**\n */\n get results(): Array<AttributeType> {\n return this.visible.filter((attribute) => attribute.isResult);\n }\n\n /**\n */\n getAttributeByAttribute(attribute: AttributeType): AttributeType | null {\n return this.find((attr) => {\n if (attr.equals(attribute)) {\n return true;\n } else if (attribute instanceof CompositeAttributeModel) {\n return attribute.getChildByAttribute(attribute);\n }\n\n return false;\n });\n }\n\n /**\n * Get a single attribute by it's key\n */\n getAttributeByKey(key: string): AttributeType | null {\n return this.find((attribute) => {\n if (attribute.key === key) {\n return true;\n } else if (attribute instanceof CompositeAttributeModel) {\n return attribute.getChildByKey(key);\n }\n\n return false;\n });\n }\n\n /**\n * Indicates if attribute with key exists in collection\n */\n hasAttributeByKey(key: string): boolean {\n return this.getAttributeByKey(key) !== null;\n }\n\n /**\n * Getting the first attribute having the supplied layout hint\n */\n getAttributeByLayoutHint(...hints: Array<string>): AttributeType | null {\n return this.find((attribute) => attribute.layouthint.has(...hints)) || null;\n }\n\n /**\n * Getting a choice attribute by layouthint, returns null when not found or not a choice attribute\n */\n getChoiceAttributeByLayoutHint(\n layoutHint: string\n ): ChoiceAttributeModel | null {\n const attribute = this.getAttributeByLayoutHint(layoutHint);\n\n return attribute instanceof ChoiceAttributeModel ? attribute : null;\n }\n\n /**\n * Getting all attributes having the supplied layout hint\n */\n getAttributesByLayoutHint(...hints: Array<string>): Array<AttributeType> {\n return this.filter((attribute) => attribute.layouthint.has(...hints));\n }\n\n /**\n * Replace an attribute instance in the collection with a new attribute instance\n */\n replace(oldAttribute: AttributeType, newAttribute: AttributeType) {\n this.replaceByKey(oldAttribute.key, newAttribute);\n }\n\n /**\n * Replace an attribute by the key of the attribute\n */\n replaceByKey(key: string, newAttribute: AttributeType) {\n this.forEach((attribute, index) => {\n if (attribute.key === key) {\n this.collection[index] = newAttribute;\n }\n });\n }\n\n /**\n * Set reference date by replacing an old attribute with a new attribute with a reference Date\n * Date is a string in ISO format yyyy-MM-dd\n */\n setReferenceDate(date: string) {\n this.forEach((attribute) => {\n const newAttribute = attribute.clone();\n\n newAttribute.referenceDate = date;\n\n this.replace(attribute, newAttribute);\n });\n }\n\n /**\n */\n hasServerErrors(): boolean {\n return this.collection.some((attribute) => attribute.hasServerErrors());\n }\n\n /**\n */\n addServerError(error: FormErrorAnchor) {\n const elementid = error?.anchor?.elementid;\n\n if (elementid) {\n const attribute = this.getAttributeByKey(elementid);\n if (attribute) {\n attribute.addServerError(error);\n } else {\n throw new ConfigurationException(\n `Could not add error to missing attribute with id ${elementid}`\n );\n }\n }\n }\n\n /**\n */\n hasErrors(): boolean {\n return this.visible.some((attribute) => attribute.hasErrors());\n }\n\n /**\n */\n updateValidations(errors: Array<Object>): AttributeCollection {\n this.all\n .filter((attribute) => attribute.hasDynamicValidationData)\n .forEach((attribute) => {\n const attributeErrors = errors.filter(\n (error) => error.anchor?.elementid === attribute.key\n );\n attribute.updateValidations(attributeErrors);\n\n if (attribute instanceof CompositeAttributeModel) {\n const compositeChildErrors = errors.filter((error) => {\n const elementId = error.anchor?.elementid;\n return elementId && elementId.startsWith(`${attribute.key}.`);\n });\n\n attribute.children.updateValidations(\n `${attribute.key}.`,\n compositeChildErrors\n );\n }\n });\n\n return this;\n }\n\n /**\n */\n indicateContentConfiguration(contentConfiguration: ContentConfiguration) {\n if (contentConfiguration) {\n this.all.forEach((attribute) => {\n attribute.indicateContentConfiguration(contentConfiguration);\n });\n }\n }\n\n /**\n * Generate formdata object for current collection based on formdata of attributes\n * Skip attributes that are readonly, the confirmation password or null\n */\n get formdata(): { [string]: any } | null {\n return this.getFormData(false);\n }\n\n /**\n */\n getFormData(validationData: boolean = false): { [string]: any } | null {\n const attributesFormData = this.attributes\n .filter(\n (attribute) =>\n attribute.formdata !== null &&\n !attribute.readonly &&\n (!validationData || attribute.hasDynamicValidationData)\n )\n .map((attribute) => {\n // make attribute empty when it is not (or no longer) visible\n if (attribute.isVisible) {\n return attribute.formdata;\n }\n\n return attribute.getEmptyFormData();\n });\n\n let data = {};\n attributesFormData.forEach((attributeFormData) => {\n // $FlowIgnore[cannot-spread-indexer]\n // $FlowIgnore[exponential-spread]\n data = {\n ...data,\n ...attributeFormData,\n };\n });\n\n return data;\n }\n}\n\nexport default AttributeCollection;\n"],"mappings":"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"}
1
+ {"version":3,"file":"AttributeCollection.js","names":["has","ResourceCollection","createAttribute","ChoiceAttributeModel","CompositeAttributeModel","ContentConfiguration","ConfigurationException","AttributeCollection","constructor","data","contributions","isReadonly","forEach","contribution","key","attribute","readonly","collection","push","processLayoutHintRules","attributes","all","visible","isHidden","questions","isResult","results","getAttributeByAttribute","attr","equals","getChildByAttribute","getAttributeByKey","getChildByKey","hasAttributeByKey","getAttributeByLayoutHint","hints","layouthint","getChoiceAttributeByLayoutHint","layoutHint","getAttributesByLayoutHint","replace","oldAttribute","newAttribute","replaceByKey","index","setReferenceDate","date","clone","referenceDate","hasServerErrors","some","addServerError","error","elementid","anchor","hasErrors","updateValidations","errors","hasDynamicValidationData","attributeErrors","compositeChildErrors","elementId","children","indicateContentConfiguration","contentConfiguration","formdata","getFormData","validationData","attributesFormData","isVisible","getEmptyFormData","attributeFormData"],"sources":["../../../src/models/attributes/AttributeCollection.js"],"sourcesContent":["// @flow\nimport { has } from \"../../utils/helpers/objects\";\n\nimport ResourceCollection from \"../base/ResourceCollection\";\n\nimport createAttribute from \"./_createAttribute\";\nimport ChoiceAttributeModel from \"./ChoiceAttributeModel\";\nimport CompositeAttributeModel from \"./CompositeAttributeModel\";\n\nimport ContentConfiguration from \"../contentconfiguration/ContentConfiguration\";\n\nimport { ConfigurationException } from \"../../exceptions\";\n\nimport type { AttributeType, FormErrorAnchor } from \"../types\";\n\n/**\n * Collection of attributes\n */\nclass AttributeCollection extends ResourceCollection<AttributeType> {\n constructor(\n data: Object | Array<Object> = {},\n contributions: Array<Object> = [],\n isReadonly: boolean = false\n ) {\n super();\n\n if (contributions) {\n contributions.forEach((contribution) => {\n const [key] = Object.keys(contribution);\n\n const attribute = createAttribute(key, data, contribution[key]);\n\n if (attribute !== null) {\n // when readonly is not explicitly set in the contributions, follow argument\n if (isReadonly && !has(contribution[key], \"readonly\")) {\n attribute.readonly = true;\n }\n\n this.collection.push(attribute);\n }\n });\n\n this.processLayoutHintRules();\n }\n }\n\n /**\n * Retrieve all attributes in this collection<br>\n * This getter processes layout hints, this is different from the standard {@link BaseCollection#all} property\n * @returns {Array<AttributeType>}\n */\n get attributes(): Array<AttributeType> {\n this.processLayoutHintRules();\n return this.all;\n }\n\n /**\n * Replace attributes with a new array of attributes\n */\n set attributes(attributes: Array<AttributeType>) {\n this.collection = attributes;\n }\n\n /**\n */\n processLayoutHintRules() {\n this.all.forEach((attribute) => {\n attribute.processLayoutHintRules(this);\n });\n }\n\n /**\n * Retrieve only visible attributes from the collection\n */\n get visible(): Array<AttributeType> {\n // Let flow know that this is a AttributeCollection\n if (this instanceof AttributeCollection) {\n return this.attributes.filter((attribute) => !attribute.isHidden);\n }\n\n return [];\n }\n\n /**\n */\n get questions(): Array<AttributeType> {\n return this.visible.filter((attribute) => !attribute.isResult);\n }\n\n /**\n */\n get results(): Array<AttributeType> {\n return this.visible.filter((attribute) => attribute.isResult);\n }\n\n /**\n */\n getAttributeByAttribute(attribute: AttributeType): AttributeType | null {\n return this.find((attr) => {\n if (attr.equals(attribute)) {\n return true;\n } else if (attribute instanceof CompositeAttributeModel) {\n return attribute.getChildByAttribute(attribute);\n }\n\n return false;\n });\n }\n\n /**\n * Get a single attribute by it's key\n */\n getAttributeByKey(key: string): AttributeType | null {\n return this.find((attribute) => {\n if (attribute.key === key) {\n return true;\n } else if (attribute instanceof CompositeAttributeModel) {\n return attribute.getChildByKey(key);\n }\n\n return false;\n });\n }\n\n /**\n * Indicates if attribute with key exists in collection\n */\n hasAttributeByKey(key: string): boolean {\n return this.getAttributeByKey(key) !== null;\n }\n\n /**\n * Getting the first attribute having the supplied layout hint\n */\n getAttributeByLayoutHint(...hints: Array<string>): AttributeType | null {\n return this.find((attribute) => attribute.layouthint.has(...hints)) || null;\n }\n\n /**\n * Getting a choice attribute by layouthint, returns null when not found or not a choice attribute\n */\n getChoiceAttributeByLayoutHint(\n layoutHint: string\n ): ChoiceAttributeModel | null {\n const attribute = this.getAttributeByLayoutHint(layoutHint);\n\n return attribute instanceof ChoiceAttributeModel ? attribute : null;\n }\n\n /**\n * Getting all attributes having the supplied layout hint\n */\n getAttributesByLayoutHint(...hints: Array<string>): Array<AttributeType> {\n return this.filter((attribute) => attribute.layouthint.has(...hints));\n }\n\n /**\n * Replace an attribute instance in the collection with a new attribute instance\n */\n replace(oldAttribute: AttributeType, newAttribute: AttributeType) {\n this.replaceByKey(oldAttribute.key, newAttribute);\n }\n\n /**\n * Replace an attribute by the key of the attribute\n */\n replaceByKey(key: string, newAttribute: AttributeType) {\n this.forEach((attribute, index) => {\n if (attribute.key === key) {\n this.collection[index] = newAttribute;\n }\n });\n }\n\n /**\n * Set reference date by replacing an old attribute with a new attribute with a reference Date\n * Date is a string in ISO format yyyy-MM-dd\n */\n setReferenceDate(date: string) {\n this.forEach((attribute) => {\n const newAttribute = attribute.clone();\n\n newAttribute.referenceDate = date;\n\n this.replace(attribute, newAttribute);\n });\n }\n\n /**\n */\n hasServerErrors(): boolean {\n return this.collection.some((attribute) => attribute.hasServerErrors());\n }\n\n /**\n */\n addServerError(error: FormErrorAnchor) {\n const elementid = error?.anchor?.elementid;\n\n if (elementid) {\n const attribute = this.getAttributeByKey(elementid);\n if (attribute) {\n attribute.addServerError(error);\n } else {\n throw new ConfigurationException(\n `Could not add error to missing attribute with id ${elementid}`\n );\n }\n }\n }\n\n /**\n */\n hasErrors(): boolean {\n return this.visible.some((attribute) => attribute.hasErrors());\n }\n\n /**\n */\n updateValidations(errors: Array<Object>): AttributeCollection {\n this.all\n .filter((attribute) => attribute.hasDynamicValidationData)\n .forEach((attribute) => {\n const attributeErrors = errors.filter(\n (error) => error.anchor?.elementid === attribute.key\n );\n attribute.updateValidations(attributeErrors);\n\n if (attribute instanceof CompositeAttributeModel) {\n const compositeChildErrors = errors.filter((error) => {\n const elementId = error.anchor?.elementid;\n return elementId && elementId.startsWith(`${attribute.key}.`);\n });\n\n attribute.children.updateValidations(\n `${attribute.key}.`,\n compositeChildErrors\n );\n }\n });\n\n return this;\n }\n\n /**\n */\n indicateContentConfiguration(contentConfiguration: ContentConfiguration) {\n if (contentConfiguration) {\n this.all.forEach((attribute) => {\n attribute.indicateContentConfiguration(contentConfiguration);\n });\n }\n }\n\n /**\n * Generate formdata object for current collection based on formdata of attributes\n * Skip attributes that are readonly, the confirmation password or null\n */\n get formdata(): { [string]: any } | null {\n return this.getFormData(false);\n }\n\n /**\n */\n getFormData(validationData: boolean = false): { [string]: any } | null {\n const attributesFormData = this.attributes\n .filter(\n (attribute) =>\n attribute.formdata !== null &&\n !attribute.readonly &&\n (!validationData || attribute.hasDynamicValidationData)\n )\n .map((attribute) => {\n // make attribute empty when it is not (or no longer) visible\n if (attribute.isVisible) {\n return attribute.formdata;\n }\n\n return attribute.getEmptyFormData();\n });\n\n let data = {};\n attributesFormData.forEach((attributeFormData) => {\n // $FlowIgnore[cannot-spread-indexer]\n // $FlowIgnore[exponential-spread]\n data = {\n ...data,\n ...attributeFormData,\n };\n });\n\n return data;\n }\n}\n\nexport default AttributeCollection;\n"],"mappings":"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"}