@beinformed/ui 1.23.2 → 1.24.0

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 +11 -6
  2. package/esm/builder/index.js +1 -0
  3. package/esm/builder/index.js.map +1 -1
  4. package/esm/builder/mergeLayoutHintConfigurations.js +1 -11
  5. package/esm/builder/mergeLayoutHintConfigurations.js.map +1 -1
  6. package/esm/constants/Constants.js +23 -28
  7. package/esm/constants/Constants.js.map +1 -1
  8. package/esm/constants/LayoutHintConfig.js +1 -0
  9. package/esm/constants/LayoutHintConfig.js.map +1 -1
  10. package/esm/constants/LayoutHints.js +11 -27
  11. package/esm/constants/LayoutHints.js.map +1 -1
  12. package/esm/constants/Settings.js +9 -15
  13. package/esm/constants/Settings.js.map +1 -1
  14. package/esm/constants/index.js +1 -0
  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 +9 -28
  19. package/esm/exceptions/FetchException.js.map +1 -1
  20. package/esm/exceptions/IllegalArgumentException.js +1 -2
  21. package/esm/exceptions/IllegalArgumentException.js.map +1 -1
  22. package/esm/exceptions/IllegalReturnException.js +1 -2
  23. package/esm/exceptions/IllegalReturnException.js.map +1 -1
  24. package/esm/exceptions/IllegalStateException.js +1 -2
  25. package/esm/exceptions/IllegalStateException.js.map +1 -1
  26. package/esm/exceptions/JsonParseException.js +1 -2
  27. package/esm/exceptions/JsonParseException.js.map +1 -1
  28. package/esm/exceptions/MissingPropertyException.js +1 -2
  29. package/esm/exceptions/MissingPropertyException.js.map +1 -1
  30. package/esm/exceptions/NetworkException.js +1 -10
  31. package/esm/exceptions/NetworkException.js.map +1 -1
  32. package/esm/exceptions/NotAllowedUriException.js +1 -2
  33. package/esm/exceptions/NotAllowedUriException.js.map +1 -1
  34. package/esm/exceptions/NotFoundException.js +1 -11
  35. package/esm/exceptions/NotFoundException.js.map +1 -1
  36. package/esm/exceptions/ServerRequestException.js +1 -2
  37. package/esm/exceptions/ServerRequestException.js.map +1 -1
  38. package/esm/exceptions/ThemePropertyException.js +1 -2
  39. package/esm/exceptions/ThemePropertyException.js.map +1 -1
  40. package/esm/exceptions/TimeoutException.js +1 -6
  41. package/esm/exceptions/TimeoutException.js.map +1 -1
  42. package/esm/exceptions/UnauthorizedException.js +1 -10
  43. package/esm/exceptions/UnauthorizedException.js.map +1 -1
  44. package/esm/exceptions/UnsupportedOperationException.js +1 -2
  45. package/esm/exceptions/UnsupportedOperationException.js.map +1 -1
  46. package/esm/exceptions/index.js +1 -0
  47. package/esm/exceptions/index.js.map +1 -1
  48. package/esm/hooks/index.js +1 -0
  49. package/esm/hooks/index.js.map +1 -1
  50. package/esm/hooks/useAllFormsOnModel.js +0 -16
  51. package/esm/hooks/useAllFormsOnModel.js.map +1 -1
  52. package/esm/hooks/useAuthentication.js +9 -23
  53. package/esm/hooks/useAuthentication.js.map +1 -1
  54. package/esm/hooks/useContent.js +3 -10
  55. package/esm/hooks/useContent.js.map +1 -1
  56. package/esm/hooks/useDeepCompareEffect.js +2 -6
  57. package/esm/hooks/useDeepCompareEffect.js.map +1 -1
  58. package/esm/hooks/useForm.js +4 -13
  59. package/esm/hooks/useForm.js.map +1 -1
  60. package/esm/hooks/useI18n.js +3 -7
  61. package/esm/hooks/useI18n.js.map +1 -1
  62. package/esm/hooks/useModal.js +0 -3
  63. package/esm/hooks/useModal.js.map +1 -1
  64. package/esm/hooks/useModelCatalog.js +10 -21
  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 +7 -11
  69. package/esm/hooks/useModularUI.js.map +1 -1
  70. package/esm/hooks/useModularUIBasic.js +2 -12
  71. package/esm/hooks/useModularUIBasic.js.map +1 -1
  72. package/esm/hooks/useModularUIModel.js +11 -10
  73. package/esm/hooks/useModularUIModel.js.map +1 -1
  74. package/esm/hooks/useModularUIRequest.js +2 -1
  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 +3 -2
  81. package/esm/hooks/useProgressIndicator.js.map +1 -1
  82. package/esm/hooks/useRouter.js +7 -10
  83. package/esm/hooks/useRouter.js.map +1 -1
  84. package/esm/i18n/Locale.js +15 -40
  85. package/esm/i18n/Locale.js.map +1 -1
  86. package/esm/i18n/Locales.js +13 -33
  87. package/esm/i18n/Locales.js.map +1 -1
  88. package/esm/i18n/Message.js +3 -5
  89. package/esm/i18n/Message.js.map +1 -1
  90. package/esm/i18n/index.js +1 -0
  91. package/esm/i18n/index.js.map +1 -1
  92. package/esm/i18n/languages.js +1 -0
  93. package/esm/i18n/languages.js.map +1 -1
  94. package/esm/i18n/translations/beinformed_error_messages_en.nl.js +1 -0
  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 +1 -0
  97. package/esm/i18n/translations/beinformed_error_messages_nl.nl.js.map +1 -1
  98. package/esm/i18n/withMessage.js +1 -4
  99. package/esm/i18n/withMessage.js.map +1 -1
  100. package/esm/index.js +1 -0
  101. package/esm/index.js.map +1 -1
  102. package/esm/models/actions/ActionCollection.js +13 -26
  103. package/esm/models/actions/ActionCollection.js.map +1 -1
  104. package/esm/models/actions/ActionModel.js +23 -60
  105. package/esm/models/actions/ActionModel.js.map +1 -1
  106. package/esm/models/application/ApplicationModel.js +14 -34
  107. package/esm/models/application/ApplicationModel.js.map +1 -1
  108. package/esm/models/attributes/AttributeCollection.js +27 -81
  109. package/esm/models/attributes/AttributeCollection.js.map +1 -1
  110. package/esm/models/attributes/AttributeContent.js +23 -56
  111. package/esm/models/attributes/AttributeContent.js.map +1 -1
  112. package/esm/models/attributes/AttributeDataHelper.js +33 -83
  113. package/esm/models/attributes/AttributeDataHelper.js.map +1 -1
  114. package/esm/models/attributes/AttributeModel.js +102 -258
  115. package/esm/models/attributes/AttributeModel.js.map +1 -1
  116. package/esm/models/attributes/AttributeSetModel.js +6 -17
  117. package/esm/models/attributes/AttributeSetModel.js.map +1 -1
  118. package/esm/models/attributes/BooleanAttributeModel.js +29 -76
  119. package/esm/models/attributes/BooleanAttributeModel.js.map +1 -1
  120. package/esm/models/attributes/CaptchaAttributeModel.js +5 -8
  121. package/esm/models/attributes/CaptchaAttributeModel.js.map +1 -1
  122. package/esm/models/attributes/ChoiceAttributeModel.js +38 -108
  123. package/esm/models/attributes/ChoiceAttributeModel.js.map +1 -1
  124. package/esm/models/attributes/ChoiceAttributeOptionCollection.js +27 -80
  125. package/esm/models/attributes/ChoiceAttributeOptionCollection.js.map +1 -1
  126. package/esm/models/attributes/ChoiceAttributeOptionModel.js +34 -102
  127. package/esm/models/attributes/ChoiceAttributeOptionModel.js.map +1 -1
  128. package/esm/models/attributes/CompositeAttributeChildCollection.js +23 -64
  129. package/esm/models/attributes/CompositeAttributeChildCollection.js.map +1 -1
  130. package/esm/models/attributes/CompositeAttributeModel.js +40 -99
  131. package/esm/models/attributes/CompositeAttributeModel.js.map +1 -1
  132. package/esm/models/attributes/DatetimeAttributeModel.js +51 -145
  133. package/esm/models/attributes/DatetimeAttributeModel.js.map +1 -1
  134. package/esm/models/attributes/HelptextAttributeModel.js +7 -17
  135. package/esm/models/attributes/HelptextAttributeModel.js.map +1 -1
  136. package/esm/models/attributes/LabelAttributeModel.js +4 -8
  137. package/esm/models/attributes/LabelAttributeModel.js.map +1 -1
  138. package/esm/models/attributes/MemoAttributeModel.js +6 -10
  139. package/esm/models/attributes/MemoAttributeModel.js.map +1 -1
  140. package/esm/models/attributes/MoneyAttributeModel.js +5 -10
  141. package/esm/models/attributes/MoneyAttributeModel.js.map +1 -1
  142. package/esm/models/attributes/NumberAttributeModel.js +22 -49
  143. package/esm/models/attributes/NumberAttributeModel.js.map +1 -1
  144. package/esm/models/attributes/PasswordAttributeModel.js +23 -65
  145. package/esm/models/attributes/PasswordAttributeModel.js.map +1 -1
  146. package/esm/models/attributes/StringAttributeModel.js +29 -72
  147. package/esm/models/attributes/StringAttributeModel.js.map +1 -1
  148. package/esm/models/attributes/UploadAttributeModel.js +21 -62
  149. package/esm/models/attributes/UploadAttributeModel.js.map +1 -1
  150. package/esm/models/attributes/XMLAttributeModel.js +5 -10
  151. package/esm/models/attributes/XMLAttributeModel.js.map +1 -1
  152. package/esm/models/attributes/_createAttribute.js +7 -21
  153. package/esm/models/attributes/_createAttribute.js.map +1 -1
  154. package/esm/models/attributes/input-constraints/BSNConstraint.js +8 -19
  155. package/esm/models/attributes/input-constraints/BSNConstraint.js.map +1 -1
  156. package/esm/models/attributes/input-constraints/ConstraintCollection.js +3 -10
  157. package/esm/models/attributes/input-constraints/ConstraintCollection.js.map +1 -1
  158. package/esm/models/attributes/input-constraints/ConstraintModel.js +6 -22
  159. package/esm/models/attributes/input-constraints/ConstraintModel.js.map +1 -1
  160. package/esm/models/attributes/input-constraints/DateBoundaryConstraint.js +16 -59
  161. package/esm/models/attributes/input-constraints/DateBoundaryConstraint.js.map +1 -1
  162. package/esm/models/attributes/input-constraints/DateTimeDateFormatConstraint.js +8 -22
  163. package/esm/models/attributes/input-constraints/DateTimeDateFormatConstraint.js.map +1 -1
  164. package/esm/models/attributes/input-constraints/DateTimeTimeFormatConstraint.js +8 -22
  165. package/esm/models/attributes/input-constraints/DateTimeTimeFormatConstraint.js.map +1 -1
  166. package/esm/models/attributes/input-constraints/DatetimeFormatConstraint.js +10 -28
  167. package/esm/models/attributes/input-constraints/DatetimeFormatConstraint.js.map +1 -1
  168. package/esm/models/attributes/input-constraints/FileExtensionConstraint.js +7 -18
  169. package/esm/models/attributes/input-constraints/FileExtensionConstraint.js.map +1 -1
  170. package/esm/models/attributes/input-constraints/FileSizeConstraint.js +10 -24
  171. package/esm/models/attributes/input-constraints/FileSizeConstraint.js.map +1 -1
  172. package/esm/models/attributes/input-constraints/IBANConstraint.js +6 -13
  173. package/esm/models/attributes/input-constraints/IBANConstraint.js.map +1 -1
  174. package/esm/models/attributes/input-constraints/MandatoryConstraint.js +8 -15
  175. package/esm/models/attributes/input-constraints/MandatoryConstraint.js.map +1 -1
  176. package/esm/models/attributes/input-constraints/MandatoryRangeConstraint.js +8 -25
  177. package/esm/models/attributes/input-constraints/MandatoryRangeConstraint.js.map +1 -1
  178. package/esm/models/attributes/input-constraints/NumberBoundaryConstraint.js +17 -53
  179. package/esm/models/attributes/input-constraints/NumberBoundaryConstraint.js.map +1 -1
  180. package/esm/models/attributes/input-constraints/NumberFormatConstraint.js +15 -41
  181. package/esm/models/attributes/input-constraints/NumberFormatConstraint.js.map +1 -1
  182. package/esm/models/attributes/input-constraints/NumberGroupingConstraint.js +15 -39
  183. package/esm/models/attributes/input-constraints/NumberGroupingConstraint.js.map +1 -1
  184. package/esm/models/attributes/input-constraints/PasswordConfirmConstraint.js +8 -20
  185. package/esm/models/attributes/input-constraints/PasswordConfirmConstraint.js.map +1 -1
  186. package/esm/models/attributes/input-constraints/PasswordLowerAndUpperCaseConstraint.js +7 -12
  187. package/esm/models/attributes/input-constraints/PasswordLowerAndUpperCaseConstraint.js.map +1 -1
  188. package/esm/models/attributes/input-constraints/PasswordMinNumericCharactersConstraint.js +7 -17
  189. package/esm/models/attributes/input-constraints/PasswordMinNumericCharactersConstraint.js.map +1 -1
  190. package/esm/models/attributes/input-constraints/PasswordMinSpecialCharactersConstraint.js +7 -17
  191. package/esm/models/attributes/input-constraints/PasswordMinSpecialCharactersConstraint.js.map +1 -1
  192. package/esm/models/attributes/input-constraints/PasswordThreeConsecutiveCharactersNotAllowedConstraint.js +8 -22
  193. package/esm/models/attributes/input-constraints/PasswordThreeConsecutiveCharactersNotAllowedConstraint.js.map +1 -1
  194. package/esm/models/attributes/input-constraints/RangeConstraint.js +22 -57
  195. package/esm/models/attributes/input-constraints/RangeConstraint.js.map +1 -1
  196. package/esm/models/attributes/input-constraints/RegexConstraint.js +7 -18
  197. package/esm/models/attributes/input-constraints/RegexConstraint.js.map +1 -1
  198. package/esm/models/attributes/input-constraints/StringLengthConstraint.js +14 -50
  199. package/esm/models/attributes/input-constraints/StringLengthConstraint.js.map +1 -1
  200. package/esm/models/attributes/input-constraints/XMLConstraint.js +8 -17
  201. package/esm/models/attributes/input-constraints/XMLConstraint.js.map +1 -1
  202. package/esm/models/attributes/layouthint-rules/BaseLayoutHintRule.js +9 -17
  203. package/esm/models/attributes/layouthint-rules/BaseLayoutHintRule.js.map +1 -1
  204. package/esm/models/attributes/layouthint-rules/DependentAttribute.js +30 -84
  205. package/esm/models/attributes/layouthint-rules/DependentAttribute.js.map +1 -1
  206. package/esm/models/attributes/layouthint-rules/LayoutHintRuleCollection.js +5 -11
  207. package/esm/models/attributes/layouthint-rules/LayoutHintRuleCollection.js.map +1 -1
  208. package/esm/models/attributes/layouthint-rules/RemainingTotalUploadSize.js +4 -10
  209. package/esm/models/attributes/layouthint-rules/RemainingTotalUploadSize.js.map +1 -1
  210. package/esm/models/base/BaseCollection.js +27 -67
  211. package/esm/models/base/BaseCollection.js.map +1 -1
  212. package/esm/models/base/BaseModel.js +14 -39
  213. package/esm/models/base/BaseModel.js.map +1 -1
  214. package/esm/models/base/ResourceCollection.js +2 -5
  215. package/esm/models/base/ResourceCollection.js.map +1 -1
  216. package/esm/models/base/ResourceModel.js +21 -53
  217. package/esm/models/base/ResourceModel.js.map +1 -1
  218. package/esm/models/caseview/CaseViewModel.js +16 -46
  219. package/esm/models/caseview/CaseViewModel.js.map +1 -1
  220. package/esm/models/concepts/BusinessScenarioModel.js +10 -39
  221. package/esm/models/concepts/BusinessScenarioModel.js.map +1 -1
  222. package/esm/models/concepts/ConceptDetailModel.js +32 -85
  223. package/esm/models/concepts/ConceptDetailModel.js.map +1 -1
  224. package/esm/models/concepts/ConceptIndexModel.js +12 -36
  225. package/esm/models/concepts/ConceptIndexModel.js.map +1 -1
  226. package/esm/models/concepts/ConceptLinkModel.js +16 -45
  227. package/esm/models/concepts/ConceptLinkModel.js.map +1 -1
  228. package/esm/models/concepts/ConceptRelationCollection.js +7 -20
  229. package/esm/models/concepts/ConceptRelationCollection.js.map +1 -1
  230. package/esm/models/concepts/ConceptRelationModel.js +8 -22
  231. package/esm/models/concepts/ConceptRelationModel.js.map +1 -1
  232. package/esm/models/concepts/ConceptTypeDetailModel.js +12 -25
  233. package/esm/models/concepts/ConceptTypeDetailModel.js.map +1 -1
  234. package/esm/models/concepts/SourceReferenceCollection.js +2 -5
  235. package/esm/models/concepts/SourceReferenceCollection.js.map +1 -1
  236. package/esm/models/concepts/SourceReferenceModel.js +10 -21
  237. package/esm/models/concepts/SourceReferenceModel.js.map +1 -1
  238. package/esm/models/content/ContentIndexModel.js +13 -37
  239. package/esm/models/content/ContentIndexModel.js.map +1 -1
  240. package/esm/models/content/ContentLinkModel.js +19 -56
  241. package/esm/models/content/ContentLinkModel.js.map +1 -1
  242. package/esm/models/content/ContentModel.js +22 -59
  243. package/esm/models/content/ContentModel.js.map +1 -1
  244. package/esm/models/content/ContentTOCModel.js +17 -45
  245. package/esm/models/content/ContentTOCModel.js.map +1 -1
  246. package/esm/models/content/ContentTypeModel.js +8 -16
  247. package/esm/models/content/ContentTypeModel.js.map +1 -1
  248. package/esm/models/content/SectionModel.js +20 -57
  249. package/esm/models/content/SectionModel.js.map +1 -1
  250. package/esm/models/content/SubSectionModel.js +16 -43
  251. package/esm/models/content/SubSectionModel.js.map +1 -1
  252. package/esm/models/contentconfiguration/ContentConfiguration.js +6 -20
  253. package/esm/models/contentconfiguration/ContentConfiguration.js.map +1 -1
  254. package/esm/models/contentconfiguration/ContentConfigurationElements.js +11 -48
  255. package/esm/models/contentconfiguration/ContentConfigurationElements.js.map +1 -1
  256. package/esm/models/contentconfiguration/ContentConfigurationEndResults.js +3 -13
  257. package/esm/models/contentconfiguration/ContentConfigurationEndResults.js.map +1 -1
  258. package/esm/models/contentconfiguration/ContentConfigurationQuestions.js +5 -15
  259. package/esm/models/contentconfiguration/ContentConfigurationQuestions.js.map +1 -1
  260. package/esm/models/contentconfiguration/ContentConfigurationResults.js +13 -32
  261. package/esm/models/contentconfiguration/ContentConfigurationResults.js.map +1 -1
  262. package/esm/models/detail/DetailModel.js +21 -54
  263. package/esm/models/detail/DetailModel.js.map +1 -1
  264. package/esm/models/error/ErrorCollection.js +11 -29
  265. package/esm/models/error/ErrorCollection.js.map +1 -1
  266. package/esm/models/error/ErrorModel.js +8 -21
  267. package/esm/models/error/ErrorModel.js.map +1 -1
  268. package/esm/models/error/ErrorResponse.js +37 -93
  269. package/esm/models/error/ErrorResponse.js.map +1 -1
  270. package/esm/models/filters/AssignmentFilterModel.js +19 -45
  271. package/esm/models/filters/AssignmentFilterModel.js.map +1 -1
  272. package/esm/models/filters/BaseFilterModel.js +25 -58
  273. package/esm/models/filters/BaseFilterModel.js.map +1 -1
  274. package/esm/models/filters/ConceptIndexFilterModel.js +1 -5
  275. package/esm/models/filters/ConceptIndexFilterModel.js.map +1 -1
  276. package/esm/models/filters/FilterCollection.js +11 -44
  277. package/esm/models/filters/FilterCollection.js.map +1 -1
  278. package/esm/models/filters/FilterModel.js +2 -1
  279. package/esm/models/filters/FilterModel.js.map +1 -1
  280. package/esm/models/filters/RangeFilterModel.js +1 -6
  281. package/esm/models/filters/RangeFilterModel.js.map +1 -1
  282. package/esm/models/form/FormModel.js +136 -332
  283. package/esm/models/form/FormModel.js.map +1 -1
  284. package/esm/models/form/FormObjectModel.js +55 -141
  285. package/esm/models/form/FormObjectModel.js.map +1 -1
  286. package/esm/models/grouping/GroupingModel.js +20 -58
  287. package/esm/models/grouping/GroupingModel.js.map +1 -1
  288. package/esm/models/href/Href.js +47 -121
  289. package/esm/models/href/Href.js.map +1 -1
  290. package/esm/models/href/ListHref.js +11 -32
  291. package/esm/models/href/ListHref.js.map +1 -1
  292. package/esm/models/index.js +1 -0
  293. package/esm/models/index.js.map +1 -1
  294. package/esm/models/layouthint/LayoutHintCollection.js +9 -32
  295. package/esm/models/layouthint/LayoutHintCollection.js.map +1 -1
  296. package/esm/models/links/LinkCollection.js +15 -44
  297. package/esm/models/links/LinkCollection.js.map +1 -1
  298. package/esm/models/links/LinkModel.js +21 -57
  299. package/esm/models/links/LinkModel.js.map +1 -1
  300. package/esm/models/links/normalizeLinkJSON.js +5 -21
  301. package/esm/models/links/normalizeLinkJSON.js.map +1 -1
  302. package/esm/models/list/ListDetailModel.js +31 -79
  303. package/esm/models/list/ListDetailModel.js.map +1 -1
  304. package/esm/models/list/ListHeaderModel.js +10 -28
  305. package/esm/models/list/ListHeaderModel.js.map +1 -1
  306. package/esm/models/list/ListItemCollection.js +4 -20
  307. package/esm/models/list/ListItemCollection.js.map +1 -1
  308. package/esm/models/list/ListItemModel.js +7 -23
  309. package/esm/models/list/ListItemModel.js.map +1 -1
  310. package/esm/models/list/ListModel.js +38 -115
  311. package/esm/models/list/ListModel.js.map +1 -1
  312. package/esm/models/lookup/LookupOptionCollection.js +4 -6
  313. package/esm/models/lookup/LookupOptionCollection.js.map +1 -1
  314. package/esm/models/lookup/LookupOptionsModel.js +5 -16
  315. package/esm/models/lookup/LookupOptionsModel.js.map +1 -1
  316. package/esm/models/modelcatalog/ModelCatalogModel.js +6 -14
  317. package/esm/models/modelcatalog/ModelCatalogModel.js.map +1 -1
  318. package/esm/models/paging/PagesizeModel.js +4 -12
  319. package/esm/models/paging/PagesizeModel.js.map +1 -1
  320. package/esm/models/paging/PagingModel.js +11 -26
  321. package/esm/models/paging/PagingModel.js.map +1 -1
  322. package/esm/models/panels/GroupingPanelModel.js +14 -41
  323. package/esm/models/panels/GroupingPanelModel.js.map +1 -1
  324. package/esm/models/parameter/Parameter.js +14 -41
  325. package/esm/models/parameter/Parameter.js.map +1 -1
  326. package/esm/models/process/ProcessStatusSettingsModel.js +10 -24
  327. package/esm/models/process/ProcessStatusSettingsModel.js.map +1 -1
  328. package/esm/models/resolveModel.js +2 -7
  329. package/esm/models/resolveModel.js.map +1 -1
  330. package/esm/models/search/CaseSearchModel.js +3 -9
  331. package/esm/models/search/CaseSearchModel.js.map +1 -1
  332. package/esm/models/sorting/SortOptionModel.js +15 -41
  333. package/esm/models/sorting/SortOptionModel.js.map +1 -1
  334. package/esm/models/sorting/SortingModel.js +9 -28
  335. package/esm/models/sorting/SortingModel.js.map +1 -1
  336. package/esm/models/tab/TabModel.js +14 -41
  337. package/esm/models/tab/TabModel.js.map +1 -1
  338. package/esm/models/taskgroup/TaskGroupCollection.js +1 -2
  339. package/esm/models/taskgroup/TaskGroupCollection.js.map +1 -1
  340. package/esm/models/taskgroup/TaskGroupModel.js +7 -17
  341. package/esm/models/taskgroup/TaskGroupModel.js.map +1 -1
  342. package/esm/models/user/UserModel.js +5 -10
  343. package/esm/models/user/UserModel.js.map +1 -1
  344. package/esm/models/user/UserProfileModel.js +2 -10
  345. package/esm/models/user/UserProfileModel.js.map +1 -1
  346. package/esm/models/user/UserServicesModel.js +11 -27
  347. package/esm/models/user/UserServicesModel.js.map +1 -1
  348. package/esm/modularui/Authenticate.js +21 -56
  349. package/esm/modularui/Authenticate.js.map +1 -1
  350. package/esm/modularui/ModularUIError.js +3 -8
  351. package/esm/modularui/ModularUIError.js.map +1 -1
  352. package/esm/modularui/ModularUIRequest.js +89 -193
  353. package/esm/modularui/ModularUIRequest.js.map +1 -1
  354. package/esm/modularui/ModularUIResponse.js +13 -37
  355. package/esm/modularui/ModularUIResponse.js.map +1 -1
  356. package/esm/modularui/index.js +1 -0
  357. package/esm/modularui/index.js.map +1 -1
  358. package/esm/react/ErrorBoundary.js +2 -12
  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 +1 -0
  363. package/esm/react/index.js.map +1 -1
  364. package/esm/react/utils.js +3 -7
  365. package/esm/react/utils.js.map +1 -1
  366. package/esm/react-client/Init.js +1 -2
  367. package/esm/react-client/Init.js.map +1 -1
  368. package/esm/react-client/client.js +15 -29
  369. package/esm/react-client/client.js.map +1 -1
  370. package/esm/react-client/contextPath.js +3 -8
  371. package/esm/react-client/contextPath.js.map +1 -1
  372. package/esm/react-client/index.js +1 -0
  373. package/esm/react-client/index.js.map +1 -1
  374. package/esm/react-client/rehydrate.js +4 -19
  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 +2 -12
  379. package/esm/react-server/createSSRComplete.js.map +1 -1
  380. package/esm/react-server/htmlpage.js +25 -12
  381. package/esm/react-server/htmlpage.js.map +1 -1
  382. package/esm/react-server/index.js +1 -0
  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 +1 -2
  387. package/esm/react-server/renderSSRMinimal.js.map +1 -1
  388. package/esm/react-server/requestInformation.js +7 -12
  389. package/esm/react-server/requestInformation.js.map +1 -1
  390. package/esm/react-server/serverNoSSR.js +3 -7
  391. package/esm/react-server/serverNoSSR.js.map +1 -1
  392. package/esm/react-server/serverSSR.js +1 -2
  393. package/esm/react-server/serverSSR.js.map +1 -1
  394. package/esm/react-server/serverUtil.js +13 -37
  395. package/esm/react-server/serverUtil.js.map +1 -1
  396. package/esm/react-theme/ThemeProvider.js +1 -2
  397. package/esm/react-theme/ThemeProvider.js.map +1 -1
  398. package/esm/react-theme/createTheme.js +7 -20
  399. package/esm/react-theme/createTheme.js.map +1 -1
  400. package/esm/react-theme/index.js +1 -0
  401. package/esm/react-theme/index.js.map +1 -1
  402. package/esm/react-theme/useTheme.js +1 -2
  403. package/esm/react-theme/useTheme.js.map +1 -1
  404. package/esm/react-theme/utils/background.js +2 -5
  405. package/esm/react-theme/utils/background.js.map +1 -1
  406. package/esm/react-theme/utils/colors.js +3 -9
  407. package/esm/react-theme/utils/colors.js.map +1 -1
  408. package/esm/react-theme/utils/contrast.js +8 -27
  409. package/esm/react-theme/utils/contrast.js.map +1 -1
  410. package/esm/react-theme/utils/corners.js +4 -10
  411. package/esm/react-theme/utils/corners.js.map +1 -1
  412. package/esm/react-theme/utils/spacers.js +7 -22
  413. package/esm/react-theme/utils/spacers.js.map +1 -1
  414. package/esm/react-theme/utils/themeProps.js +8 -22
  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 +1 -0
  419. package/esm/redux/_i18n/index.js.map +1 -1
  420. package/esm/redux/_i18n/reducer.js +13 -16
  421. package/esm/redux/_i18n/reducer.js.map +1 -1
  422. package/esm/redux/_modularui/actions.js +36 -48
  423. package/esm/redux/_modularui/actions.js.map +1 -1
  424. package/esm/redux/_modularui/connector.js +21 -18
  425. package/esm/redux/_modularui/connector.js.map +1 -1
  426. package/esm/redux/_modularui/index.js +1 -0
  427. package/esm/redux/_modularui/index.js.map +1 -1
  428. package/esm/redux/_modularui/middleware.js +8 -22
  429. package/esm/redux/_modularui/middleware.js.map +1 -1
  430. package/esm/redux/_modularui/modularuiUtils.js +10 -25
  431. package/esm/redux/_modularui/modularuiUtils.js.map +1 -1
  432. package/esm/redux/_modularui/reducer.js +19 -39
  433. package/esm/redux/_modularui/reducer.js.map +1 -1
  434. package/esm/redux/_modularui/selectors.js +20 -62
  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 +7 -5
  439. package/esm/redux/_router/actions.js.map +1 -1
  440. package/esm/redux/_router/connectors.js +11 -14
  441. package/esm/redux/_router/connectors.js.map +1 -1
  442. package/esm/redux/_router/index.js +1 -0
  443. package/esm/redux/_router/index.js.map +1 -1
  444. package/esm/redux/_router/middleware.js +2 -1
  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 +2 -4
  449. package/esm/redux/actions/Application.js.map +1 -1
  450. package/esm/redux/actions/Authorization.js +8 -14
  451. package/esm/redux/actions/Authorization.js.map +1 -1
  452. package/esm/redux/actions/Error.js +5 -13
  453. package/esm/redux/actions/Error.js.map +1 -1
  454. package/esm/redux/actions/Form.js +2 -3
  455. package/esm/redux/actions/Form.js.map +1 -1
  456. package/esm/redux/actions/FormAttributeSet.js +1 -9
  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 +4 -6
  461. package/esm/redux/actions/FormAutosave.js.map +1 -1
  462. package/esm/redux/actions/FormAutosubmit.js +1 -4
  463. package/esm/redux/actions/FormAutosubmit.js.map +1 -1
  464. package/esm/redux/actions/FormValidations.js +3 -7
  465. package/esm/redux/actions/FormValidations.js.map +1 -1
  466. package/esm/redux/actions/Modals.js +3 -1
  467. package/esm/redux/actions/Modals.js.map +1 -1
  468. package/esm/redux/actions/Notification.js +5 -10
  469. package/esm/redux/actions/Notification.js.map +1 -1
  470. package/esm/redux/actions/Preferences.js +14 -26
  471. package/esm/redux/actions/Preferences.js.map +1 -1
  472. package/esm/redux/actions/ProgressIndicator.js +5 -4
  473. package/esm/redux/actions/ProgressIndicator.js.map +1 -1
  474. package/esm/redux/actions/SignIn.js +5 -8
  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 +1 -0
  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 +2 -3
  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 +2 -5
  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 +2 -5
  491. package/esm/redux/connectors/ContentDetail.js.map +1 -1
  492. package/esm/redux/connectors/ContentDetailSection.js +2 -5
  493. package/esm/redux/connectors/ContentDetailSection.js.map +1 -1
  494. package/esm/redux/connectors/Form.js +3 -10
  495. package/esm/redux/connectors/Form.js.map +1 -1
  496. package/esm/redux/connectors/FormAttributeSet.js +2 -3
  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 +1 -5
  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 +2 -3
  505. package/esm/redux/connectors/Notification.js.map +1 -1
  506. package/esm/redux/connectors/PanelRenderer.js +1 -5
  507. package/esm/redux/connectors/PanelRenderer.js.map +1 -1
  508. package/esm/redux/connectors/Preferences.js +2 -4
  509. package/esm/redux/connectors/Preferences.js.map +1 -1
  510. package/esm/redux/connectors/Progress.js +2 -1
  511. package/esm/redux/connectors/Progress.js.map +1 -1
  512. package/esm/redux/connectors/ProgressIndicator.js +2 -3
  513. package/esm/redux/connectors/ProgressIndicator.js.map +1 -1
  514. package/esm/redux/connectors/QuickSearch.js +2 -1
  515. package/esm/redux/connectors/QuickSearch.js.map +1 -1
  516. package/esm/redux/connectors/SignIn.js +3 -6
  517. package/esm/redux/connectors/SignIn.js.map +1 -1
  518. package/esm/redux/connectors/SignOut.js +4 -6
  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 +1 -0
  523. package/esm/redux/connectors/index.js.map +1 -1
  524. package/esm/redux/index.js +16 -7
  525. package/esm/redux/index.js.map +1 -1
  526. package/esm/redux/reducers/AuthReducer.js +13 -14
  527. package/esm/redux/reducers/AuthReducer.js.map +1 -1
  528. package/esm/redux/reducers/ErrorReducer.js +3 -4
  529. package/esm/redux/reducers/ErrorReducer.js.map +1 -1
  530. package/esm/redux/reducers/ModalsReducer.js +11 -15
  531. package/esm/redux/reducers/ModalsReducer.js.map +1 -1
  532. package/esm/redux/reducers/NotificationReducer.js +7 -8
  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 +11 -15
  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 +1 -0
  541. package/esm/redux/reducers/index.js.map +1 -1
  542. package/esm/redux/selectors/i18n.js +5 -4
  543. package/esm/redux/selectors/i18n.js.map +1 -1
  544. package/esm/redux/selectors/index.js +1 -0
  545. package/esm/redux/selectors/index.js.map +1 -1
  546. package/esm/redux/store/beforeRenderHooks.js +2 -1
  547. package/esm/redux/store/beforeRenderHooks.js.map +1 -1
  548. package/esm/redux/store/configureStore.js +3 -7
  549. package/esm/redux/store/configureStore.js.map +1 -1
  550. package/esm/utils/browser/Cache.js +17 -44
  551. package/esm/utils/browser/Cache.js.map +1 -1
  552. package/esm/utils/browser/Cookies.js +4 -9
  553. package/esm/utils/browser/Cookies.js.map +1 -1
  554. package/esm/utils/datetime/DateTimeUtil.js +53 -110
  555. package/esm/utils/datetime/DateTimeUtil.js.map +1 -1
  556. package/esm/utils/fetch/serverFetch.js +2 -8
  557. package/esm/utils/fetch/serverFetch.js.map +1 -1
  558. package/esm/utils/fetch/universalFetch.js +6 -17
  559. package/esm/utils/fetch/universalFetch.js.map +1 -1
  560. package/esm/utils/fetch/xhr.js +42 -101
  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 +3 -5
  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 +5 -8
  569. package/esm/utils/helpers/objects.js.map +1 -1
  570. package/esm/utils/helpers/sanitizeHtml.js +7 -9
  571. package/esm/utils/helpers/sanitizeHtml.js.map +1 -1
  572. package/esm/utils/helpers/text.js +2 -3
  573. package/esm/utils/helpers/text.js.map +1 -1
  574. package/esm/utils/index.js +8 -3
  575. package/esm/utils/index.js.map +1 -1
  576. package/esm/utils/number/DecimalFormat.js +43 -124
  577. package/esm/utils/number/DecimalFormat.js.map +1 -1
  578. package/esm/utils/number/formatValue.js +5 -18
  579. package/esm/utils/number/formatValue.js.map +1 -1
  580. package/esm/utils/number/parseNumbers.js +5 -17
  581. package/esm/utils/number/parseNumbers.js.map +1 -1
  582. package/lib/builder/index.js +0 -3
  583. package/lib/builder/index.js.map +1 -1
  584. package/lib/builder/mergeLayoutHintConfigurations.js +1 -13
  585. package/lib/builder/mergeLayoutHintConfigurations.js.map +1 -1
  586. package/lib/constants/Constants.js +25 -32
  587. package/lib/constants/Constants.js.map +1 -1
  588. package/lib/constants/LayoutHintConfig.js.map +1 -1
  589. package/lib/constants/LayoutHints.js +9 -29
  590. package/lib/constants/LayoutHints.js.map +1 -1
  591. package/lib/constants/Settings.js +9 -38
  592. package/lib/constants/Settings.js.map +1 -1
  593. package/lib/constants/index.js +0 -7
  594. package/lib/constants/index.js.map +1 -1
  595. package/lib/exceptions/ConfigurationException.js +0 -2
  596. package/lib/exceptions/ConfigurationException.js.map +1 -1
  597. package/lib/exceptions/FetchException.js +9 -27
  598. package/lib/exceptions/FetchException.js.map +1 -1
  599. package/lib/exceptions/IllegalArgumentException.js +0 -3
  600. package/lib/exceptions/IllegalArgumentException.js.map +1 -1
  601. package/lib/exceptions/IllegalReturnException.js +0 -3
  602. package/lib/exceptions/IllegalReturnException.js.map +1 -1
  603. package/lib/exceptions/IllegalStateException.js +0 -3
  604. package/lib/exceptions/IllegalStateException.js.map +1 -1
  605. package/lib/exceptions/JsonParseException.js +0 -3
  606. package/lib/exceptions/JsonParseException.js.map +1 -1
  607. package/lib/exceptions/MissingPropertyException.js +0 -3
  608. package/lib/exceptions/MissingPropertyException.js.map +1 -1
  609. package/lib/exceptions/NetworkException.js +1 -10
  610. package/lib/exceptions/NetworkException.js.map +1 -1
  611. package/lib/exceptions/NotAllowedUriException.js +0 -3
  612. package/lib/exceptions/NotAllowedUriException.js.map +1 -1
  613. package/lib/exceptions/NotFoundException.js +1 -10
  614. package/lib/exceptions/NotFoundException.js.map +1 -1
  615. package/lib/exceptions/ServerRequestException.js +0 -3
  616. package/lib/exceptions/ServerRequestException.js.map +1 -1
  617. package/lib/exceptions/ThemePropertyException.js +0 -3
  618. package/lib/exceptions/ThemePropertyException.js.map +1 -1
  619. package/lib/exceptions/TimeoutException.js +1 -10
  620. package/lib/exceptions/TimeoutException.js.map +1 -1
  621. package/lib/exceptions/UnauthorizedException.js +1 -9
  622. package/lib/exceptions/UnauthorizedException.js.map +1 -1
  623. package/lib/exceptions/UnsupportedOperationException.js +0 -3
  624. package/lib/exceptions/UnsupportedOperationException.js.map +1 -1
  625. package/lib/exceptions/index.js +0 -16
  626. package/lib/exceptions/index.js.map +1 -1
  627. package/lib/hooks/index.js +0 -33
  628. package/lib/hooks/index.js.map +1 -1
  629. package/lib/hooks/useAllFormsOnModel.js +0 -23
  630. package/lib/hooks/useAllFormsOnModel.js.map +1 -1
  631. package/lib/hooks/useAuthentication.js +8 -35
  632. package/lib/hooks/useAuthentication.js.map +1 -1
  633. package/lib/hooks/useContent.js +3 -16
  634. package/lib/hooks/useContent.js.map +1 -1
  635. package/lib/hooks/useDeepCompareEffect.js +1 -12
  636. package/lib/hooks/useDeepCompareEffect.js.map +1 -1
  637. package/lib/hooks/useForm.js +3 -27
  638. package/lib/hooks/useForm.js.map +1 -1
  639. package/lib/hooks/useI18n.js +3 -15
  640. package/lib/hooks/useI18n.js.map +1 -1
  641. package/lib/hooks/useModal.js +0 -9
  642. package/lib/hooks/useModal.js.map +1 -1
  643. package/lib/hooks/useModelCatalog.js +9 -45
  644. package/lib/hooks/useModelCatalog.js.map +1 -1
  645. package/lib/hooks/useModels.js +0 -3
  646. package/lib/hooks/useModels.js.map +1 -1
  647. package/lib/hooks/useModularUI.js +6 -19
  648. package/lib/hooks/useModularUI.js.map +1 -1
  649. package/lib/hooks/useModularUIBasic.js +2 -17
  650. package/lib/hooks/useModularUIBasic.js.map +1 -1
  651. package/lib/hooks/useModularUIModel.js +9 -39
  652. package/lib/hooks/useModularUIModel.js.map +1 -1
  653. package/lib/hooks/useModularUIRequest.js +1 -7
  654. package/lib/hooks/useModularUIRequest.js.map +1 -1
  655. package/lib/hooks/useNotification.js +1 -7
  656. package/lib/hooks/useNotification.js.map +1 -1
  657. package/lib/hooks/usePreference.js +0 -4
  658. package/lib/hooks/usePreference.js.map +1 -1
  659. package/lib/hooks/useProgressIndicator.js +2 -4
  660. package/lib/hooks/useProgressIndicator.js.map +1 -1
  661. package/lib/hooks/useRouter.js +6 -20
  662. package/lib/hooks/useRouter.js.map +1 -1
  663. package/lib/i18n/Locale.js +15 -44
  664. package/lib/i18n/Locale.js.map +1 -1
  665. package/lib/i18n/Locales.js +13 -44
  666. package/lib/i18n/Locales.js.map +1 -1
  667. package/lib/i18n/Message.js +2 -8
  668. package/lib/i18n/Message.js.map +1 -1
  669. package/lib/i18n/index.js +0 -9
  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 +1 -10
  675. package/lib/i18n/withMessage.js.map +1 -1
  676. package/lib/index.js +0 -13
  677. package/lib/index.js.map +1 -1
  678. package/lib/models/actions/ActionCollection.js +12 -33
  679. package/lib/models/actions/ActionCollection.js.map +1 -1
  680. package/lib/models/actions/ActionModel.js +23 -68
  681. package/lib/models/actions/ActionModel.js.map +1 -1
  682. package/lib/models/application/ApplicationModel.js +14 -41
  683. package/lib/models/application/ApplicationModel.js.map +1 -1
  684. package/lib/models/attributes/AttributeCollection.js +27 -87
  685. package/lib/models/attributes/AttributeCollection.js.map +1 -1
  686. package/lib/models/attributes/AttributeContent.js +23 -65
  687. package/lib/models/attributes/AttributeContent.js.map +1 -1
  688. package/lib/models/attributes/AttributeDataHelper.js +32 -89
  689. package/lib/models/attributes/AttributeDataHelper.js.map +1 -1
  690. package/lib/models/attributes/AttributeModel.js +101 -254
  691. package/lib/models/attributes/AttributeModel.js.map +1 -1
  692. package/lib/models/attributes/AttributeSetModel.js +5 -20
  693. package/lib/models/attributes/AttributeSetModel.js.map +1 -1
  694. package/lib/models/attributes/BooleanAttributeModel.js +29 -83
  695. package/lib/models/attributes/BooleanAttributeModel.js.map +1 -1
  696. package/lib/models/attributes/CaptchaAttributeModel.js +3 -10
  697. package/lib/models/attributes/CaptchaAttributeModel.js.map +1 -1
  698. package/lib/models/attributes/ChoiceAttributeModel.js +38 -115
  699. package/lib/models/attributes/ChoiceAttributeModel.js.map +1 -1
  700. package/lib/models/attributes/ChoiceAttributeOptionCollection.js +26 -84
  701. package/lib/models/attributes/ChoiceAttributeOptionCollection.js.map +1 -1
  702. package/lib/models/attributes/ChoiceAttributeOptionModel.js +34 -108
  703. package/lib/models/attributes/ChoiceAttributeOptionModel.js.map +1 -1
  704. package/lib/models/attributes/CompositeAttributeChildCollection.js +23 -70
  705. package/lib/models/attributes/CompositeAttributeChildCollection.js.map +1 -1
  706. package/lib/models/attributes/CompositeAttributeModel.js +40 -109
  707. package/lib/models/attributes/CompositeAttributeModel.js.map +1 -1
  708. package/lib/models/attributes/DatetimeAttributeModel.js +51 -159
  709. package/lib/models/attributes/DatetimeAttributeModel.js.map +1 -1
  710. package/lib/models/attributes/HelptextAttributeModel.js +5 -20
  711. package/lib/models/attributes/HelptextAttributeModel.js.map +1 -1
  712. package/lib/models/attributes/LabelAttributeModel.js +3 -11
  713. package/lib/models/attributes/LabelAttributeModel.js.map +1 -1
  714. package/lib/models/attributes/MemoAttributeModel.js +4 -13
  715. package/lib/models/attributes/MemoAttributeModel.js.map +1 -1
  716. package/lib/models/attributes/MoneyAttributeModel.js +4 -14
  717. package/lib/models/attributes/MoneyAttributeModel.js.map +1 -1
  718. package/lib/models/attributes/NumberAttributeModel.js +21 -61
  719. package/lib/models/attributes/NumberAttributeModel.js.map +1 -1
  720. package/lib/models/attributes/PasswordAttributeModel.js +23 -75
  721. package/lib/models/attributes/PasswordAttributeModel.js.map +1 -1
  722. package/lib/models/attributes/StringAttributeModel.js +28 -79
  723. package/lib/models/attributes/StringAttributeModel.js.map +1 -1
  724. package/lib/models/attributes/UploadAttributeModel.js +21 -66
  725. package/lib/models/attributes/UploadAttributeModel.js.map +1 -1
  726. package/lib/models/attributes/XMLAttributeModel.js +4 -16
  727. package/lib/models/attributes/XMLAttributeModel.js.map +1 -1
  728. package/lib/models/attributes/_createAttribute.js +7 -41
  729. package/lib/models/attributes/_createAttribute.js.map +1 -1
  730. package/lib/models/attributes/input-constraints/BSNConstraint.js +6 -19
  731. package/lib/models/attributes/input-constraints/BSNConstraint.js.map +1 -1
  732. package/lib/models/attributes/input-constraints/ConstraintCollection.js +3 -15
  733. package/lib/models/attributes/input-constraints/ConstraintCollection.js.map +1 -1
  734. package/lib/models/attributes/input-constraints/ConstraintModel.js +6 -19
  735. package/lib/models/attributes/input-constraints/ConstraintModel.js.map +1 -1
  736. package/lib/models/attributes/input-constraints/DateBoundaryConstraint.js +16 -58
  737. package/lib/models/attributes/input-constraints/DateBoundaryConstraint.js.map +1 -1
  738. package/lib/models/attributes/input-constraints/DateTimeDateFormatConstraint.js +8 -22
  739. package/lib/models/attributes/input-constraints/DateTimeDateFormatConstraint.js.map +1 -1
  740. package/lib/models/attributes/input-constraints/DateTimeTimeFormatConstraint.js +8 -22
  741. package/lib/models/attributes/input-constraints/DateTimeTimeFormatConstraint.js.map +1 -1
  742. package/lib/models/attributes/input-constraints/DatetimeFormatConstraint.js +10 -27
  743. package/lib/models/attributes/input-constraints/DatetimeFormatConstraint.js.map +1 -1
  744. package/lib/models/attributes/input-constraints/FileExtensionConstraint.js +7 -20
  745. package/lib/models/attributes/input-constraints/FileExtensionConstraint.js.map +1 -1
  746. package/lib/models/attributes/input-constraints/FileSizeConstraint.js +10 -26
  747. package/lib/models/attributes/input-constraints/FileSizeConstraint.js.map +1 -1
  748. package/lib/models/attributes/input-constraints/IBANConstraint.js +5 -14
  749. package/lib/models/attributes/input-constraints/IBANConstraint.js.map +1 -1
  750. package/lib/models/attributes/input-constraints/MandatoryConstraint.js +6 -15
  751. package/lib/models/attributes/input-constraints/MandatoryConstraint.js.map +1 -1
  752. package/lib/models/attributes/input-constraints/MandatoryRangeConstraint.js +8 -25
  753. package/lib/models/attributes/input-constraints/MandatoryRangeConstraint.js.map +1 -1
  754. package/lib/models/attributes/input-constraints/NumberBoundaryConstraint.js +17 -51
  755. package/lib/models/attributes/input-constraints/NumberBoundaryConstraint.js.map +1 -1
  756. package/lib/models/attributes/input-constraints/NumberFormatConstraint.js +15 -44
  757. package/lib/models/attributes/input-constraints/NumberFormatConstraint.js.map +1 -1
  758. package/lib/models/attributes/input-constraints/NumberGroupingConstraint.js +15 -40
  759. package/lib/models/attributes/input-constraints/NumberGroupingConstraint.js.map +1 -1
  760. package/lib/models/attributes/input-constraints/PasswordConfirmConstraint.js +8 -20
  761. package/lib/models/attributes/input-constraints/PasswordConfirmConstraint.js.map +1 -1
  762. package/lib/models/attributes/input-constraints/PasswordLowerAndUpperCaseConstraint.js +5 -12
  763. package/lib/models/attributes/input-constraints/PasswordLowerAndUpperCaseConstraint.js.map +1 -1
  764. package/lib/models/attributes/input-constraints/PasswordMinNumericCharactersConstraint.js +7 -18
  765. package/lib/models/attributes/input-constraints/PasswordMinNumericCharactersConstraint.js.map +1 -1
  766. package/lib/models/attributes/input-constraints/PasswordMinSpecialCharactersConstraint.js +7 -18
  767. package/lib/models/attributes/input-constraints/PasswordMinSpecialCharactersConstraint.js.map +1 -1
  768. package/lib/models/attributes/input-constraints/PasswordThreeConsecutiveCharactersNotAllowedConstraint.js +8 -24
  769. package/lib/models/attributes/input-constraints/PasswordThreeConsecutiveCharactersNotAllowedConstraint.js.map +1 -1
  770. package/lib/models/attributes/input-constraints/RangeConstraint.js +22 -57
  771. package/lib/models/attributes/input-constraints/RangeConstraint.js.map +1 -1
  772. package/lib/models/attributes/input-constraints/RegexConstraint.js +7 -19
  773. package/lib/models/attributes/input-constraints/RegexConstraint.js.map +1 -1
  774. package/lib/models/attributes/input-constraints/StringLengthConstraint.js +13 -50
  775. package/lib/models/attributes/input-constraints/StringLengthConstraint.js.map +1 -1
  776. package/lib/models/attributes/input-constraints/XMLConstraint.js +6 -17
  777. package/lib/models/attributes/input-constraints/XMLConstraint.js.map +1 -1
  778. package/lib/models/attributes/layouthint-rules/BaseLayoutHintRule.js +8 -18
  779. package/lib/models/attributes/layouthint-rules/BaseLayoutHintRule.js.map +1 -1
  780. package/lib/models/attributes/layouthint-rules/DependentAttribute.js +30 -88
  781. package/lib/models/attributes/layouthint-rules/DependentAttribute.js.map +1 -1
  782. package/lib/models/attributes/layouthint-rules/LayoutHintRuleCollection.js +4 -19
  783. package/lib/models/attributes/layouthint-rules/LayoutHintRuleCollection.js.map +1 -1
  784. package/lib/models/attributes/layouthint-rules/RemainingTotalUploadSize.js +3 -13
  785. package/lib/models/attributes/layouthint-rules/RemainingTotalUploadSize.js.map +1 -1
  786. package/lib/models/base/BaseCollection.js +26 -73
  787. package/lib/models/base/BaseCollection.js.map +1 -1
  788. package/lib/models/base/BaseModel.js +14 -40
  789. package/lib/models/base/BaseModel.js.map +1 -1
  790. package/lib/models/base/ResourceCollection.js +1 -6
  791. package/lib/models/base/ResourceCollection.js.map +1 -1
  792. package/lib/models/base/ResourceModel.js +21 -53
  793. package/lib/models/base/ResourceModel.js.map +1 -1
  794. package/lib/models/caseview/CaseViewModel.js +16 -54
  795. package/lib/models/caseview/CaseViewModel.js.map +1 -1
  796. package/lib/models/concepts/BusinessScenarioModel.js +10 -44
  797. package/lib/models/concepts/BusinessScenarioModel.js.map +1 -1
  798. package/lib/models/concepts/ConceptDetailModel.js +32 -90
  799. package/lib/models/concepts/ConceptDetailModel.js.map +1 -1
  800. package/lib/models/concepts/ConceptIndexModel.js +12 -42
  801. package/lib/models/concepts/ConceptIndexModel.js.map +1 -1
  802. package/lib/models/concepts/ConceptLinkModel.js +16 -49
  803. package/lib/models/concepts/ConceptLinkModel.js.map +1 -1
  804. package/lib/models/concepts/ConceptRelationCollection.js +6 -25
  805. package/lib/models/concepts/ConceptRelationCollection.js.map +1 -1
  806. package/lib/models/concepts/ConceptRelationModel.js +8 -23
  807. package/lib/models/concepts/ConceptRelationModel.js.map +1 -1
  808. package/lib/models/concepts/ConceptTypeDetailModel.js +11 -26
  809. package/lib/models/concepts/ConceptTypeDetailModel.js.map +1 -1
  810. package/lib/models/concepts/SourceReferenceCollection.js +1 -11
  811. package/lib/models/concepts/SourceReferenceCollection.js.map +1 -1
  812. package/lib/models/concepts/SourceReferenceModel.js +9 -22
  813. package/lib/models/concepts/SourceReferenceModel.js.map +1 -1
  814. package/lib/models/content/ContentIndexModel.js +12 -44
  815. package/lib/models/content/ContentIndexModel.js.map +1 -1
  816. package/lib/models/content/ContentLinkModel.js +19 -61
  817. package/lib/models/content/ContentLinkModel.js.map +1 -1
  818. package/lib/models/content/ContentModel.js +21 -67
  819. package/lib/models/content/ContentModel.js.map +1 -1
  820. package/lib/models/content/ContentTOCModel.js +17 -55
  821. package/lib/models/content/ContentTOCModel.js.map +1 -1
  822. package/lib/models/content/ContentTypeModel.js +7 -18
  823. package/lib/models/content/ContentTypeModel.js.map +1 -1
  824. package/lib/models/content/SectionModel.js +19 -62
  825. package/lib/models/content/SectionModel.js.map +1 -1
  826. package/lib/models/content/SubSectionModel.js +15 -51
  827. package/lib/models/content/SubSectionModel.js.map +1 -1
  828. package/lib/models/contentconfiguration/ContentConfiguration.js +5 -25
  829. package/lib/models/contentconfiguration/ContentConfiguration.js.map +1 -1
  830. package/lib/models/contentconfiguration/ContentConfigurationElements.js +10 -45
  831. package/lib/models/contentconfiguration/ContentConfigurationElements.js.map +1 -1
  832. package/lib/models/contentconfiguration/ContentConfigurationEndResults.js +2 -17
  833. package/lib/models/contentconfiguration/ContentConfigurationEndResults.js.map +1 -1
  834. package/lib/models/contentconfiguration/ContentConfigurationQuestions.js +4 -16
  835. package/lib/models/contentconfiguration/ContentConfigurationQuestions.js.map +1 -1
  836. package/lib/models/contentconfiguration/ContentConfigurationResults.js +12 -37
  837. package/lib/models/contentconfiguration/ContentConfigurationResults.js.map +1 -1
  838. package/lib/models/detail/DetailModel.js +21 -61
  839. package/lib/models/detail/DetailModel.js.map +1 -1
  840. package/lib/models/error/ErrorCollection.js +10 -35
  841. package/lib/models/error/ErrorCollection.js.map +1 -1
  842. package/lib/models/error/ErrorModel.js +6 -17
  843. package/lib/models/error/ErrorModel.js.map +1 -1
  844. package/lib/models/error/ErrorResponse.js +36 -96
  845. package/lib/models/error/ErrorResponse.js.map +1 -1
  846. package/lib/models/filters/AssignmentFilterModel.js +19 -45
  847. package/lib/models/filters/AssignmentFilterModel.js.map +1 -1
  848. package/lib/models/filters/BaseFilterModel.js +24 -60
  849. package/lib/models/filters/BaseFilterModel.js.map +1 -1
  850. package/lib/models/filters/ConceptIndexFilterModel.js +0 -9
  851. package/lib/models/filters/ConceptIndexFilterModel.js.map +1 -1
  852. package/lib/models/filters/FilterCollection.js +11 -55
  853. package/lib/models/filters/FilterCollection.js.map +1 -1
  854. package/lib/models/filters/FilterModel.js +0 -3
  855. package/lib/models/filters/FilterModel.js.map +1 -1
  856. package/lib/models/filters/RangeFilterModel.js +1 -10
  857. package/lib/models/filters/RangeFilterModel.js.map +1 -1
  858. package/lib/models/form/FormModel.js +135 -328
  859. package/lib/models/form/FormModel.js.map +1 -1
  860. package/lib/models/form/FormObjectModel.js +55 -144
  861. package/lib/models/form/FormObjectModel.js.map +1 -1
  862. package/lib/models/grouping/GroupingModel.js +20 -58
  863. package/lib/models/grouping/GroupingModel.js.map +1 -1
  864. package/lib/models/href/Href.js +47 -123
  865. package/lib/models/href/Href.js.map +1 -1
  866. package/lib/models/href/ListHref.js +11 -29
  867. package/lib/models/href/ListHref.js.map +1 -1
  868. package/lib/models/index.js +0 -97
  869. package/lib/models/index.js.map +1 -1
  870. package/lib/models/layouthint/LayoutHintCollection.js +8 -40
  871. package/lib/models/layouthint/LayoutHintCollection.js.map +1 -1
  872. package/lib/models/links/LinkCollection.js +15 -51
  873. package/lib/models/links/LinkCollection.js.map +1 -1
  874. package/lib/models/links/LinkModel.js +20 -62
  875. package/lib/models/links/LinkModel.js.map +1 -1
  876. package/lib/models/links/normalizeLinkJSON.js +5 -21
  877. package/lib/models/links/normalizeLinkJSON.js.map +1 -1
  878. package/lib/models/list/ListDetailModel.js +31 -84
  879. package/lib/models/list/ListDetailModel.js.map +1 -1
  880. package/lib/models/list/ListHeaderModel.js +10 -30
  881. package/lib/models/list/ListHeaderModel.js.map +1 -1
  882. package/lib/models/list/ListItemCollection.js +4 -24
  883. package/lib/models/list/ListItemCollection.js.map +1 -1
  884. package/lib/models/list/ListItemModel.js +7 -29
  885. package/lib/models/list/ListItemModel.js.map +1 -1
  886. package/lib/models/list/ListModel.js +38 -123
  887. package/lib/models/list/ListModel.js.map +1 -1
  888. package/lib/models/lookup/LookupOptionCollection.js +2 -8
  889. package/lib/models/lookup/LookupOptionCollection.js.map +1 -1
  890. package/lib/models/lookup/LookupOptionsModel.js +5 -19
  891. package/lib/models/lookup/LookupOptionsModel.js.map +1 -1
  892. package/lib/models/modelcatalog/ModelCatalogModel.js +4 -17
  893. package/lib/models/modelcatalog/ModelCatalogModel.js.map +1 -1
  894. package/lib/models/paging/PagesizeModel.js +4 -13
  895. package/lib/models/paging/PagesizeModel.js.map +1 -1
  896. package/lib/models/paging/PagingModel.js +10 -26
  897. package/lib/models/paging/PagingModel.js.map +1 -1
  898. package/lib/models/panels/GroupingPanelModel.js +14 -47
  899. package/lib/models/panels/GroupingPanelModel.js.map +1 -1
  900. package/lib/models/parameter/Parameter.js +13 -42
  901. package/lib/models/parameter/Parameter.js.map +1 -1
  902. package/lib/models/process/ProcessStatusSettingsModel.js +9 -29
  903. package/lib/models/process/ProcessStatusSettingsModel.js.map +1 -1
  904. package/lib/models/resolveModel.js +1 -33
  905. package/lib/models/resolveModel.js.map +1 -1
  906. package/lib/models/search/CaseSearchModel.js +3 -12
  907. package/lib/models/search/CaseSearchModel.js.map +1 -1
  908. package/lib/models/sorting/SortOptionModel.js +13 -39
  909. package/lib/models/sorting/SortOptionModel.js.map +1 -1
  910. package/lib/models/sorting/SortingModel.js +8 -35
  911. package/lib/models/sorting/SortingModel.js.map +1 -1
  912. package/lib/models/tab/TabModel.js +14 -48
  913. package/lib/models/tab/TabModel.js.map +1 -1
  914. package/lib/models/taskgroup/TaskGroupCollection.js +0 -4
  915. package/lib/models/taskgroup/TaskGroupCollection.js.map +1 -1
  916. package/lib/models/taskgroup/TaskGroupModel.js +6 -19
  917. package/lib/models/taskgroup/TaskGroupModel.js.map +1 -1
  918. package/lib/models/user/UserModel.js +4 -12
  919. package/lib/models/user/UserModel.js.map +1 -1
  920. package/lib/models/user/UserProfileModel.js +2 -14
  921. package/lib/models/user/UserProfileModel.js.map +1 -1
  922. package/lib/models/user/UserServicesModel.js +11 -30
  923. package/lib/models/user/UserServicesModel.js.map +1 -1
  924. package/lib/modularui/Authenticate.js +20 -66
  925. package/lib/modularui/Authenticate.js.map +1 -1
  926. package/lib/modularui/ModularUIError.js +3 -7
  927. package/lib/modularui/ModularUIError.js.map +1 -1
  928. package/lib/modularui/ModularUIRequest.js +89 -200
  929. package/lib/modularui/ModularUIRequest.js.flow +14 -0
  930. package/lib/modularui/ModularUIRequest.js.map +1 -1
  931. package/lib/modularui/ModularUIResponse.js +13 -34
  932. package/lib/modularui/ModularUIResponse.js.map +1 -1
  933. package/lib/modularui/index.js +0 -4
  934. package/lib/modularui/index.js.map +1 -1
  935. package/lib/react/ErrorBoundary.js +2 -14
  936. package/lib/react/ErrorBoundary.js.map +1 -1
  937. package/lib/react/ErrorBoundaryFallback.js +1 -8
  938. package/lib/react/ErrorBoundaryFallback.js.map +1 -1
  939. package/lib/react/index.js +0 -5
  940. package/lib/react/index.js.map +1 -1
  941. package/lib/react/utils.js +2 -13
  942. package/lib/react/utils.js.map +1 -1
  943. package/lib/react-client/Init.js +0 -8
  944. package/lib/react-client/Init.js.map +1 -1
  945. package/lib/react-client/client.js +16 -49
  946. package/lib/react-client/client.js.map +1 -1
  947. package/lib/react-client/contextPath.js +2 -9
  948. package/lib/react-client/contextPath.js.map +1 -1
  949. package/lib/react-client/index.js +0 -4
  950. package/lib/react-client/index.js.map +1 -1
  951. package/lib/react-client/rehydrate.js +3 -23
  952. package/lib/react-client/rehydrate.js.map +1 -1
  953. package/lib/react-server/contextPath.js +1 -2
  954. package/lib/react-server/contextPath.js.map +1 -1
  955. package/lib/react-server/createSSRComplete.js +2 -16
  956. package/lib/react-server/createSSRComplete.js.map +1 -1
  957. package/lib/react-server/htmlpage.js +25 -16
  958. package/lib/react-server/htmlpage.js.map +1 -1
  959. package/lib/react-server/index.js +0 -12
  960. package/lib/react-server/index.js.map +1 -1
  961. package/lib/react-server/renderSSRComplete.js +3 -16
  962. package/lib/react-server/renderSSRComplete.js.map +1 -1
  963. package/lib/react-server/renderSSRMinimal.js +0 -10
  964. package/lib/react-server/renderSSRMinimal.js.map +1 -1
  965. package/lib/react-server/requestInformation.js +6 -21
  966. package/lib/react-server/requestInformation.js.map +1 -1
  967. package/lib/react-server/serverNoSSR.js +2 -14
  968. package/lib/react-server/serverNoSSR.js.map +1 -1
  969. package/lib/react-server/serverSSR.js +0 -8
  970. package/lib/react-server/serverSSR.js.map +1 -1
  971. package/lib/react-server/serverUtil.js +13 -60
  972. package/lib/react-server/serverUtil.js.map +1 -1
  973. package/lib/react-theme/ThemeProvider.js +0 -6
  974. package/lib/react-theme/ThemeProvider.js.map +1 -1
  975. package/lib/react-theme/createTheme.js +7 -23
  976. package/lib/react-theme/createTheme.js.map +1 -1
  977. package/lib/react-theme/index.js +0 -18
  978. package/lib/react-theme/index.js.map +1 -1
  979. package/lib/react-theme/useTheme.js +0 -3
  980. package/lib/react-theme/useTheme.js.map +1 -1
  981. package/lib/react-theme/utils/background.js +1 -5
  982. package/lib/react-theme/utils/background.js.map +1 -1
  983. package/lib/react-theme/utils/colors.js +2 -12
  984. package/lib/react-theme/utils/colors.js.map +1 -1
  985. package/lib/react-theme/utils/contrast.js +7 -35
  986. package/lib/react-theme/utils/contrast.js.map +1 -1
  987. package/lib/react-theme/utils/corners.js +3 -14
  988. package/lib/react-theme/utils/corners.js.map +1 -1
  989. package/lib/react-theme/utils/spacers.js +6 -30
  990. package/lib/react-theme/utils/spacers.js.map +1 -1
  991. package/lib/react-theme/utils/themeProps.js +7 -35
  992. package/lib/react-theme/utils/themeProps.js.map +1 -1
  993. package/lib/redux/_i18n/actions.js +2 -8
  994. package/lib/redux/_i18n/actions.js.map +1 -1
  995. package/lib/redux/_i18n/index.js +0 -5
  996. package/lib/redux/_i18n/index.js.map +1 -1
  997. package/lib/redux/_i18n/reducer.js +12 -21
  998. package/lib/redux/_i18n/reducer.js.map +1 -1
  999. package/lib/redux/_modularui/actions.js +36 -69
  1000. package/lib/redux/_modularui/actions.js.map +1 -1
  1001. package/lib/redux/_modularui/connector.js +20 -28
  1002. package/lib/redux/_modularui/connector.js.map +1 -1
  1003. package/lib/redux/_modularui/index.js +0 -14
  1004. package/lib/redux/_modularui/index.js.map +1 -1
  1005. package/lib/redux/_modularui/middleware.js +8 -28
  1006. package/lib/redux/_modularui/middleware.js.map +1 -1
  1007. package/lib/redux/_modularui/modularuiUtils.js +10 -36
  1008. package/lib/redux/_modularui/modularuiUtils.js.map +1 -1
  1009. package/lib/redux/_modularui/reducer.js +19 -45
  1010. package/lib/redux/_modularui/reducer.js.map +1 -1
  1011. package/lib/redux/_modularui/selectors.js +20 -97
  1012. package/lib/redux/_modularui/selectors.js.map +1 -1
  1013. package/lib/redux/_modularui/withModularUI.js +2 -11
  1014. package/lib/redux/_modularui/withModularUI.js.map +1 -1
  1015. package/lib/redux/_router/actions.js +5 -16
  1016. package/lib/redux/_router/actions.js.map +1 -1
  1017. package/lib/redux/_router/connectors.js +10 -15
  1018. package/lib/redux/_router/connectors.js.map +1 -1
  1019. package/lib/redux/_router/index.js +0 -9
  1020. package/lib/redux/_router/index.js.map +1 -1
  1021. package/lib/redux/_router/middleware.js +0 -2
  1022. package/lib/redux/_router/middleware.js.map +1 -1
  1023. package/lib/redux/_router/reducer.js +2 -4
  1024. package/lib/redux/_router/reducer.js.map +1 -1
  1025. package/lib/redux/actions/Application.js +1 -8
  1026. package/lib/redux/actions/Application.js.map +1 -1
  1027. package/lib/redux/actions/Authorization.js +6 -25
  1028. package/lib/redux/actions/Authorization.js.map +1 -1
  1029. package/lib/redux/actions/Error.js +4 -24
  1030. package/lib/redux/actions/Error.js.map +1 -1
  1031. package/lib/redux/actions/Form.js +1 -12
  1032. package/lib/redux/actions/Form.js.map +1 -1
  1033. package/lib/redux/actions/FormAttributeSet.js +0 -14
  1034. package/lib/redux/actions/FormAttributeSet.js.map +1 -1
  1035. package/lib/redux/actions/FormAttributeSetRepeatable.js +2 -8
  1036. package/lib/redux/actions/FormAttributeSetRepeatable.js.map +1 -1
  1037. package/lib/redux/actions/FormAutosave.js +3 -12
  1038. package/lib/redux/actions/FormAutosave.js.map +1 -1
  1039. package/lib/redux/actions/FormAutosubmit.js +0 -6
  1040. package/lib/redux/actions/FormAutosubmit.js.map +1 -1
  1041. package/lib/redux/actions/FormValidations.js +2 -13
  1042. package/lib/redux/actions/FormValidations.js.map +1 -1
  1043. package/lib/redux/actions/Modals.js +1 -4
  1044. package/lib/redux/actions/Modals.js.map +1 -1
  1045. package/lib/redux/actions/Notification.js +4 -19
  1046. package/lib/redux/actions/Notification.js.map +1 -1
  1047. package/lib/redux/actions/Preferences.js +13 -44
  1048. package/lib/redux/actions/Preferences.js.map +1 -1
  1049. package/lib/redux/actions/ProgressIndicator.js +3 -11
  1050. package/lib/redux/actions/ProgressIndicator.js.map +1 -1
  1051. package/lib/redux/actions/SignIn.js +5 -28
  1052. package/lib/redux/actions/SignIn.js.map +1 -1
  1053. package/lib/redux/actions/SignOut.js +1 -9
  1054. package/lib/redux/actions/SignOut.js.map +1 -1
  1055. package/lib/redux/actions/index.js +0 -31
  1056. package/lib/redux/actions/index.js.map +1 -1
  1057. package/lib/redux/connectors/Application.js +0 -2
  1058. package/lib/redux/connectors/Application.js.map +1 -1
  1059. package/lib/redux/connectors/Breadcrumb.js +1 -4
  1060. package/lib/redux/connectors/Breadcrumb.js.map +1 -1
  1061. package/lib/redux/connectors/CaseView.js +0 -2
  1062. package/lib/redux/connectors/CaseView.js.map +1 -1
  1063. package/lib/redux/connectors/ConceptDetail.js +1 -7
  1064. package/lib/redux/connectors/ConceptDetail.js.map +1 -1
  1065. package/lib/redux/connectors/ContentBrowser.js +0 -2
  1066. package/lib/redux/connectors/ContentBrowser.js.map +1 -1
  1067. package/lib/redux/connectors/ContentDetail.js +1 -7
  1068. package/lib/redux/connectors/ContentDetail.js.map +1 -1
  1069. package/lib/redux/connectors/ContentDetailSection.js +1 -8
  1070. package/lib/redux/connectors/ContentDetailSection.js.map +1 -1
  1071. package/lib/redux/connectors/Form.js +2 -19
  1072. package/lib/redux/connectors/Form.js.map +1 -1
  1073. package/lib/redux/connectors/FormAttributeSet.js +1 -5
  1074. package/lib/redux/connectors/FormAttributeSet.js.map +1 -1
  1075. package/lib/redux/connectors/ListDetail.js +0 -3
  1076. package/lib/redux/connectors/ListDetail.js.map +1 -1
  1077. package/lib/redux/connectors/Modal.js +1 -7
  1078. package/lib/redux/connectors/Modal.js.map +1 -1
  1079. package/lib/redux/connectors/ModelCatalog.js +0 -2
  1080. package/lib/redux/connectors/ModelCatalog.js.map +1 -1
  1081. package/lib/redux/connectors/Notification.js +1 -4
  1082. package/lib/redux/connectors/Notification.js.map +1 -1
  1083. package/lib/redux/connectors/PanelRenderer.js +0 -7
  1084. package/lib/redux/connectors/PanelRenderer.js.map +1 -1
  1085. package/lib/redux/connectors/Preferences.js +1 -5
  1086. package/lib/redux/connectors/Preferences.js.map +1 -1
  1087. package/lib/redux/connectors/Progress.js +1 -4
  1088. package/lib/redux/connectors/Progress.js.map +1 -1
  1089. package/lib/redux/connectors/ProgressIndicator.js +1 -3
  1090. package/lib/redux/connectors/ProgressIndicator.js.map +1 -1
  1091. package/lib/redux/connectors/QuickSearch.js +1 -7
  1092. package/lib/redux/connectors/QuickSearch.js.map +1 -1
  1093. package/lib/redux/connectors/SignIn.js +2 -8
  1094. package/lib/redux/connectors/SignIn.js.map +1 -1
  1095. package/lib/redux/connectors/SignOut.js +3 -8
  1096. package/lib/redux/connectors/SignOut.js.map +1 -1
  1097. package/lib/redux/connectors/Tab.js +0 -2
  1098. package/lib/redux/connectors/Tab.js.map +1 -1
  1099. package/lib/redux/connectors/index.js +0 -21
  1100. package/lib/redux/connectors/index.js.map +1 -1
  1101. package/lib/redux/index.js +0 -17
  1102. package/lib/redux/index.js.map +1 -1
  1103. package/lib/redux/reducers/AuthReducer.js +12 -14
  1104. package/lib/redux/reducers/AuthReducer.js.map +1 -1
  1105. package/lib/redux/reducers/ErrorReducer.js +2 -4
  1106. package/lib/redux/reducers/ErrorReducer.js.map +1 -1
  1107. package/lib/redux/reducers/ModalsReducer.js +11 -18
  1108. package/lib/redux/reducers/ModalsReducer.js.map +1 -1
  1109. package/lib/redux/reducers/NotificationReducer.js +6 -8
  1110. package/lib/redux/reducers/NotificationReducer.js.map +1 -1
  1111. package/lib/redux/reducers/PreferencesReducer.js +6 -7
  1112. package/lib/redux/reducers/PreferencesReducer.js.map +1 -1
  1113. package/lib/redux/reducers/ProgressIndicatorReducer.js +10 -15
  1114. package/lib/redux/reducers/ProgressIndicatorReducer.js.map +1 -1
  1115. package/lib/redux/reducers/createReducer.js +0 -11
  1116. package/lib/redux/reducers/createReducer.js.map +1 -1
  1117. package/lib/redux/reducers/index.js +0 -10
  1118. package/lib/redux/reducers/index.js.map +1 -1
  1119. package/lib/redux/selectors/i18n.js +3 -7
  1120. package/lib/redux/selectors/i18n.js.map +1 -1
  1121. package/lib/redux/selectors/index.js +0 -3
  1122. package/lib/redux/selectors/index.js.map +1 -1
  1123. package/lib/redux/store/beforeRenderHooks.js +0 -2
  1124. package/lib/redux/store/beforeRenderHooks.js.map +1 -1
  1125. package/lib/redux/store/configureStore.js +2 -13
  1126. package/lib/redux/store/configureStore.js.map +1 -1
  1127. package/lib/utils/browser/Cache.js +16 -49
  1128. package/lib/utils/browser/Cache.js.map +1 -1
  1129. package/lib/utils/browser/Cookies.js +3 -14
  1130. package/lib/utils/browser/Cookies.js.map +1 -1
  1131. package/lib/utils/datetime/DateTimeUtil.js +52 -115
  1132. package/lib/utils/datetime/DateTimeUtil.js.map +1 -1
  1133. package/lib/utils/fetch/serverFetch.js +2 -13
  1134. package/lib/utils/fetch/serverFetch.js.map +1 -1
  1135. package/lib/utils/fetch/universalFetch.js +6 -25
  1136. package/lib/utils/fetch/universalFetch.js.map +1 -1
  1137. package/lib/utils/fetch/xhr.js +42 -111
  1138. package/lib/utils/fetch/xhr.js.map +1 -1
  1139. package/lib/utils/helpers/checkResource.js +5 -11
  1140. package/lib/utils/helpers/checkResource.js.map +1 -1
  1141. package/lib/utils/helpers/createHash.js +1 -6
  1142. package/lib/utils/helpers/createHash.js.map +1 -1
  1143. package/lib/utils/helpers/createUUID.js +0 -2
  1144. package/lib/utils/helpers/createUUID.js.map +1 -1
  1145. package/lib/utils/helpers/objects.js +3 -15
  1146. package/lib/utils/helpers/objects.js.map +1 -1
  1147. package/lib/utils/helpers/sanitizeHtml.js +6 -13
  1148. package/lib/utils/helpers/sanitizeHtml.js.map +1 -1
  1149. package/lib/utils/helpers/text.js +0 -4
  1150. package/lib/utils/helpers/text.js.map +1 -1
  1151. package/lib/utils/index.js +0 -25
  1152. package/lib/utils/index.js.map +1 -1
  1153. package/lib/utils/number/DecimalFormat.js +43 -121
  1154. package/lib/utils/number/DecimalFormat.js.map +1 -1
  1155. package/lib/utils/number/formatValue.js +3 -22
  1156. package/lib/utils/number/formatValue.js.map +1 -1
  1157. package/lib/utils/number/parseNumbers.js +3 -19
  1158. package/lib/utils/number/parseNumbers.js.map +1 -1
  1159. package/package.json +29 -29
  1160. package/src/modularui/ModularUIRequest.js +14 -0
@@ -1 +1 @@
1
- {"version":3,"file":"ChoiceAttributeModel.js","names":["ChoiceAttributeModel","AttributeModel","constructor","attribute","attributeContributions","_referenceDate","getData","DateUtil","now","_options","ChoiceAttributeOptionCollection","create","referenceDate","layouthint","has","SORT_OPTIONS","sortOptions","isApplicableModel","contributions","type","optionMode","getContribution","hasLookupLink","lookupLink","lookupListLink","getInitialChildModelLinks","links","hasContentConfiguration","hasContentFromData","conceptLink","push","options","setChildModels","models","conceptLinkHref","href","concept","model","selfhref","equalsWithParameters","getLinkByKey","lookupListLabel","lookupList","label","date","selected","option","code","readonlyvalue","join","initvalue","Array","isArray","_initvalue","length","getValue","hasValue","getInputValue","toggleOption","disableOption","enableOption","isMultiple","deselectAll","select","inputvalue","deselect","addOption","opt","choicetype","hint","multiplechoice","isTree","some","reset","mergeAttribute","oldAttribute","readonly","mergeOptions","isValid","update","value","updateLastModification","values","split","forEach","val","ChoiceAttributeOptionModel","equals","add","toString","_hasContentConfiguration","contentConfiguration","content","optionElements","optionElementConfig","optionElement","contentElement","RENDER_SECTION_LABEL","ContentConfigurationElements","placeholder","addServerError","error","id","message","properties","ANSWER_OPTION_KEY","optionKey","foundOption","getContentConfiguredLabel","_errorCollection","readonlyWidth","ATTRIBUTE_WIDTH","SMALL","MEDIUM"],"sources":["../../../src/models/attributes/ChoiceAttributeModel.js"],"sourcesContent":["// @flow\nimport { has } from \"../../utils/helpers/objects\";\nimport { DateUtil } from \"../../utils/datetime/DateTimeUtil\";\n\nimport AttributeModel from \"./AttributeModel\";\nimport ChoiceAttributeOptionCollection from \"./ChoiceAttributeOptionCollection\";\nimport ChoiceAttributeOptionModel from \"./ChoiceAttributeOptionModel\";\nimport ContentConfigurationElements from \"../contentconfiguration/ContentConfigurationElements\";\n\nimport {\n RENDER_SECTION_LABEL,\n SORT_OPTIONS,\n} from \"../../constants/LayoutHints\";\nimport { ATTRIBUTE_WIDTH } from \"../../constants\";\n\nimport type { ModularUIModel, AttributeType, FormErrorAnchor } from \"../types\";\nimport type LinkModel from \"../links/LinkModel\";\n\n/**\n * Model for a choice attribute\n */\nexport default class ChoiceAttributeModel extends AttributeModel {\n _referenceDate: ISO_DATE;\n _options: ChoiceAttributeOptionCollection;\n _hasContentConfiguration: boolean;\n\n /**\n * Constructs a choice attribute\n */\n constructor(attribute: Object, attributeContributions: Object) {\n super(attribute, attributeContributions);\n\n this._referenceDate = this.getData(\"referenceDate\", DateUtil.now());\n this._options = ChoiceAttributeOptionCollection.create(\n attribute,\n attributeContributions,\n this.referenceDate\n );\n\n if (this.layouthint.has(SORT_OPTIONS)) {\n this._options.sortOptions = true;\n }\n }\n\n /**\n */\n static isApplicableModel(contributions: Object): boolean {\n return (\n contributions.type !== \"composite\" &&\n contributions.type !== \"boolean\" &&\n (contributions.type === \"choice\" ||\n contributions.type === \"array\" ||\n has(contributions, \"enumerated\") ||\n has(contributions, \"options\"))\n );\n }\n\n /**\n */\n get type(): string {\n const optionMode = this.getContribution(\"optionMode\", \"\");\n const hasLookupLink = this.lookupLink || this.lookupListLink;\n\n if (\n optionMode === \"lookup\" ||\n (optionMode === \"dynamicWithThreshold\" && hasLookupLink)\n ) {\n return \"lookup\";\n }\n\n return \"choice\";\n }\n\n /**\n */\n getInitialChildModelLinks(): Array<LinkModel> {\n const links = [];\n\n if (this.hasContentConfiguration) {\n if (!this.hasContentFromData && this.conceptLink) {\n links.push(this.conceptLink);\n }\n\n links.push(...this.options.getInitialChildModelLinks());\n }\n\n return links;\n }\n\n /**\n */\n setChildModels(models: Array<ModularUIModel>) {\n const conceptLinkHref = this.conceptLink?.href;\n if (conceptLinkHref) {\n this.concept = models.find(\n (model) =>\n model.type === \"ConceptDetail\" &&\n model.selfhref.equalsWithParameters(conceptLinkHref)\n );\n }\n\n this.options.setChildModels(models);\n }\n\n /**\n * Retrieve lookup service link\n */\n get lookupLink(): LinkModel | null {\n return this.links.getLinkByKey(\"lookupOptions\");\n }\n\n /**\n * Retrieve lookup service as list link\n */\n get lookupListLink(): LinkModel | null {\n return this.links.getLinkByKey(\"lookupList\");\n }\n\n /**\n */\n get lookupListLabel(): string {\n return this.contributions.lookupList?.label ?? \"\";\n }\n\n /**\n * Retrieve reference date of attribute which can be used as entryDate for content\n */\n get referenceDate(): ISO_DATE {\n return this._referenceDate;\n }\n\n /**\n * Set reference date for concepts and content\n */\n set referenceDate(date: string) {\n this._referenceDate = date;\n\n this.options.referenceDate = date;\n }\n\n /**\n * Retrieve available choice options\n */\n get options(): ChoiceAttributeOptionCollection {\n return this._options;\n }\n\n /**\n * Getting all enabled options\n */\n get selected(): Array<string> {\n // $FlowFixMe[incompatible-call]\n return this.options.selected.map<string, ChoiceAttributeOptionModel>(\n (option: ChoiceAttributeOptionModel) => option.code\n );\n }\n\n /**\n * Flatten options and filter out the options that are not selected\n */\n get readonlyvalue(): string {\n return this.options.selected.map((option) => option.label).join(\", \");\n }\n\n /**\n */\n get initvalue(): any {\n if (Array.isArray(this._initvalue) && this._initvalue.length === 0) {\n return null;\n }\n\n return this._initvalue;\n }\n\n /**\n * Retrieve list of selected options, joined with comma\n */\n getValue(): string | null {\n return this.options.selected.length > 0\n ? this.options.selected.map((option) => option.code).join(\",\")\n : null;\n }\n\n /**\n */\n hasValue(): boolean {\n return this.options.selected.length > 0;\n }\n\n /**\n * Get input value of attribute\n */\n getInputValue(): string {\n return this.selected.join(\",\");\n }\n\n /**\n * Setting an option selected or unselected based on the current state\n */\n toggleOption(code: string) {\n if (this.selected.includes(code)) {\n this.disableOption(code);\n } else {\n this.enableOption(code);\n }\n }\n\n /**\n * Enable a option\n */\n enableOption(code: string) {\n if (!this.isMultiple) {\n this.options.deselectAll();\n }\n\n this.options.select(code);\n this.inputvalue = this.getInputValue();\n }\n\n /**\n * Disable a option\n */\n disableOption(code: string) {\n this.options.deselect(code);\n this.inputvalue = this.getInputValue();\n }\n\n /**\n * Add a new option to the collection of lookup options\n */\n addOption(option: Object) {\n if (!this.isMultiple) {\n this.options.deselectAll();\n }\n\n if (this.options.find((opt) => opt.code === option.code) === null) {\n this.options.addOption(option.code, option);\n }\n }\n\n /**\n * Getting the type of choice filter. For instance checkbox, radiobutton, combobox.\n */\n get choicetype():\n | \"checkbox\"\n | \"radiobutton\"\n | \"combobox\"\n | \"list\"\n | \"listview\"\n | \"table\"\n | \"longlist\"\n | \"toggle\" {\n return (\n [\n \"checkbox\",\n \"radiobutton\",\n \"combobox\",\n \"list\",\n \"listview\",\n \"table\",\n \"longlist\",\n \"toggle\",\n ].find((hint) => this.layouthint.has(hint)) || \"checkbox\"\n );\n }\n\n /**\n * Can multiple options be selected\n */\n get isMultiple(): boolean {\n return this.contributions.multiplechoice || this.choicetype === \"checkbox\";\n }\n\n /**\n * Check if options need to be rendered as tree\n */\n get isTree(): boolean {\n return (\n has(this.contributions, \"options\") &&\n this.contributions.options.some((option) => has(option, \"children\"))\n );\n }\n\n /**\n * Reset choice attribute to unselected list\n */\n reset() {\n this.options.deselectAll();\n }\n\n /**\n */\n mergeAttribute(oldAttribute: AttributeType) {\n // when attribute is readonly, don't merge the options no modifications necessary\n if (!this.readonly && oldAttribute instanceof ChoiceAttributeModel) {\n this.concept = oldAttribute.concept;\n this.options.mergeOptions(oldAttribute.options, this.type === \"lookup\");\n this.options.deselectAll();\n\n if (oldAttribute.isValid && oldAttribute.inputvalue !== null) {\n this.update(oldAttribute.inputvalue);\n }\n }\n }\n\n /**\n * Update attribute by name and value\n */\n update(value: any): ChoiceAttributeModel {\n if (this.readonly) {\n return this;\n }\n\n this.updateLastModification();\n\n let values;\n\n if (Array.isArray(value)) {\n values = value;\n } else if (typeof value === \"string\" && this.isMultiple) {\n values = value.split(\",\");\n } else {\n values = [value];\n }\n values.forEach((val) => {\n if (val instanceof ChoiceAttributeOptionModel) {\n if (!this.options.some((option) => option.equals(val))) {\n this.options.add(val);\n }\n\n this.toggleOption(val.code);\n } else if (\n typeof val === \"string\" &&\n this.options.some((option) => option.code.toString() === val)\n ) {\n this.toggleOption(val);\n }\n });\n\n return this;\n }\n\n /**\n */\n set hasContentConfiguration(hasContentConfiguration: boolean) {\n this._hasContentConfiguration =\n this.contentConfiguration !== null || hasContentConfiguration;\n }\n\n /**\n */\n get hasContentConfiguration(): boolean {\n return this._hasContentConfiguration;\n }\n\n /**\n * Get content configuration configured on the attribute.\n * Only applicable for taxonomy element and knowledge codemaps,\n * content configuration for instrument questions is available on the form object\n */\n get contentConfiguration(): ContentConfigurationElements | null {\n if (\n !this.contributions.content ||\n !this.contributions.content.optionElements\n ) {\n return null;\n }\n\n // Add RENDER_SECTION_LABEL to all content configuration to make sure the label of a section is always rendered on taxonomy and knowlege codemaps\n const optionElementConfig = this.contributions.content.optionElements.map(\n (optionElement) => {\n if (\"contentElement\" in optionElement) {\n return {\n contentElement: {\n ...optionElement.contentElement,\n layouthint: [RENDER_SECTION_LABEL],\n },\n };\n }\n\n return optionElement;\n }\n );\n\n return new ContentConfigurationElements(optionElementConfig);\n }\n\n /**\n * Get placeholder text\n */\n get placeholder(): string {\n return this.getContribution(\"placeholder\", \"\");\n }\n\n /**\n * Registers an error that was received from a server response\n */\n addServerError(error: FormErrorAnchor) {\n const { id, message, properties, layouthint } = error;\n\n const ANSWER_OPTION_KEY = \"answer-option-key\";\n\n if (properties && has(properties, ANSWER_OPTION_KEY)) {\n const optionKey = properties[ANSWER_OPTION_KEY];\n const foundOption = this.options.find(\n (option) => option.code === optionKey\n );\n if (foundOption) {\n properties[ANSWER_OPTION_KEY] = foundOption.getContentConfiguredLabel(\n this.contentConfiguration\n );\n }\n }\n\n this._errorCollection.addServerError(id, message, properties, layouthint);\n }\n\n /**\n */\n get readonlyWidth(): $Keys<typeof ATTRIBUTE_WIDTH> {\n if (this.type === \"lookup\") {\n return ATTRIBUTE_WIDTH.SMALL;\n }\n\n return ATTRIBUTE_WIDTH.MEDIUM;\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;AACA;;AACA;;AAEA;;AACA;;AACA;;AACA;;AAEA;;AAIA;;AAKA;AACA;AACA;AACe,MAAMA,oBAAN,SAAmCC,uBAAnC,CAAkD;EAK/D;AACF;AACA;EACEC,WAAW,CAACC,SAAD,EAAoBC,sBAApB,EAAoD;IAC7D,MAAMD,SAAN,EAAiBC,sBAAjB;IAD6D;IAAA;IAAA;IAG7D,KAAKC,cAAL,GAAsB,KAAKC,OAAL,CAAa,eAAb,EAA8BC,sBAAA,CAASC,GAAT,EAA9B,CAAtB;IACA,KAAKC,QAAL,GAAgBC,wCAAA,CAAgCC,MAAhC,CACdR,SADc,EAEdC,sBAFc,EAGd,KAAKQ,aAHS,CAAhB;;IAMA,IAAI,KAAKC,UAAL,CAAgBC,GAAhB,CAAoBC,yBAApB,CAAJ,EAAuC;MACrC,KAAKN,QAAL,CAAcO,WAAd,GAA4B,IAA5B;IACD;EACF;EAED;AACF;;;EAC0B,OAAjBC,iBAAiB,CAACC,aAAD,EAAiC;IACvD,OACEA,aAAa,CAACC,IAAd,KAAuB,WAAvB,IACAD,aAAa,CAACC,IAAd,KAAuB,SADvB,KAECD,aAAa,CAACC,IAAd,KAAuB,QAAvB,IACCD,aAAa,CAACC,IAAd,KAAuB,OADxB,IAEC,IAAAL,YAAA,EAAII,aAAJ,EAAmB,YAAnB,CAFD,IAGC,IAAAJ,YAAA,EAAII,aAAJ,EAAmB,SAAnB,CALF,CADF;EAQD;EAED;AACF;;;EACU,IAAJC,IAAI,GAAW;IACjB,MAAMC,UAAU,GAAG,KAAKC,eAAL,CAAqB,YAArB,EAAmC,EAAnC,CAAnB;IACA,MAAMC,aAAa,GAAG,KAAKC,UAAL,IAAmB,KAAKC,cAA9C;;IAEA,IACEJ,UAAU,KAAK,QAAf,IACCA,UAAU,KAAK,sBAAf,IAAyCE,aAF5C,EAGE;MACA,OAAO,QAAP;IACD;;IAED,OAAO,QAAP;EACD;EAED;AACF;;;EACEG,yBAAyB,GAAqB;IAC5C,MAAMC,KAAK,GAAG,EAAd;;IAEA,IAAI,KAAKC,uBAAT,EAAkC;MAChC,IAAI,CAAC,KAAKC,kBAAN,IAA4B,KAAKC,WAArC,EAAkD;QAChDH,KAAK,CAACI,IAAN,CAAW,KAAKD,WAAhB;MACD;;MAEDH,KAAK,CAACI,IAAN,CAAW,GAAG,KAAKC,OAAL,CAAaN,yBAAb,EAAd;IACD;;IAED,OAAOC,KAAP;EACD;EAED;AACF;;;EACEM,cAAc,CAACC,MAAD,EAAgC;IAAA;;IAC5C,MAAMC,eAAe,wBAAG,KAAKL,WAAR,sDAAG,kBAAkBM,IAA1C;;IACA,IAAID,eAAJ,EAAqB;MACnB,KAAKE,OAAL,GAAe,mBAAAH,MAAM,MAAN,CAAAA,MAAM,EAClBI,KAAD,IACEA,KAAK,CAAClB,IAAN,KAAe,eAAf,IACAkB,KAAK,CAACC,QAAN,CAAeC,oBAAf,CAAoCL,eAApC,CAHiB,CAArB;IAKD;;IAED,KAAKH,OAAL,CAAaC,cAAb,CAA4BC,MAA5B;EACD;EAED;AACF;AACA;;;EACgB,IAAVV,UAAU,GAAqB;IACjC,OAAO,KAAKG,KAAL,CAAWc,YAAX,CAAwB,eAAxB,CAAP;EACD;EAED;AACF;AACA;;;EACoB,IAAdhB,cAAc,GAAqB;IACrC,OAAO,KAAKE,KAAL,CAAWc,YAAX,CAAwB,YAAxB,CAAP;EACD;EAED;AACF;;;EACqB,IAAfC,eAAe,GAAW;IAAA;;IAC5B,0DAAO,KAAKvB,aAAL,CAAmBwB,UAA1B,2DAAO,uBAA+BC,KAAtC,yEAA+C,EAA/C;EACD;EAED;AACF;AACA;;;EACmB,IAAb/B,aAAa,GAAa;IAC5B,OAAO,KAAKP,cAAZ;EACD;EAED;AACF;AACA;;;EACmB,IAAbO,aAAa,CAACgC,IAAD,EAAe;IAC9B,KAAKvC,cAAL,GAAsBuC,IAAtB;IAEA,KAAKb,OAAL,CAAanB,aAAb,GAA6BgC,IAA7B;EACD;EAED;AACF;AACA;;;EACa,IAAPb,OAAO,GAAoC;IAC7C,OAAO,KAAKtB,QAAZ;EACD;EAED;AACF;AACA;;;EACc,IAARoC,QAAQ,GAAkB;IAAA;;IAC5B;IACA,OAAO,kCAAKd,OAAL,CAAac,QAAb,iBACJC,MAAD,IAAwCA,MAAM,CAACC,IAD1C,CAAP;EAGD;EAED;AACF;AACA;;;EACmB,IAAbC,aAAa,GAAW;IAAA;;IAC1B,OAAO,mCAAKjB,OAAL,CAAac,QAAb,kBAA2BC,MAAD,IAAYA,MAAM,CAACH,KAA7C,EAAoDM,IAApD,CAAyD,IAAzD,CAAP;EACD;EAED;AACF;;;EACe,IAATC,SAAS,GAAQ;IACnB,IAAIC,KAAK,CAACC,OAAN,CAAc,KAAKC,UAAnB,KAAkC,KAAKA,UAAL,CAAgBC,MAAhB,KAA2B,CAAjE,EAAoE;MAClE,OAAO,IAAP;IACD;;IAED,OAAO,KAAKD,UAAZ;EACD;EAED;AACF;AACA;;;EACEE,QAAQ,GAAkB;IAAA;;IACxB,OAAO,KAAKxB,OAAL,CAAac,QAAb,CAAsBS,MAAtB,GAA+B,CAA/B,GACH,mCAAKvB,OAAL,CAAac,QAAb,kBAA2BC,MAAD,IAAYA,MAAM,CAACC,IAA7C,EAAmDE,IAAnD,CAAwD,GAAxD,CADG,GAEH,IAFJ;EAGD;EAED;AACF;;;EACEO,QAAQ,GAAY;IAClB,OAAO,KAAKzB,OAAL,CAAac,QAAb,CAAsBS,MAAtB,GAA+B,CAAtC;EACD;EAED;AACF;AACA;;;EACEG,aAAa,GAAW;IACtB,OAAO,KAAKZ,QAAL,CAAcI,IAAd,CAAmB,GAAnB,CAAP;EACD;EAED;AACF;AACA;;;EACES,YAAY,CAACX,IAAD,EAAe;IAAA;;IACzB,IAAI,wCAAKF,QAAL,kBAAuBE,IAAvB,CAAJ,EAAkC;MAChC,KAAKY,aAAL,CAAmBZ,IAAnB;IACD,CAFD,MAEO;MACL,KAAKa,YAAL,CAAkBb,IAAlB;IACD;EACF;EAED;AACF;AACA;;;EACEa,YAAY,CAACb,IAAD,EAAe;IACzB,IAAI,CAAC,KAAKc,UAAV,EAAsB;MACpB,KAAK9B,OAAL,CAAa+B,WAAb;IACD;;IAED,KAAK/B,OAAL,CAAagC,MAAb,CAAoBhB,IAApB;IACA,KAAKiB,UAAL,GAAkB,KAAKP,aAAL,EAAlB;EACD;EAED;AACF;AACA;;;EACEE,aAAa,CAACZ,IAAD,EAAe;IAC1B,KAAKhB,OAAL,CAAakC,QAAb,CAAsBlB,IAAtB;IACA,KAAKiB,UAAL,GAAkB,KAAKP,aAAL,EAAlB;EACD;EAED;AACF;AACA;;;EACES,SAAS,CAACpB,MAAD,EAAiB;IAAA;;IACxB,IAAI,CAAC,KAAKe,UAAV,EAAsB;MACpB,KAAK9B,OAAL,CAAa+B,WAAb;IACD;;IAED,IAAI,oCAAK/B,OAAL,kBAAmBoC,GAAD,IAASA,GAAG,CAACpB,IAAJ,KAAaD,MAAM,CAACC,IAA/C,MAAyD,IAA7D,EAAmE;MACjE,KAAKhB,OAAL,CAAamC,SAAb,CAAuBpB,MAAM,CAACC,IAA9B,EAAoCD,MAApC;IACD;EACF;EAED;AACF;AACA;;;EACgB,IAAVsB,UAAU,GAQD;IAAA;;IACX,OACE,gCACE,UADF,EAEE,aAFF,EAGE,UAHF,EAIE,MAJF,EAKE,UALF,EAME,OANF,EAOE,UAPF,EAQE,QARF,mBASQC,IAAD,IAAU,KAAKxD,UAAL,CAAgBC,GAAhB,CAAoBuD,IAApB,CATjB,KAS+C,UAVjD;EAYD;EAED;AACF;AACA;;;EACgB,IAAVR,UAAU,GAAY;IACxB,OAAO,KAAK3C,aAAL,CAAmBoD,cAAnB,IAAqC,KAAKF,UAAL,KAAoB,UAAhE;EACD;EAED;AACF;AACA;;;EACY,IAANG,MAAM,GAAY;IACpB,OACE,IAAAzD,YAAA,EAAI,KAAKI,aAAT,EAAwB,SAAxB,KACA,KAAKA,aAAL,CAAmBa,OAAnB,CAA2ByC,IAA3B,CAAiC1B,MAAD,IAAY,IAAAhC,YAAA,EAAIgC,MAAJ,EAAY,UAAZ,CAA5C,CAFF;EAID;EAED;AACF;AACA;;;EACE2B,KAAK,GAAG;IACN,KAAK1C,OAAL,CAAa+B,WAAb;EACD;EAED;AACF;;;EACEY,cAAc,CAACC,YAAD,EAA8B;IAC1C;IACA,IAAI,CAAC,KAAKC,QAAN,IAAkBD,YAAY,YAAY3E,oBAA9C,EAAoE;MAClE,KAAKoC,OAAL,GAAeuC,YAAY,CAACvC,OAA5B;MACA,KAAKL,OAAL,CAAa8C,YAAb,CAA0BF,YAAY,CAAC5C,OAAvC,EAAgD,KAAKZ,IAAL,KAAc,QAA9D;MACA,KAAKY,OAAL,CAAa+B,WAAb;;MAEA,IAAIa,YAAY,CAACG,OAAb,IAAwBH,YAAY,CAACX,UAAb,KAA4B,IAAxD,EAA8D;QAC5D,KAAKe,MAAL,CAAYJ,YAAY,CAACX,UAAzB;MACD;IACF;EACF;EAED;AACF;AACA;;;EACEe,MAAM,CAACC,KAAD,EAAmC;IACvC,IAAI,KAAKJ,QAAT,EAAmB;MACjB,OAAO,IAAP;IACD;;IAED,KAAKK,sBAAL;IAEA,IAAIC,MAAJ;;IAEA,IAAI/B,KAAK,CAACC,OAAN,CAAc4B,KAAd,CAAJ,EAA0B;MACxBE,MAAM,GAAGF,KAAT;IACD,CAFD,MAEO,IAAI,OAAOA,KAAP,KAAiB,QAAjB,IAA6B,KAAKnB,UAAtC,EAAkD;MACvDqB,MAAM,GAAGF,KAAK,CAACG,KAAN,CAAY,GAAZ,CAAT;IACD,CAFM,MAEA;MACLD,MAAM,GAAG,CAACF,KAAD,CAAT;IACD;;IACDE,MAAM,CAACE,OAAP,CAAgBC,GAAD,IAAS;MACtB,IAAIA,GAAG,YAAYC,mCAAnB,EAA+C;QAC7C,IAAI,CAAC,KAAKvD,OAAL,CAAayC,IAAb,CAAmB1B,MAAD,IAAYA,MAAM,CAACyC,MAAP,CAAcF,GAAd,CAA9B,CAAL,EAAwD;UACtD,KAAKtD,OAAL,CAAayD,GAAb,CAAiBH,GAAjB;QACD;;QAED,KAAK3B,YAAL,CAAkB2B,GAAG,CAACtC,IAAtB;MACD,CAND,MAMO,IACL,OAAOsC,GAAP,KAAe,QAAf,IACA,KAAKtD,OAAL,CAAayC,IAAb,CAAmB1B,MAAD,IAAYA,MAAM,CAACC,IAAP,CAAY0C,QAAZ,OAA2BJ,GAAzD,CAFK,EAGL;QACA,KAAK3B,YAAL,CAAkB2B,GAAlB;MACD;IACF,CAbD;IAeA,OAAO,IAAP;EACD;EAED;AACF;;;EAC6B,IAAvB1D,uBAAuB,CAACA,uBAAD,EAAmC;IAC5D,KAAK+D,wBAAL,GACE,KAAKC,oBAAL,KAA8B,IAA9B,IAAsChE,uBADxC;EAED;EAED;AACF;;;EAC6B,IAAvBA,uBAAuB,GAAY;IACrC,OAAO,KAAK+D,wBAAZ;EACD;EAED;AACF;AACA;AACA;AACA;;;EAC0B,IAApBC,oBAAoB,GAAwC;IAAA;;IAC9D,IACE,CAAC,KAAKzE,aAAL,CAAmB0E,OAApB,IACA,CAAC,KAAK1E,aAAL,CAAmB0E,OAAnB,CAA2BC,cAF9B,EAGE;MACA,OAAO,IAAP;IACD,CAN6D,CAQ9D;;;IACA,MAAMC,mBAAmB,GAAG,mCAAK5E,aAAL,CAAmB0E,OAAnB,CAA2BC,cAA3B,kBACzBE,aAAD,IAAmB;MACjB,IAAI,oBAAoBA,aAAxB,EAAuC;QACrC,OAAO;UACLC,cAAc,EAAE,EACd,GAAGD,aAAa,CAACC,cADH;YAEdnF,UAAU,EAAE,CAACoF,iCAAD;UAFE;QADX,CAAP;MAMD;;MAED,OAAOF,aAAP;IACD,CAZyB,CAA5B;IAeA,OAAO,IAAIG,qCAAJ,CAAiCJ,mBAAjC,CAAP;EACD;EAED;AACF;AACA;;;EACiB,IAAXK,WAAW,GAAW;IACxB,OAAO,KAAK9E,eAAL,CAAqB,aAArB,EAAoC,EAApC,CAAP;EACD;EAED;AACF;AACA;;;EACE+E,cAAc,CAACC,KAAD,EAAyB;IACrC,MAAM;MAAEC,EAAF;MAAMC,OAAN;MAAeC,UAAf;MAA2B3F;IAA3B,IAA0CwF,KAAhD;IAEA,MAAMI,iBAAiB,GAAG,mBAA1B;;IAEA,IAAID,UAAU,IAAI,IAAA1F,YAAA,EAAI0F,UAAJ,EAAgBC,iBAAhB,CAAlB,EAAsD;MAAA;;MACpD,MAAMC,SAAS,GAAGF,UAAU,CAACC,iBAAD,CAA5B;MACA,MAAME,WAAW,GAAG,oCAAK5E,OAAL,kBACjBe,MAAD,IAAYA,MAAM,CAACC,IAAP,KAAgB2D,SADV,CAApB;;MAGA,IAAIC,WAAJ,EAAiB;QACfH,UAAU,CAACC,iBAAD,CAAV,GAAgCE,WAAW,CAACC,yBAAZ,CAC9B,KAAKjB,oBADyB,CAAhC;MAGD;IACF;;IAED,KAAKkB,gBAAL,CAAsBT,cAAtB,CAAqCE,EAArC,EAAyCC,OAAzC,EAAkDC,UAAlD,EAA8D3F,UAA9D;EACD;EAED;AACF;;;EACmB,IAAbiG,aAAa,GAAkC;IACjD,IAAI,KAAK3F,IAAL,KAAc,QAAlB,EAA4B;MAC1B,OAAO4F,0BAAA,CAAgBC,KAAvB;IACD;;IAED,OAAOD,0BAAA,CAAgBE,MAAvB;EACD;;AApZ8D"}
1
+ {"version":3,"file":"ChoiceAttributeModel.js","names":["ChoiceAttributeModel","AttributeModel","constructor","attribute","attributeContributions","_referenceDate","getData","DateUtil","now","_options","ChoiceAttributeOptionCollection","create","referenceDate","layouthint","has","SORT_OPTIONS","sortOptions","isApplicableModel","contributions","type","optionMode","getContribution","hasLookupLink","lookupLink","lookupListLink","getInitialChildModelLinks","links","hasContentConfiguration","hasContentFromData","conceptLink","push","options","setChildModels","models","conceptLinkHref","href","concept","model","selfhref","equalsWithParameters","getLinkByKey","lookupListLabel","lookupList","label","date","selected","option","code","readonlyvalue","join","initvalue","Array","isArray","_initvalue","length","getValue","hasValue","getInputValue","toggleOption","disableOption","enableOption","isMultiple","deselectAll","select","inputvalue","deselect","addOption","opt","choicetype","hint","multiplechoice","isTree","some","reset","mergeAttribute","oldAttribute","readonly","mergeOptions","isValid","update","value","updateLastModification","values","split","forEach","val","ChoiceAttributeOptionModel","equals","add","toString","_hasContentConfiguration","contentConfiguration","content","optionElements","optionElementConfig","optionElement","contentElement","RENDER_SECTION_LABEL","ContentConfigurationElements","placeholder","addServerError","error","id","message","properties","ANSWER_OPTION_KEY","optionKey","foundOption","getContentConfiguredLabel","_errorCollection","readonlyWidth","ATTRIBUTE_WIDTH","SMALL","MEDIUM"],"sources":["../../../src/models/attributes/ChoiceAttributeModel.js"],"sourcesContent":["// @flow\nimport { has } from \"../../utils/helpers/objects\";\nimport { DateUtil } from \"../../utils/datetime/DateTimeUtil\";\n\nimport AttributeModel from \"./AttributeModel\";\nimport ChoiceAttributeOptionCollection from \"./ChoiceAttributeOptionCollection\";\nimport ChoiceAttributeOptionModel from \"./ChoiceAttributeOptionModel\";\nimport ContentConfigurationElements from \"../contentconfiguration/ContentConfigurationElements\";\n\nimport {\n RENDER_SECTION_LABEL,\n SORT_OPTIONS,\n} from \"../../constants/LayoutHints\";\nimport { ATTRIBUTE_WIDTH } from \"../../constants\";\n\nimport type { ModularUIModel, AttributeType, FormErrorAnchor } from \"../types\";\nimport type LinkModel from \"../links/LinkModel\";\n\n/**\n * Model for a choice attribute\n */\nexport default class ChoiceAttributeModel extends AttributeModel {\n _referenceDate: ISO_DATE;\n _options: ChoiceAttributeOptionCollection;\n _hasContentConfiguration: boolean;\n\n /**\n * Constructs a choice attribute\n */\n constructor(attribute: Object, attributeContributions: Object) {\n super(attribute, attributeContributions);\n\n this._referenceDate = this.getData(\"referenceDate\", DateUtil.now());\n this._options = ChoiceAttributeOptionCollection.create(\n attribute,\n attributeContributions,\n this.referenceDate\n );\n\n if (this.layouthint.has(SORT_OPTIONS)) {\n this._options.sortOptions = true;\n }\n }\n\n /**\n */\n static isApplicableModel(contributions: Object): boolean {\n return (\n contributions.type !== \"composite\" &&\n contributions.type !== \"boolean\" &&\n (contributions.type === \"choice\" ||\n contributions.type === \"array\" ||\n has(contributions, \"enumerated\") ||\n has(contributions, \"options\"))\n );\n }\n\n /**\n */\n get type(): string {\n const optionMode = this.getContribution(\"optionMode\", \"\");\n const hasLookupLink = this.lookupLink || this.lookupListLink;\n\n if (\n optionMode === \"lookup\" ||\n (optionMode === \"dynamicWithThreshold\" && hasLookupLink)\n ) {\n return \"lookup\";\n }\n\n return \"choice\";\n }\n\n /**\n */\n getInitialChildModelLinks(): Array<LinkModel> {\n const links = [];\n\n if (this.hasContentConfiguration) {\n if (!this.hasContentFromData && this.conceptLink) {\n links.push(this.conceptLink);\n }\n\n links.push(...this.options.getInitialChildModelLinks());\n }\n\n return links;\n }\n\n /**\n */\n setChildModels(models: Array<ModularUIModel>) {\n const conceptLinkHref = this.conceptLink?.href;\n if (conceptLinkHref) {\n this.concept = models.find(\n (model) =>\n model.type === \"ConceptDetail\" &&\n model.selfhref.equalsWithParameters(conceptLinkHref)\n );\n }\n\n this.options.setChildModels(models);\n }\n\n /**\n * Retrieve lookup service link\n */\n get lookupLink(): LinkModel | null {\n return this.links.getLinkByKey(\"lookupOptions\");\n }\n\n /**\n * Retrieve lookup service as list link\n */\n get lookupListLink(): LinkModel | null {\n return this.links.getLinkByKey(\"lookupList\");\n }\n\n /**\n */\n get lookupListLabel(): string {\n return this.contributions.lookupList?.label ?? \"\";\n }\n\n /**\n * Retrieve reference date of attribute which can be used as entryDate for content\n */\n get referenceDate(): ISO_DATE {\n return this._referenceDate;\n }\n\n /**\n * Set reference date for concepts and content\n */\n set referenceDate(date: string) {\n this._referenceDate = date;\n\n this.options.referenceDate = date;\n }\n\n /**\n * Retrieve available choice options\n */\n get options(): ChoiceAttributeOptionCollection {\n return this._options;\n }\n\n /**\n * Getting all enabled options\n */\n get selected(): Array<string> {\n // $FlowFixMe[incompatible-call]\n return this.options.selected.map<string, ChoiceAttributeOptionModel>(\n (option: ChoiceAttributeOptionModel) => option.code\n );\n }\n\n /**\n * Flatten options and filter out the options that are not selected\n */\n get readonlyvalue(): string {\n return this.options.selected.map((option) => option.label).join(\", \");\n }\n\n /**\n */\n get initvalue(): any {\n if (Array.isArray(this._initvalue) && this._initvalue.length === 0) {\n return null;\n }\n\n return this._initvalue;\n }\n\n /**\n * Retrieve list of selected options, joined with comma\n */\n getValue(): string | null {\n return this.options.selected.length > 0\n ? this.options.selected.map((option) => option.code).join(\",\")\n : null;\n }\n\n /**\n */\n hasValue(): boolean {\n return this.options.selected.length > 0;\n }\n\n /**\n * Get input value of attribute\n */\n getInputValue(): string {\n return this.selected.join(\",\");\n }\n\n /**\n * Setting an option selected or unselected based on the current state\n */\n toggleOption(code: string) {\n if (this.selected.includes(code)) {\n this.disableOption(code);\n } else {\n this.enableOption(code);\n }\n }\n\n /**\n * Enable a option\n */\n enableOption(code: string) {\n if (!this.isMultiple) {\n this.options.deselectAll();\n }\n\n this.options.select(code);\n this.inputvalue = this.getInputValue();\n }\n\n /**\n * Disable a option\n */\n disableOption(code: string) {\n this.options.deselect(code);\n this.inputvalue = this.getInputValue();\n }\n\n /**\n * Add a new option to the collection of lookup options\n */\n addOption(option: Object) {\n if (!this.isMultiple) {\n this.options.deselectAll();\n }\n\n if (this.options.find((opt) => opt.code === option.code) === null) {\n this.options.addOption(option.code, option);\n }\n }\n\n /**\n * Getting the type of choice filter. For instance checkbox, radiobutton, combobox.\n */\n get choicetype():\n | \"checkbox\"\n | \"radiobutton\"\n | \"combobox\"\n | \"list\"\n | \"listview\"\n | \"table\"\n | \"longlist\"\n | \"toggle\" {\n return (\n [\n \"checkbox\",\n \"radiobutton\",\n \"combobox\",\n \"list\",\n \"listview\",\n \"table\",\n \"longlist\",\n \"toggle\",\n ].find((hint) => this.layouthint.has(hint)) || \"checkbox\"\n );\n }\n\n /**\n * Can multiple options be selected\n */\n get isMultiple(): boolean {\n return this.contributions.multiplechoice || this.choicetype === \"checkbox\";\n }\n\n /**\n * Check if options need to be rendered as tree\n */\n get isTree(): boolean {\n return (\n has(this.contributions, \"options\") &&\n this.contributions.options.some((option) => has(option, \"children\"))\n );\n }\n\n /**\n * Reset choice attribute to unselected list\n */\n reset() {\n this.options.deselectAll();\n }\n\n /**\n */\n mergeAttribute(oldAttribute: AttributeType) {\n // when attribute is readonly, don't merge the options no modifications necessary\n if (!this.readonly && oldAttribute instanceof ChoiceAttributeModel) {\n this.concept = oldAttribute.concept;\n this.options.mergeOptions(oldAttribute.options, this.type === \"lookup\");\n this.options.deselectAll();\n\n if (oldAttribute.isValid && oldAttribute.inputvalue !== null) {\n this.update(oldAttribute.inputvalue);\n }\n }\n }\n\n /**\n * Update attribute by name and value\n */\n update(value: any): ChoiceAttributeModel {\n if (this.readonly) {\n return this;\n }\n\n this.updateLastModification();\n\n let values;\n\n if (Array.isArray(value)) {\n values = value;\n } else if (typeof value === \"string\" && this.isMultiple) {\n values = value.split(\",\");\n } else {\n values = [value];\n }\n values.forEach((val) => {\n if (val instanceof ChoiceAttributeOptionModel) {\n if (!this.options.some((option) => option.equals(val))) {\n this.options.add(val);\n }\n\n this.toggleOption(val.code);\n } else if (\n typeof val === \"string\" &&\n this.options.some((option) => option.code.toString() === val)\n ) {\n this.toggleOption(val);\n }\n });\n\n return this;\n }\n\n /**\n */\n set hasContentConfiguration(hasContentConfiguration: boolean) {\n this._hasContentConfiguration =\n this.contentConfiguration !== null || hasContentConfiguration;\n }\n\n /**\n */\n get hasContentConfiguration(): boolean {\n return this._hasContentConfiguration;\n }\n\n /**\n * Get content configuration configured on the attribute.\n * Only applicable for taxonomy element and knowledge codemaps,\n * content configuration for instrument questions is available on the form object\n */\n get contentConfiguration(): ContentConfigurationElements | null {\n if (\n !this.contributions.content ||\n !this.contributions.content.optionElements\n ) {\n return null;\n }\n\n // Add RENDER_SECTION_LABEL to all content configuration to make sure the label of a section is always rendered on taxonomy and knowlege codemaps\n const optionElementConfig = this.contributions.content.optionElements.map(\n (optionElement) => {\n if (\"contentElement\" in optionElement) {\n return {\n contentElement: {\n ...optionElement.contentElement,\n layouthint: [RENDER_SECTION_LABEL],\n },\n };\n }\n\n return optionElement;\n }\n );\n\n return new ContentConfigurationElements(optionElementConfig);\n }\n\n /**\n * Get placeholder text\n */\n get placeholder(): string {\n return this.getContribution(\"placeholder\", \"\");\n }\n\n /**\n * Registers an error that was received from a server response\n */\n addServerError(error: FormErrorAnchor) {\n const { id, message, properties, layouthint } = error;\n\n const ANSWER_OPTION_KEY = \"answer-option-key\";\n\n if (properties && has(properties, ANSWER_OPTION_KEY)) {\n const optionKey = properties[ANSWER_OPTION_KEY];\n const foundOption = this.options.find(\n (option) => option.code === optionKey\n );\n if (foundOption) {\n properties[ANSWER_OPTION_KEY] = foundOption.getContentConfiguredLabel(\n this.contentConfiguration\n );\n }\n }\n\n this._errorCollection.addServerError(id, message, properties, layouthint);\n }\n\n /**\n */\n get readonlyWidth(): $Keys<typeof ATTRIBUTE_WIDTH> {\n if (this.type === \"lookup\") {\n return ATTRIBUTE_WIDTH.SMALL;\n }\n\n return ATTRIBUTE_WIDTH.MEDIUM;\n }\n}\n"],"mappings":"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"}
@@ -1,30 +1,19 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports.default = void 0;
9
-
10
8
  var _sort = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/sort"));
11
-
12
9
  var _map = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/map"));
13
-
14
10
  var _filter = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/filter"));
15
-
16
11
  var _find = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/find"));
17
-
18
12
  var _includes = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/includes"));
19
-
20
13
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/defineProperty"));
21
-
22
14
  var _ResourceCollection = _interopRequireDefault(require("../base/ResourceCollection"));
23
-
24
15
  var _ChoiceAttributeOptionModel = _interopRequireDefault(require("./ChoiceAttributeOptionModel"));
25
-
26
16
  var _ListHeaderModel = _interopRequireDefault(require("../list/ListHeaderModel"));
27
-
28
17
  var _DateTimeUtil = require("../../utils/datetime/DateTimeUtil");
29
18
 
30
19
  /**
@@ -35,7 +24,6 @@ class ChoiceAttributeOptionCollection extends _ResourceCollection.default {
35
24
  (0, _defineProperty2.default)(this, "_headers", []);
36
25
  (0, _defineProperty2.default)(this, "_sortOptions", false);
37
26
  }
38
-
39
27
  /**
40
28
  */
41
29
  set sortOptions(sortOptions) {
@@ -46,23 +34,20 @@ class ChoiceAttributeOptionCollection extends _ResourceCollection.default {
46
34
  }
47
35
  });
48
36
  }
37
+
49
38
  /**
50
39
  */
51
-
52
-
53
40
  get sortOptions() {
54
41
  return this._sortOptions;
55
42
  }
43
+
56
44
  /**
57
45
  */
58
-
59
-
60
46
  static create() {
61
47
  let data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
62
48
  let contributions = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
63
49
  let referenceDate = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : _DateTimeUtil.DateUtil.now();
64
50
  const collection = new ChoiceAttributeOptionCollection();
65
-
66
51
  if (contributions.type === "boolean") {
67
52
  collection.addBooleanOptions(data.value, contributions);
68
53
  } else if (data.dynamicschema != null) {
@@ -70,33 +55,26 @@ class ChoiceAttributeOptionCollection extends _ResourceCollection.default {
70
55
  } else if (contributions.options != null) {
71
56
  collection.addOptions(data, contributions, referenceDate);
72
57
  }
73
-
74
58
  if (contributions.children != null) {
75
59
  collection.addHeaders(contributions.children);
76
60
  }
77
-
78
61
  return collection;
79
62
  }
63
+
80
64
  /**
81
65
  * Retrieve all items in collection
82
66
  */
83
-
84
-
85
67
  get all() {
86
68
  var _context;
87
-
88
69
  return this.sortOptions ? (0, _sort.default)(_context = this.collection).call(_context, (a, b) => a.label.localeCompare(b.label)) : this.collection;
89
70
  }
71
+
90
72
  /**
91
73
  */
92
-
93
-
94
74
  getSelectedOptions(data) {
95
75
  const selectedOptions = [];
96
-
97
76
  if (Array.isArray(data.options)) {
98
77
  var _context2, _context3;
99
-
100
78
  selectedOptions.push(...(0, _map.default)(_context2 = (0, _filter.default)(_context3 = data.options).call(_context3, option => option.selected)).call(_context2, option => option.key));
101
79
  } else if (Array.isArray(data.value)) {
102
80
  selectedOptions.push(...data.value);
@@ -105,59 +83,54 @@ class ChoiceAttributeOptionCollection extends _ResourceCollection.default {
105
83
  } else {
106
84
  selectedOptions.push(data.value);
107
85
  }
108
-
109
86
  return selectedOptions;
110
87
  }
88
+
111
89
  /**
112
90
  */
113
-
114
-
115
91
  getOptionCount(code, options) {
116
92
  if (Array.isArray(options)) {
117
93
  const foundOption = (0, _find.default)(options).call(options, option => option.key === code);
118
-
119
94
  if (foundOption) {
120
95
  return foundOption.count;
121
96
  }
122
97
  }
123
-
124
98
  return null;
125
99
  }
100
+
126
101
  /**
127
102
  */
128
-
129
-
130
103
  addOptions(data, contributions) {
131
104
  let referenceDate = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : _DateTimeUtil.DateUtil.now();
132
105
  const selectedValues = this.getSelectedOptions(data);
133
106
  contributions.options.forEach(optionContributions => {
134
107
  const optionCode = optionContributions.code || optionContributions.key;
135
- this.addOption(selectedValues, { ...optionContributions,
108
+ this.addOption(selectedValues, {
109
+ ...optionContributions,
136
110
  count: this.getOptionCount(optionCode, data.options)
137
111
  }, referenceDate);
138
112
  });
139
113
  return this;
140
114
  }
115
+
141
116
  /**
142
117
  * Create options based on data and dynamischema
143
118
  */
144
-
145
-
146
119
  addDynamicSchema(data, contributions) {
147
120
  let referenceDate = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : _DateTimeUtil.DateUtil.now();
148
121
  const selectedValues = this.getSelectedOptions(data);
149
122
  data.dynamicschema.forEach(optionDynamicschema => {
150
- this.addOption(selectedValues, { ...optionDynamicschema,
123
+ this.addOption(selectedValues, {
124
+ ...optionDynamicschema,
151
125
  count: this.getOptionCount(optionDynamicschema.code, data.options),
152
126
  elementsContributions: contributions.children
153
127
  }, referenceDate);
154
128
  });
155
129
  return this;
156
130
  }
131
+
157
132
  /**
158
133
  */
159
-
160
-
161
134
  addBooleanOption(code, defaultLabel, data) {
162
135
  let options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : [];
163
136
  const foundOption = (0, _find.default)(options).call(options, option => option.code === code);
@@ -169,176 +142,145 @@ class ChoiceAttributeOptionCollection extends _ResourceCollection.default {
169
142
  hasAlternativeLabel: foundOption != null
170
143
  });
171
144
  }
145
+
172
146
  /**
173
147
  */
174
-
175
-
176
148
  getDefaultValueForOption(value, contributions) {
177
- var _contributions$layout;
178
-
179
- const layouthints = (_contributions$layout = contributions.layouthint) !== null && _contributions$layout !== void 0 ? _contributions$layout : [];
149
+ const layouthints = contributions.layouthint ?? [];
180
150
  const requireDefaultValue = (0, _includes.default)(layouthints).call(layouthints, "checkbox") || (0, _includes.default)(layouthints).call(layouthints, "toggle");
181
151
  return requireDefaultValue ? "false" : "";
182
152
  }
153
+
183
154
  /**
184
155
  * Create two static options for true and false,
185
156
  * there might be alternative labels configured for each option value
186
157
  */
187
-
188
-
189
158
  addBooleanOptions(value, contributions) {
190
159
  const optionValue = value == null ? this.getDefaultValueForOption(value, contributions) : value.toString();
191
160
  this.addBooleanOption("true", "Yes", [optionValue], contributions.options);
192
161
  this.addBooleanOption("false", "No", [optionValue], contributions.options);
193
162
  return this;
194
163
  }
164
+
195
165
  /**
196
166
  */
197
-
198
-
199
167
  addOption(data, contributions) {
200
168
  let referenceDate = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : _DateTimeUtil.DateUtil.now();
201
169
  const optionModel = new _ChoiceAttributeOptionModel.default(Array.isArray(data) ? data : [data], contributions, referenceDate);
202
170
  this.add(optionModel);
203
171
  return this;
204
172
  }
173
+
205
174
  /**
206
175
  * Get all options that have selected property true
207
176
  */
208
-
209
-
210
177
  get selected() {
211
178
  const selectedOptions = [];
212
179
  this.collection.forEach(option => {
213
180
  if (option.selected && option.selected === true) {
214
181
  selectedOptions.push(option);
215
182
  }
216
-
217
183
  if (option.children) {
218
184
  selectedOptions.push(...option.children.selected);
219
185
  }
220
186
  });
221
187
  return selectedOptions;
222
188
  }
189
+
223
190
  /**
224
191
  * Deselect all options
225
192
  */
226
-
227
-
228
193
  deselectAll() {
229
194
  var _context4;
230
-
231
195
  this.collection = (0, _map.default)(_context4 = this.collection).call(_context4, option => {
232
196
  const newOption = option.clone();
233
197
  newOption.selected = false;
234
-
235
198
  if (newOption.children) {
236
199
  newOption.children.deselectAll();
237
200
  }
238
-
239
201
  return newOption;
240
202
  });
241
203
  }
204
+
242
205
  /**
243
206
  * Select an option by it's code
244
207
  */
245
-
246
-
247
208
  select(optionCode) {
248
209
  this.toggle(optionCode, "select");
249
210
  }
211
+
250
212
  /**
251
213
  * Deselect an option by it's code
252
214
  */
253
-
254
-
255
215
  deselect(optionCode) {
256
216
  this.toggle(optionCode, "deselect");
257
217
  }
218
+
258
219
  /**
259
220
  * Toggle an option by it's code
260
221
  */
261
-
262
-
263
222
  toggle(optionCode, action) {
264
223
  var _context5;
265
-
266
224
  this.collection = (0, _map.default)(_context5 = this.collection).call(_context5, option => {
267
225
  const newOption = option.clone();
268
-
269
226
  if (newOption.code === optionCode) {
270
227
  newOption.selected = action === "select";
271
228
  } else if (newOption.children) {
272
229
  newOption.children.toggle(optionCode, action);
273
230
  }
274
-
275
231
  return newOption;
276
232
  });
277
233
  }
234
+
278
235
  /**
279
236
  */
280
-
281
-
282
237
  setReferenceDate(date) {
283
238
  var _context6;
284
-
285
239
  return (0, _map.default)(_context6 = this.collection).call(_context6, option => {
286
240
  option.referenceDate = date;
287
-
288
241
  if (option.children) {
289
242
  option.children.referenceDate = date;
290
243
  }
291
-
292
244
  return option;
293
245
  });
294
246
  }
247
+
295
248
  /**
296
249
  */
297
-
298
-
299
250
  set referenceDate(date) {
300
251
  this.collection = this.setReferenceDate(date);
301
252
  }
253
+
302
254
  /**
303
255
  */
304
-
305
-
306
256
  addHeaders(headers) {
307
257
  this._headers = (0, _map.default)(headers).call(headers, child => new _ListHeaderModel.default(child));
308
258
  }
259
+
309
260
  /**
310
261
  */
311
-
312
-
313
262
  get headers() {
314
263
  if (this._headers) {
315
264
  return this._headers;
316
265
  }
317
-
318
266
  return [];
319
267
  }
268
+
320
269
  /**
321
270
  */
322
-
323
-
324
271
  mergeOptions(withOptions) {
325
272
  let addNotExistingOptions = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
326
-
327
273
  if (addNotExistingOptions) {
328
274
  this.collection = [...this.collection, ...(0, _filter.default)(withOptions).call(withOptions, option => !this.collection.some(opt => opt.code === option.code))];
329
275
  }
330
-
331
276
  this.collection.forEach(option => {
332
277
  const foundOption = (0, _find.default)(withOptions).call(withOptions, withOption => withOption.code === option.code);
333
-
334
278
  if (foundOption) {
335
279
  option.mergeOption(foundOption);
336
280
  }
337
281
  });
338
282
  }
339
-
340
283
  }
341
-
342
284
  var _default = ChoiceAttributeOptionCollection;
343
285
  exports.default = _default;
344
286
  //# sourceMappingURL=ChoiceAttributeOptionCollection.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ChoiceAttributeOptionCollection.js","names":["ChoiceAttributeOptionCollection","ResourceCollection","sortOptions","_sortOptions","collection","forEach","option","children","create","data","contributions","referenceDate","DateUtil","now","type","addBooleanOptions","value","dynamicschema","addDynamicSchema","options","addOptions","addHeaders","all","a","b","label","localeCompare","getSelectedOptions","selectedOptions","Array","isArray","push","selected","key","toString","getOptionCount","code","foundOption","count","selectedValues","optionContributions","optionCode","addOption","optionDynamicschema","elementsContributions","addBooleanOption","defaultLabel","isBooleanType","hasAlternativeLabel","getDefaultValueForOption","layouthints","layouthint","requireDefaultValue","optionValue","optionModel","ChoiceAttributeOptionModel","add","deselectAll","newOption","clone","select","toggle","deselect","action","setReferenceDate","date","headers","_headers","child","ListHeaderModel","mergeOptions","withOptions","addNotExistingOptions","some","opt","withOption","mergeOption"],"sources":["../../../src/models/attributes/ChoiceAttributeOptionCollection.js"],"sourcesContent":["// @flow\nimport ResourceCollection from \"../base/ResourceCollection\";\nimport ChoiceAttributeOptionModel from \"./ChoiceAttributeOptionModel\";\nimport ListHeaderModel from \"../list/ListHeaderModel\";\n\nimport { DateUtil } from \"../../utils/datetime/DateTimeUtil\";\n\n/**\n */\nclass ChoiceAttributeOptionCollection extends ResourceCollection<ChoiceAttributeOptionModel> {\n _headers: Array<ListHeaderModel> = [];\n _sortOptions: boolean = false;\n\n /**\n */\n set sortOptions(sortOptions: boolean) {\n this._sortOptions = sortOptions;\n\n this.collection.forEach((option) => {\n if (option.children) {\n option.children.sortOptions = sortOptions;\n }\n });\n }\n\n /**\n */\n get sortOptions(): boolean {\n return this._sortOptions;\n }\n\n /**\n */\n static create(\n data: Object = {},\n contributions: Object = {},\n referenceDate: ISO_DATE = DateUtil.now()\n ): ChoiceAttributeOptionCollection {\n const collection = new ChoiceAttributeOptionCollection();\n\n if (contributions.type === \"boolean\") {\n collection.addBooleanOptions(data.value, contributions);\n } else if (data.dynamicschema != null) {\n collection.addDynamicSchema(data, contributions, referenceDate);\n } else if (contributions.options != null) {\n collection.addOptions(data, contributions, referenceDate);\n }\n\n if (contributions.children != null) {\n collection.addHeaders(contributions.children);\n }\n\n return collection;\n }\n\n /**\n * Retrieve all items in collection\n */\n get all(): Array<ChoiceAttributeOptionModel> {\n return this.sortOptions\n ? this.collection.sort((a, b) => a.label.localeCompare(b.label))\n : this.collection;\n }\n\n /**\n */\n getSelectedOptions(data: Object): Array<string> {\n const selectedOptions = [];\n\n if (Array.isArray(data.options)) {\n selectedOptions.push(\n ...data.options\n .filter((option) => option.selected)\n .map((option) => option.key)\n );\n } else if (Array.isArray(data.value)) {\n selectedOptions.push(...data.value);\n } else if (typeof data.value === \"boolean\") {\n selectedOptions.push(data.value.toString());\n } else {\n selectedOptions.push(data.value);\n }\n\n return selectedOptions;\n }\n\n /**\n */\n getOptionCount(code: string, options: Array<Object>): number | null {\n if (Array.isArray(options)) {\n const foundOption = options.find((option) => option.key === code);\n if (foundOption) {\n return foundOption.count;\n }\n }\n\n return null;\n }\n\n /**\n */\n addOptions(\n data: Object,\n contributions: Object,\n referenceDate: ISO_DATE = DateUtil.now()\n ): ChoiceAttributeOptionCollection {\n const selectedValues = this.getSelectedOptions(data);\n\n contributions.options.forEach((optionContributions) => {\n const optionCode = optionContributions.code || optionContributions.key;\n\n this.addOption(\n selectedValues,\n {\n ...optionContributions,\n count: this.getOptionCount(optionCode, data.options),\n },\n referenceDate\n );\n });\n\n return this;\n }\n\n /**\n * Create options based on data and dynamischema\n */\n addDynamicSchema(\n data: Object,\n contributions: Object,\n referenceDate: ISO_DATE = DateUtil.now()\n ): ChoiceAttributeOptionCollection {\n const selectedValues = this.getSelectedOptions(data);\n data.dynamicschema.forEach((optionDynamicschema) => {\n this.addOption(\n selectedValues,\n {\n ...optionDynamicschema,\n count: this.getOptionCount(optionDynamicschema.code, data.options),\n elementsContributions: contributions.children,\n },\n referenceDate\n );\n });\n\n return this;\n }\n\n /**\n */\n addBooleanOption(\n code: \"true\" | \"false\",\n defaultLabel: string,\n data: string | Array<string>,\n options: Array<Object> = []\n ) {\n const foundOption = options.find((option) => option.code === code);\n\n const label = foundOption ? foundOption.label : defaultLabel;\n\n this.addOption(data, {\n code,\n label,\n isBooleanType: true,\n hasAlternativeLabel: foundOption != null,\n });\n }\n\n /**\n */\n getDefaultValueForOption(value: any, contributions: Object): string {\n const layouthints = contributions.layouthint ?? [];\n\n const requireDefaultValue =\n layouthints.includes(\"checkbox\") || layouthints.includes(\"toggle\");\n\n return requireDefaultValue ? \"false\" : \"\";\n }\n\n /**\n * Create two static options for true and false,\n * there might be alternative labels configured for each option value\n */\n addBooleanOptions(\n value: any,\n contributions: Object\n ): ChoiceAttributeOptionCollection {\n const optionValue =\n value == null\n ? this.getDefaultValueForOption(value, contributions)\n : value.toString();\n\n this.addBooleanOption(\"true\", \"Yes\", [optionValue], contributions.options);\n this.addBooleanOption(\"false\", \"No\", [optionValue], contributions.options);\n\n return this;\n }\n\n /**\n */\n addOption(\n data: string | Array<string>,\n contributions: Object,\n referenceDate: ISO_DATE = DateUtil.now()\n ): ChoiceAttributeOptionCollection {\n const optionModel = new ChoiceAttributeOptionModel(\n Array.isArray(data) ? data : [data],\n contributions,\n referenceDate\n );\n\n this.add(optionModel);\n\n return this;\n }\n\n /**\n * Get all options that have selected property true\n */\n get selected(): Array<ChoiceAttributeOptionModel> {\n const selectedOptions = [];\n\n this.collection.forEach((option: ChoiceAttributeOptionModel) => {\n if (option.selected && option.selected === true) {\n selectedOptions.push(option);\n }\n\n if (option.children) {\n selectedOptions.push(...option.children.selected);\n }\n });\n\n return selectedOptions;\n }\n\n /**\n * Deselect all options\n */\n deselectAll() {\n this.collection = this.collection.map((option) => {\n const newOption = option.clone();\n\n newOption.selected = false;\n\n if (newOption.children) {\n newOption.children.deselectAll();\n }\n\n return newOption;\n });\n }\n\n /**\n * Select an option by it's code\n */\n select(optionCode: string) {\n this.toggle(optionCode, \"select\");\n }\n\n /**\n * Deselect an option by it's code\n */\n deselect(optionCode: string) {\n this.toggle(optionCode, \"deselect\");\n }\n\n /**\n * Toggle an option by it's code\n */\n toggle(optionCode: string, action: \"select\" | \"deselect\") {\n this.collection = this.collection.map((option) => {\n const newOption = option.clone();\n\n if (newOption.code === optionCode) {\n newOption.selected = action === \"select\";\n } else if (newOption.children) {\n newOption.children.toggle(optionCode, action);\n }\n\n return newOption;\n });\n }\n\n /**\n */\n setReferenceDate(date: ISO_DATE): Array<ChoiceAttributeOptionModel> {\n return this.collection.map((option) => {\n option.referenceDate = date;\n if (option.children) {\n option.children.referenceDate = date;\n }\n\n return option;\n });\n }\n\n /**\n */\n set referenceDate(date: ISO_DATE) {\n this.collection = this.setReferenceDate(date);\n }\n\n /**\n */\n addHeaders(headers: Array<Object>) {\n this._headers = headers.map((child) => new ListHeaderModel(child));\n }\n\n /**\n */\n get headers(): Array<ListHeaderModel> {\n if (this._headers) {\n return this._headers;\n }\n\n return [];\n }\n\n /**\n */\n mergeOptions(\n withOptions: ChoiceAttributeOptionCollection,\n addNotExistingOptions: boolean = false\n ) {\n if (addNotExistingOptions) {\n this.collection = [\n ...this.collection,\n ...withOptions.filter(\n (option) => !this.collection.some((opt) => opt.code === option.code)\n ),\n ];\n }\n\n this.collection.forEach((option) => {\n const foundOption = withOptions.find(\n (withOption) => withOption.code === option.code\n );\n if (foundOption) {\n option.mergeOption(foundOption);\n }\n });\n }\n}\n\nexport default ChoiceAttributeOptionCollection;\n"],"mappings":"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"}
1
+ {"version":3,"file":"ChoiceAttributeOptionCollection.js","names":["ChoiceAttributeOptionCollection","ResourceCollection","sortOptions","_sortOptions","collection","forEach","option","children","create","data","contributions","referenceDate","DateUtil","now","type","addBooleanOptions","value","dynamicschema","addDynamicSchema","options","addOptions","addHeaders","all","a","b","label","localeCompare","getSelectedOptions","selectedOptions","Array","isArray","push","selected","key","toString","getOptionCount","code","foundOption","count","selectedValues","optionContributions","optionCode","addOption","optionDynamicschema","elementsContributions","addBooleanOption","defaultLabel","isBooleanType","hasAlternativeLabel","getDefaultValueForOption","layouthints","layouthint","requireDefaultValue","optionValue","optionModel","ChoiceAttributeOptionModel","add","deselectAll","newOption","clone","select","toggle","deselect","action","setReferenceDate","date","headers","_headers","child","ListHeaderModel","mergeOptions","withOptions","addNotExistingOptions","some","opt","withOption","mergeOption"],"sources":["../../../src/models/attributes/ChoiceAttributeOptionCollection.js"],"sourcesContent":["// @flow\nimport ResourceCollection from \"../base/ResourceCollection\";\nimport ChoiceAttributeOptionModel from \"./ChoiceAttributeOptionModel\";\nimport ListHeaderModel from \"../list/ListHeaderModel\";\n\nimport { DateUtil } from \"../../utils/datetime/DateTimeUtil\";\n\n/**\n */\nclass ChoiceAttributeOptionCollection extends ResourceCollection<ChoiceAttributeOptionModel> {\n _headers: Array<ListHeaderModel> = [];\n _sortOptions: boolean = false;\n\n /**\n */\n set sortOptions(sortOptions: boolean) {\n this._sortOptions = sortOptions;\n\n this.collection.forEach((option) => {\n if (option.children) {\n option.children.sortOptions = sortOptions;\n }\n });\n }\n\n /**\n */\n get sortOptions(): boolean {\n return this._sortOptions;\n }\n\n /**\n */\n static create(\n data: Object = {},\n contributions: Object = {},\n referenceDate: ISO_DATE = DateUtil.now()\n ): ChoiceAttributeOptionCollection {\n const collection = new ChoiceAttributeOptionCollection();\n\n if (contributions.type === \"boolean\") {\n collection.addBooleanOptions(data.value, contributions);\n } else if (data.dynamicschema != null) {\n collection.addDynamicSchema(data, contributions, referenceDate);\n } else if (contributions.options != null) {\n collection.addOptions(data, contributions, referenceDate);\n }\n\n if (contributions.children != null) {\n collection.addHeaders(contributions.children);\n }\n\n return collection;\n }\n\n /**\n * Retrieve all items in collection\n */\n get all(): Array<ChoiceAttributeOptionModel> {\n return this.sortOptions\n ? this.collection.sort((a, b) => a.label.localeCompare(b.label))\n : this.collection;\n }\n\n /**\n */\n getSelectedOptions(data: Object): Array<string> {\n const selectedOptions = [];\n\n if (Array.isArray(data.options)) {\n selectedOptions.push(\n ...data.options\n .filter((option) => option.selected)\n .map((option) => option.key)\n );\n } else if (Array.isArray(data.value)) {\n selectedOptions.push(...data.value);\n } else if (typeof data.value === \"boolean\") {\n selectedOptions.push(data.value.toString());\n } else {\n selectedOptions.push(data.value);\n }\n\n return selectedOptions;\n }\n\n /**\n */\n getOptionCount(code: string, options: Array<Object>): number | null {\n if (Array.isArray(options)) {\n const foundOption = options.find((option) => option.key === code);\n if (foundOption) {\n return foundOption.count;\n }\n }\n\n return null;\n }\n\n /**\n */\n addOptions(\n data: Object,\n contributions: Object,\n referenceDate: ISO_DATE = DateUtil.now()\n ): ChoiceAttributeOptionCollection {\n const selectedValues = this.getSelectedOptions(data);\n\n contributions.options.forEach((optionContributions) => {\n const optionCode = optionContributions.code || optionContributions.key;\n\n this.addOption(\n selectedValues,\n {\n ...optionContributions,\n count: this.getOptionCount(optionCode, data.options),\n },\n referenceDate\n );\n });\n\n return this;\n }\n\n /**\n * Create options based on data and dynamischema\n */\n addDynamicSchema(\n data: Object,\n contributions: Object,\n referenceDate: ISO_DATE = DateUtil.now()\n ): ChoiceAttributeOptionCollection {\n const selectedValues = this.getSelectedOptions(data);\n data.dynamicschema.forEach((optionDynamicschema) => {\n this.addOption(\n selectedValues,\n {\n ...optionDynamicschema,\n count: this.getOptionCount(optionDynamicschema.code, data.options),\n elementsContributions: contributions.children,\n },\n referenceDate\n );\n });\n\n return this;\n }\n\n /**\n */\n addBooleanOption(\n code: \"true\" | \"false\",\n defaultLabel: string,\n data: string | Array<string>,\n options: Array<Object> = []\n ) {\n const foundOption = options.find((option) => option.code === code);\n\n const label = foundOption ? foundOption.label : defaultLabel;\n\n this.addOption(data, {\n code,\n label,\n isBooleanType: true,\n hasAlternativeLabel: foundOption != null,\n });\n }\n\n /**\n */\n getDefaultValueForOption(value: any, contributions: Object): string {\n const layouthints = contributions.layouthint ?? [];\n\n const requireDefaultValue =\n layouthints.includes(\"checkbox\") || layouthints.includes(\"toggle\");\n\n return requireDefaultValue ? \"false\" : \"\";\n }\n\n /**\n * Create two static options for true and false,\n * there might be alternative labels configured for each option value\n */\n addBooleanOptions(\n value: any,\n contributions: Object\n ): ChoiceAttributeOptionCollection {\n const optionValue =\n value == null\n ? this.getDefaultValueForOption(value, contributions)\n : value.toString();\n\n this.addBooleanOption(\"true\", \"Yes\", [optionValue], contributions.options);\n this.addBooleanOption(\"false\", \"No\", [optionValue], contributions.options);\n\n return this;\n }\n\n /**\n */\n addOption(\n data: string | Array<string>,\n contributions: Object,\n referenceDate: ISO_DATE = DateUtil.now()\n ): ChoiceAttributeOptionCollection {\n const optionModel = new ChoiceAttributeOptionModel(\n Array.isArray(data) ? data : [data],\n contributions,\n referenceDate\n );\n\n this.add(optionModel);\n\n return this;\n }\n\n /**\n * Get all options that have selected property true\n */\n get selected(): Array<ChoiceAttributeOptionModel> {\n const selectedOptions = [];\n\n this.collection.forEach((option: ChoiceAttributeOptionModel) => {\n if (option.selected && option.selected === true) {\n selectedOptions.push(option);\n }\n\n if (option.children) {\n selectedOptions.push(...option.children.selected);\n }\n });\n\n return selectedOptions;\n }\n\n /**\n * Deselect all options\n */\n deselectAll() {\n this.collection = this.collection.map((option) => {\n const newOption = option.clone();\n\n newOption.selected = false;\n\n if (newOption.children) {\n newOption.children.deselectAll();\n }\n\n return newOption;\n });\n }\n\n /**\n * Select an option by it's code\n */\n select(optionCode: string) {\n this.toggle(optionCode, \"select\");\n }\n\n /**\n * Deselect an option by it's code\n */\n deselect(optionCode: string) {\n this.toggle(optionCode, \"deselect\");\n }\n\n /**\n * Toggle an option by it's code\n */\n toggle(optionCode: string, action: \"select\" | \"deselect\") {\n this.collection = this.collection.map((option) => {\n const newOption = option.clone();\n\n if (newOption.code === optionCode) {\n newOption.selected = action === \"select\";\n } else if (newOption.children) {\n newOption.children.toggle(optionCode, action);\n }\n\n return newOption;\n });\n }\n\n /**\n */\n setReferenceDate(date: ISO_DATE): Array<ChoiceAttributeOptionModel> {\n return this.collection.map((option) => {\n option.referenceDate = date;\n if (option.children) {\n option.children.referenceDate = date;\n }\n\n return option;\n });\n }\n\n /**\n */\n set referenceDate(date: ISO_DATE) {\n this.collection = this.setReferenceDate(date);\n }\n\n /**\n */\n addHeaders(headers: Array<Object>) {\n this._headers = headers.map((child) => new ListHeaderModel(child));\n }\n\n /**\n */\n get headers(): Array<ListHeaderModel> {\n if (this._headers) {\n return this._headers;\n }\n\n return [];\n }\n\n /**\n */\n mergeOptions(\n withOptions: ChoiceAttributeOptionCollection,\n addNotExistingOptions: boolean = false\n ) {\n if (addNotExistingOptions) {\n this.collection = [\n ...this.collection,\n ...withOptions.filter(\n (option) => !this.collection.some((opt) => opt.code === option.code)\n ),\n ];\n }\n\n this.collection.forEach((option) => {\n const foundOption = withOptions.find(\n (withOption) => withOption.code === option.code\n );\n if (foundOption) {\n option.mergeOption(foundOption);\n }\n });\n }\n}\n\nexport default ChoiceAttributeOptionCollection;\n"],"mappings":"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"}