@beinformed/ui 1.31.0 → 1.31.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (976) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/esm/builder/mergeLayoutHintConfigurations.js.map +1 -1
  3. package/esm/constants/LayoutHints.js.map +1 -1
  4. package/esm/constants/Settings.js.map +1 -1
  5. package/esm/exceptions/FetchException.js.map +1 -1
  6. package/esm/exceptions/NetworkException.js.map +1 -1
  7. package/esm/exceptions/UnauthorizedException.js.map +1 -1
  8. package/esm/hooks/useAllFormsOnModel.js.map +1 -1
  9. package/esm/hooks/useAuthentication.js.map +1 -1
  10. package/esm/hooks/useContent.js.map +1 -1
  11. package/esm/hooks/useDeepCompareEffect.js.map +1 -1
  12. package/esm/hooks/useForm.js.map +1 -1
  13. package/esm/hooks/useI18n.js.map +1 -1
  14. package/esm/hooks/useModal.js.map +1 -1
  15. package/esm/hooks/useModelCatalog.js.map +1 -1
  16. package/esm/hooks/useModularUI.js.map +1 -1
  17. package/esm/hooks/useModularUIBasic.js.map +1 -1
  18. package/esm/hooks/useModularUIModel.js.map +1 -1
  19. package/esm/hooks/useModularUIRequest.js.map +1 -1
  20. package/esm/hooks/useNotification.js.map +1 -1
  21. package/esm/hooks/usePreference.js +8 -2
  22. package/esm/hooks/usePreference.js.map +1 -1
  23. package/esm/i18n/Locale.js.map +1 -1
  24. package/esm/i18n/Locales.js.map +1 -1
  25. package/esm/i18n/Message.js.map +1 -1
  26. package/esm/i18n/withMessage.js.map +1 -1
  27. package/esm/models/actions/ActionCollection.js.map +1 -1
  28. package/esm/models/actions/ActionModel.js.map +1 -1
  29. package/esm/models/application/ApplicationModel.js.map +1 -1
  30. package/esm/models/attributes/AttributeCollection.js.map +1 -1
  31. package/esm/models/attributes/AttributeContent.js.map +1 -1
  32. package/esm/models/attributes/AttributeDataHelper.js.map +1 -1
  33. package/esm/models/attributes/AttributeModel.js.map +1 -1
  34. package/esm/models/attributes/AttributeSetModel.js.map +1 -1
  35. package/esm/models/attributes/BooleanAttributeModel.js.map +1 -1
  36. package/esm/models/attributes/ChoiceAttributeModel.js +1 -1
  37. package/esm/models/attributes/ChoiceAttributeModel.js.map +1 -1
  38. package/esm/models/attributes/ChoiceAttributeOptionCollection.js.map +1 -1
  39. package/esm/models/attributes/ChoiceAttributeOptionModel.js +8 -0
  40. package/esm/models/attributes/ChoiceAttributeOptionModel.js.map +1 -1
  41. package/esm/models/attributes/CompositeAttributeChildCollection.js.map +1 -1
  42. package/esm/models/attributes/CompositeAttributeModel.js.map +1 -1
  43. package/esm/models/attributes/DatetimeAttributeModel.js.map +1 -1
  44. package/esm/models/attributes/NumberAttributeModel.js.map +1 -1
  45. package/esm/models/attributes/PasswordAttributeModel.js.map +1 -1
  46. package/esm/models/attributes/StringAttributeModel.js.map +1 -1
  47. package/esm/models/attributes/UploadAttributeModel.js.map +1 -1
  48. package/esm/models/attributes/_createAttribute.js.map +1 -1
  49. package/esm/models/attributes/input-constraints/ConstraintCollection.js.map +1 -1
  50. package/esm/models/attributes/input-constraints/ConstraintModel.js.map +1 -1
  51. package/esm/models/attributes/input-constraints/DateBoundaryConstraint.js.map +1 -1
  52. package/esm/models/attributes/input-constraints/MandatoryConstraint.js.map +1 -1
  53. package/esm/models/attributes/input-constraints/NumberBoundaryConstraint.js.map +1 -1
  54. package/esm/models/attributes/input-constraints/NumberFormatConstraint.js.map +1 -1
  55. package/esm/models/attributes/input-constraints/NumberGroupingConstraint.js.map +1 -1
  56. package/esm/models/attributes/layouthint-rules/BaseLayoutHintRule.js.map +1 -1
  57. package/esm/models/attributes/layouthint-rules/DependentAttribute.js.map +1 -1
  58. package/esm/models/attributes/layouthint-rules/LayoutHintRuleCollection.js.map +1 -1
  59. package/esm/models/attributes/layouthint-rules/RemainingTotalUploadSize.js.map +1 -1
  60. package/esm/models/base/BaseCollection.js.map +1 -1
  61. package/esm/models/base/BaseModel.js.map +1 -1
  62. package/esm/models/base/ResourceModel.js.map +1 -1
  63. package/esm/models/caseview/CaseViewModel.js.map +1 -1
  64. package/esm/models/concepts/BusinessScenarioModel.js.map +1 -1
  65. package/esm/models/concepts/ConceptDetailModel.js.map +1 -1
  66. package/esm/models/concepts/ConceptIndexModel.js.map +1 -1
  67. package/esm/models/concepts/ConceptLinkModel.js.map +1 -1
  68. package/esm/models/concepts/ConceptRelationCollection.js.map +1 -1
  69. package/esm/models/concepts/SourceReferenceCollection.js.map +1 -1
  70. package/esm/models/concepts/SourceReferenceModel.js.map +1 -1
  71. package/esm/models/content/ContentIndexModel.js.map +1 -1
  72. package/esm/models/content/ContentLinkModel.js.map +1 -1
  73. package/esm/models/content/ContentModel.js.map +1 -1
  74. package/esm/models/content/ContentTOCModel.js.map +1 -1
  75. package/esm/models/content/SectionModel.js.map +1 -1
  76. package/esm/models/content/SubSectionModel.js.map +1 -1
  77. package/esm/models/contentconfiguration/ContentConfiguration.js.map +1 -1
  78. package/esm/models/contentconfiguration/ContentConfigurationElements.js.map +1 -1
  79. package/esm/models/contentconfiguration/ContentConfigurationEndResults.js.map +1 -1
  80. package/esm/models/contentconfiguration/ContentConfigurationQuestions.js.map +1 -1
  81. package/esm/models/detail/DetailModel.js.map +1 -1
  82. package/esm/models/error/ErrorCollection.js.map +1 -1
  83. package/esm/models/error/ErrorModel.js.map +1 -1
  84. package/esm/models/filters/AssignmentFilterModel.js.map +1 -1
  85. package/esm/models/filters/BaseFilterModel.js.map +1 -1
  86. package/esm/models/filters/FilterCollection.js.map +1 -1
  87. package/esm/models/form/FormModel.js.map +1 -1
  88. package/esm/models/form/FormObjectModel.js.map +1 -1
  89. package/esm/models/grouping/GroupingModel.js.map +1 -1
  90. package/esm/models/href/Href.js.map +1 -1
  91. package/esm/models/layouthint/LayoutHintCollection.js.map +1 -1
  92. package/esm/models/links/LinkCollection.js.map +1 -1
  93. package/esm/models/links/LinkModel.js.map +1 -1
  94. package/esm/models/links/normalizeLinkJSON.js.map +1 -1
  95. package/esm/models/list/ListDetailModel.js.map +1 -1
  96. package/esm/models/list/ListItemCollection.js.map +1 -1
  97. package/esm/models/list/ListItemModel.js.map +1 -1
  98. package/esm/models/list/ListModel.js.map +1 -1
  99. package/esm/models/lookup/LookupOptionCollection.js.map +1 -1
  100. package/esm/models/lookup/LookupOptionsModel.js.map +1 -1
  101. package/esm/models/modelcatalog/ModelCatalogModel.js.map +1 -1
  102. package/esm/models/paging/PagingModel.js.map +1 -1
  103. package/esm/models/panels/GroupingPanelModel.js.map +1 -1
  104. package/esm/models/process/ProcessStatusSettingsModel.js.map +1 -1
  105. package/esm/models/resolveModel.js.map +1 -1
  106. package/esm/models/sorting/SortingModel.js.map +1 -1
  107. package/esm/models/tab/TabModel.js.map +1 -1
  108. package/esm/models/taskgroup/TaskGroupModel.js.map +1 -1
  109. package/esm/models/types.js.map +1 -1
  110. package/esm/models/user/UserProfileModel.js.map +1 -1
  111. package/esm/modularui/CaptchaRequest.js.map +1 -1
  112. package/esm/modularui/ModularUIRequest.js.map +1 -1
  113. package/esm/modularui/UploadRequest.js.map +1 -1
  114. package/esm/react/utils.js.map +1 -1
  115. package/esm/react-client/client.js +1 -0
  116. package/esm/react-client/client.js.map +1 -1
  117. package/esm/react-client/contextPath.js.map +1 -1
  118. package/esm/react-client/rehydrate.js.map +1 -1
  119. package/esm/react-server/createSSRComplete.js.map +1 -1
  120. package/esm/react-server/renderSSRComplete.js.map +1 -1
  121. package/esm/react-server/renderSSRMinimal.js.map +1 -1
  122. package/esm/react-server/requestInformation.js.map +1 -1
  123. package/esm/react-server/serverUtil.js.map +1 -1
  124. package/esm/react-theme/createTheme.js.map +1 -1
  125. package/esm/react-theme/utils/colors.js.map +1 -1
  126. package/esm/react-theme/utils/contrast.js.map +1 -1
  127. package/esm/react-theme/utils/corners.js.map +1 -1
  128. package/esm/react-theme/utils/spacers.js.map +1 -1
  129. package/esm/react-theme/utils/themeProps.js.map +1 -1
  130. package/esm/redux/_i18n/I18nActions.js.map +1 -1
  131. package/esm/redux/_i18n/I18nReducer.js.map +1 -1
  132. package/esm/redux/_modularui/ModularUIActions.js.map +1 -1
  133. package/esm/redux/_modularui/ModularUIConnector.js.map +1 -1
  134. package/esm/redux/_modularui/ModularUIMiddleware.js.map +1 -1
  135. package/esm/redux/_modularui/ModularUIReducer.js.map +1 -1
  136. package/esm/redux/_modularui/ModularUISelectors.js.map +1 -1
  137. package/esm/redux/_modularui/ModularUIUtils.js.map +1 -1
  138. package/esm/redux/_modularui/types.js.map +1 -1
  139. package/esm/redux/_modularui/withModularUI.js.map +1 -1
  140. package/esm/redux/_router/RouterActions.js.map +1 -1
  141. package/esm/redux/_router/RouterConnectors.js.map +1 -1
  142. package/esm/redux/_router/RouterReducer.js.map +1 -1
  143. package/esm/redux/actions/Application.js.map +1 -1
  144. package/esm/redux/actions/Authorization.js.map +1 -1
  145. package/esm/redux/actions/Error.js.map +1 -1
  146. package/esm/redux/actions/FormAttributeSet.js.map +1 -1
  147. package/esm/redux/actions/FormAttributeSetRepeatable.js.map +1 -1
  148. package/esm/redux/actions/FormAutosave.js.map +1 -1
  149. package/esm/redux/actions/FormAutosubmit.js.map +1 -1
  150. package/esm/redux/actions/FormValidations.js.map +1 -1
  151. package/esm/redux/actions/Notification.js.map +1 -1
  152. package/esm/redux/actions/Preferences.js.map +1 -1
  153. package/esm/redux/actions/ProgressIndicator.js.map +1 -1
  154. package/esm/redux/actions/SignIn.js.map +1 -1
  155. package/esm/redux/connectors/Application.js.map +1 -1
  156. package/esm/redux/connectors/Breadcrumb.js.map +1 -1
  157. package/esm/redux/connectors/CaseView.js.map +1 -1
  158. package/esm/redux/connectors/ConceptDetail.js.map +1 -1
  159. package/esm/redux/connectors/ContentBrowser.js.map +1 -1
  160. package/esm/redux/connectors/ContentDetail.js.map +1 -1
  161. package/esm/redux/connectors/ContentDetailSection.js.map +1 -1
  162. package/esm/redux/connectors/Form.js.map +1 -1
  163. package/esm/redux/connectors/FormAttributeSet.js.map +1 -1
  164. package/esm/redux/connectors/ListDetail.js.map +1 -1
  165. package/esm/redux/connectors/Modal.js.map +1 -1
  166. package/esm/redux/connectors/ModelCatalog.js.map +1 -1
  167. package/esm/redux/connectors/Notification.js.map +1 -1
  168. package/esm/redux/connectors/PanelRenderer.js.map +1 -1
  169. package/esm/redux/connectors/Preferences.js.map +1 -1
  170. package/esm/redux/connectors/Progress.js.map +1 -1
  171. package/esm/redux/connectors/ProgressIndicator.js.map +1 -1
  172. package/esm/redux/connectors/QuickSearch.js.map +1 -1
  173. package/esm/redux/connectors/SignIn.js.map +1 -1
  174. package/esm/redux/connectors/SignOut.js.map +1 -1
  175. package/esm/redux/connectors/Tab.js.map +1 -1
  176. package/esm/redux/reducers/AuthReducer.js.map +1 -1
  177. package/esm/redux/reducers/ErrorReducer.js.map +1 -1
  178. package/esm/redux/reducers/ModalsReducer.js.map +1 -1
  179. package/esm/redux/reducers/NotificationReducer.js.map +1 -1
  180. package/esm/redux/reducers/PreferencesReducer.js.map +1 -1
  181. package/esm/redux/reducers/ProgressIndicatorReducer.js.map +1 -1
  182. package/esm/redux/store/beforeRenderHooks.js.map +1 -1
  183. package/esm/redux/store/configureStore.js.map +1 -1
  184. package/esm/utils/browser/Cookies.js.map +1 -1
  185. package/esm/utils/datetime/DateTimeUtil.js.map +1 -1
  186. package/esm/utils/fetch/universalFetch.js.map +1 -1
  187. package/esm/utils/fetch/xhr.js.map +1 -1
  188. package/esm/utils/helpers/sanitizeHtml.js.map +1 -1
  189. package/esm/utils/helpers/text.js.map +1 -1
  190. package/esm/utils/number/DecimalFormat.js.map +1 -1
  191. package/esm/utils/number/formatValue.js.map +1 -1
  192. package/esm/utils/number/parseNumbers.js.map +1 -1
  193. package/lib/builder/__tests__/mergeLayoutHintConfigurations.spec.js.flow +4 -4
  194. package/lib/builder/mergeLayoutHintConfigurations.js.flow +3 -3
  195. package/lib/builder/mergeLayoutHintConfigurations.js.map +1 -1
  196. package/lib/constants/LayoutHints.js.flow +1 -1
  197. package/lib/constants/LayoutHints.js.map +1 -1
  198. package/lib/constants/Settings.js.flow +2 -2
  199. package/lib/constants/Settings.js.map +1 -1
  200. package/lib/exceptions/FetchException.js.flow +2 -2
  201. package/lib/exceptions/FetchException.js.map +1 -1
  202. package/lib/exceptions/NetworkException.js.flow +1 -1
  203. package/lib/exceptions/NetworkException.js.map +1 -1
  204. package/lib/exceptions/UnauthorizedException.js.flow +1 -1
  205. package/lib/exceptions/UnauthorizedException.js.map +1 -1
  206. package/lib/hooks/__tests__/UseModularUIModel.spec.js.flow +9 -9
  207. package/lib/hooks/__tests__/useAuthentication.spec.js.flow +2 -2
  208. package/lib/hooks/__tests__/useForm.spec.js.flow +2 -2
  209. package/lib/hooks/__tests__/useModelCatalog.spec.js.flow +7 -7
  210. package/lib/hooks/__tests__/useModularUIBasic.spec.js.flow +2 -2
  211. package/lib/hooks/__tests__/usePreference.spec.js.flow +1 -1
  212. package/lib/hooks/useAllFormsOnModel.js.flow +2 -2
  213. package/lib/hooks/useAllFormsOnModel.js.map +1 -1
  214. package/lib/hooks/useAuthentication.js.flow +2 -2
  215. package/lib/hooks/useAuthentication.js.map +1 -1
  216. package/lib/hooks/useContent.js.flow +1 -1
  217. package/lib/hooks/useContent.js.map +1 -1
  218. package/lib/hooks/useDeepCompareEffect.js.flow +1 -1
  219. package/lib/hooks/useDeepCompareEffect.js.map +1 -1
  220. package/lib/hooks/useForm.js.flow +4 -4
  221. package/lib/hooks/useForm.js.map +1 -1
  222. package/lib/hooks/useI18n.js.flow +3 -3
  223. package/lib/hooks/useI18n.js.map +1 -1
  224. package/lib/hooks/useModal.js.flow +2 -2
  225. package/lib/hooks/useModal.js.map +1 -1
  226. package/lib/hooks/useModelCatalog.js.flow +1 -1
  227. package/lib/hooks/useModelCatalog.js.map +1 -1
  228. package/lib/hooks/useModularUI.js.flow +1 -1
  229. package/lib/hooks/useModularUI.js.map +1 -1
  230. package/lib/hooks/useModularUIBasic.js.flow +1 -1
  231. package/lib/hooks/useModularUIBasic.js.map +1 -1
  232. package/lib/hooks/useModularUIModel.js.flow +1 -1
  233. package/lib/hooks/useModularUIModel.js.map +1 -1
  234. package/lib/hooks/useModularUIRequest.js.flow +1 -1
  235. package/lib/hooks/useModularUIRequest.js.map +1 -1
  236. package/lib/hooks/useNotification.js.flow +2 -2
  237. package/lib/hooks/useNotification.js.map +1 -1
  238. package/lib/hooks/usePreference.js +8 -2
  239. package/lib/hooks/usePreference.js.flow +17 -7
  240. package/lib/hooks/usePreference.js.map +1 -1
  241. package/lib/i18n/Locale.js.flow +4 -4
  242. package/lib/i18n/Locale.js.map +1 -1
  243. package/lib/i18n/Locales.js.flow +8 -8
  244. package/lib/i18n/Locales.js.map +1 -1
  245. package/lib/i18n/Message.js.flow +2 -2
  246. package/lib/i18n/Message.js.map +1 -1
  247. package/lib/i18n/__tests__/Locale.spec.js.flow +3 -3
  248. package/lib/i18n/__tests__/Locales.spec.js.flow +15 -13
  249. package/lib/i18n/withMessage.js.flow +4 -4
  250. package/lib/i18n/withMessage.js.map +1 -1
  251. package/lib/models/actions/ActionCollection.js.flow +4 -4
  252. package/lib/models/actions/ActionCollection.js.map +1 -1
  253. package/lib/models/actions/ActionModel.js.flow +4 -4
  254. package/lib/models/actions/ActionModel.js.map +1 -1
  255. package/lib/models/actions/__tests__/ActionCollection.spec.js.flow +3 -3
  256. package/lib/models/actions/__tests__/ActionModel.spec.js.flow +1 -1
  257. package/lib/models/application/ApplicationModel.js.flow +3 -3
  258. package/lib/models/application/ApplicationModel.js.map +1 -1
  259. package/lib/models/attributes/AttributeCollection.js.flow +7 -7
  260. package/lib/models/attributes/AttributeCollection.js.map +1 -1
  261. package/lib/models/attributes/AttributeContent.js.flow +9 -9
  262. package/lib/models/attributes/AttributeContent.js.map +1 -1
  263. package/lib/models/attributes/AttributeDataHelper.js.flow +9 -9
  264. package/lib/models/attributes/AttributeDataHelper.js.map +1 -1
  265. package/lib/models/attributes/AttributeModel.js.flow +24 -24
  266. package/lib/models/attributes/AttributeModel.js.map +1 -1
  267. package/lib/models/attributes/AttributeSetModel.js.flow +1 -1
  268. package/lib/models/attributes/AttributeSetModel.js.map +1 -1
  269. package/lib/models/attributes/BooleanAttributeModel.js.flow +4 -4
  270. package/lib/models/attributes/BooleanAttributeModel.js.map +1 -1
  271. package/lib/models/attributes/ChoiceAttributeModel.js +1 -1
  272. package/lib/models/attributes/ChoiceAttributeModel.js.flow +7 -7
  273. package/lib/models/attributes/ChoiceAttributeModel.js.map +1 -1
  274. package/lib/models/attributes/ChoiceAttributeOptionCollection.js.flow +15 -15
  275. package/lib/models/attributes/ChoiceAttributeOptionCollection.js.map +1 -1
  276. package/lib/models/attributes/ChoiceAttributeOptionModel.js +8 -0
  277. package/lib/models/attributes/ChoiceAttributeOptionModel.js.flow +19 -11
  278. package/lib/models/attributes/ChoiceAttributeOptionModel.js.map +1 -1
  279. package/lib/models/attributes/CompositeAttributeChildCollection.js.flow +10 -10
  280. package/lib/models/attributes/CompositeAttributeChildCollection.js.map +1 -1
  281. package/lib/models/attributes/CompositeAttributeModel.js.flow +7 -7
  282. package/lib/models/attributes/CompositeAttributeModel.js.map +1 -1
  283. package/lib/models/attributes/DatetimeAttributeModel.js.flow +6 -6
  284. package/lib/models/attributes/DatetimeAttributeModel.js.map +1 -1
  285. package/lib/models/attributes/NumberAttributeModel.js.flow +9 -9
  286. package/lib/models/attributes/NumberAttributeModel.js.map +1 -1
  287. package/lib/models/attributes/PasswordAttributeModel.js.flow +8 -8
  288. package/lib/models/attributes/PasswordAttributeModel.js.map +1 -1
  289. package/lib/models/attributes/StringAttributeModel.js.flow +3 -3
  290. package/lib/models/attributes/StringAttributeModel.js.map +1 -1
  291. package/lib/models/attributes/UploadAttributeModel.js.flow +5 -5
  292. package/lib/models/attributes/UploadAttributeModel.js.map +1 -1
  293. package/lib/models/attributes/__tests__/AttributeCollection.spec.js.flow +11 -11
  294. package/lib/models/attributes/__tests__/AttributeContent.spec.js.flow +7 -7
  295. package/lib/models/attributes/__tests__/AttributeModel.spec.js.flow +5 -5
  296. package/lib/models/attributes/__tests__/AttributeSetModel.spec.js.flow +2 -2
  297. package/lib/models/attributes/__tests__/BooleanAttributeModel.spec.js.flow +1 -1
  298. package/lib/models/attributes/__tests__/ChoiceAttributeModel.spec.js.flow +8 -8
  299. package/lib/models/attributes/__tests__/ChoiceAttributeOptionCollection.spec.js.flow +8 -8
  300. package/lib/models/attributes/__tests__/ChoiceAttributeOptionModel.spec.js.flow +1 -1
  301. package/lib/models/attributes/__tests__/DateAttributeModel.spec.js.flow +4 -4
  302. package/lib/models/attributes/__tests__/DatetimeAttributeModel.spec.js.flow +11 -11
  303. package/lib/models/attributes/__tests__/HelptextAttributeModel.spec.js.flow +3 -3
  304. package/lib/models/attributes/__tests__/MemoAttributeModel.spec.js.flow +1 -1
  305. package/lib/models/attributes/__tests__/MoneyAttributeModel.spec.js.flow +1 -1
  306. package/lib/models/attributes/__tests__/NumberAttributeModel.spec.js.flow +1 -1
  307. package/lib/models/attributes/__tests__/PasswordAttributeModel.spec.js.flow +1 -1
  308. package/lib/models/attributes/__tests__/StringAttributeModel.spec.js.flow +4 -4
  309. package/lib/models/attributes/__tests__/TimeAttributeModel.spec.js.flow +2 -2
  310. package/lib/models/attributes/__tests__/TimestampModel.spec.js.flow +2 -2
  311. package/lib/models/attributes/__tests__/UploadAttributeModel.spec.js.flow +4 -4
  312. package/lib/models/attributes/__tests__/_createAttribute.spec.js.flow +6 -6
  313. package/lib/models/attributes/__tests__/createAttributeComposite.spec.js.flow +3 -3
  314. package/lib/models/attributes/__tests__/createAttributeDynamicSchema.spec.js.flow +3 -3
  315. package/lib/models/attributes/_createAttribute.js.flow +5 -5
  316. package/lib/models/attributes/_createAttribute.js.map +1 -1
  317. package/lib/models/attributes/input-constraints/ConstraintCollection.js.flow +5 -5
  318. package/lib/models/attributes/input-constraints/ConstraintCollection.js.map +1 -1
  319. package/lib/models/attributes/input-constraints/ConstraintModel.js.flow +1 -1
  320. package/lib/models/attributes/input-constraints/ConstraintModel.js.map +1 -1
  321. package/lib/models/attributes/input-constraints/DateBoundaryConstraint.js.flow +6 -6
  322. package/lib/models/attributes/input-constraints/DateBoundaryConstraint.js.map +1 -1
  323. package/lib/models/attributes/input-constraints/MandatoryConstraint.js.flow +1 -1
  324. package/lib/models/attributes/input-constraints/MandatoryConstraint.js.map +1 -1
  325. package/lib/models/attributes/input-constraints/NumberBoundaryConstraint.js.flow +6 -6
  326. package/lib/models/attributes/input-constraints/NumberBoundaryConstraint.js.map +1 -1
  327. package/lib/models/attributes/input-constraints/NumberFormatConstraint.js.flow +2 -2
  328. package/lib/models/attributes/input-constraints/NumberFormatConstraint.js.map +1 -1
  329. package/lib/models/attributes/input-constraints/NumberGroupingConstraint.js.flow +2 -2
  330. package/lib/models/attributes/input-constraints/NumberGroupingConstraint.js.map +1 -1
  331. package/lib/models/attributes/input-constraints/__tests__/ConstraintModel.spec.js.flow +1 -1
  332. package/lib/models/attributes/input-constraints/__tests__/DateBoundaryConstraint.spec.js.flow +6 -6
  333. package/lib/models/attributes/input-constraints/__tests__/DateTimeDateFormatConstraint.spec.js.flow +2 -2
  334. package/lib/models/attributes/input-constraints/__tests__/DateTimeTimeFormatConstraint.spec.js.flow +2 -2
  335. package/lib/models/attributes/input-constraints/__tests__/DatetimeFormatConstraint.spec.js.flow +5 -5
  336. package/lib/models/attributes/input-constraints/__tests__/NumberBoundaryConstraint.spec.js.flow +6 -6
  337. package/lib/models/attributes/input-constraints/__tests__/NumberFormatConstraint.spec.js.flow +3 -3
  338. package/lib/models/attributes/input-constraints/__tests__/NumberGroupingConstraint.spec.js.flow +2 -2
  339. package/lib/models/attributes/input-constraints/__tests__/RegexConstraint.spec.js.flow +1 -1
  340. package/lib/models/attributes/input-constraints/__tests__/StringLengthConstraint.spec.js.flow +4 -4
  341. package/lib/models/attributes/layouthint-rules/BaseLayoutHintRule.js.flow +4 -4
  342. package/lib/models/attributes/layouthint-rules/BaseLayoutHintRule.js.map +1 -1
  343. package/lib/models/attributes/layouthint-rules/DependentAttribute.js.flow +15 -15
  344. package/lib/models/attributes/layouthint-rules/DependentAttribute.js.map +1 -1
  345. package/lib/models/attributes/layouthint-rules/LayoutHintRuleCollection.js.flow +2 -2
  346. package/lib/models/attributes/layouthint-rules/LayoutHintRuleCollection.js.map +1 -1
  347. package/lib/models/attributes/layouthint-rules/RemainingTotalUploadSize.js.flow +2 -2
  348. package/lib/models/attributes/layouthint-rules/RemainingTotalUploadSize.js.map +1 -1
  349. package/lib/models/attributes/layouthint-rules/__tests__/DependentAttribute.spec.js.flow +22 -22
  350. package/lib/models/attributes/layouthint-rules/__tests__/LayoutHintRuleCollection.spec.js.flow +1 -1
  351. package/lib/models/attributes/layouthint-rules/__tests__/RemainingTotalUploadSize.spec.js.flow +4 -4
  352. package/lib/models/base/BaseCollection.js.flow +6 -6
  353. package/lib/models/base/BaseCollection.js.map +1 -1
  354. package/lib/models/base/BaseModel.js.flow +1 -1
  355. package/lib/models/base/BaseModel.js.map +1 -1
  356. package/lib/models/base/ResourceModel.js.flow +5 -5
  357. package/lib/models/base/ResourceModel.js.map +1 -1
  358. package/lib/models/base/__tests__/ResourceCollection.spec.js.flow +1 -1
  359. package/lib/models/caseview/CaseViewModel.js.flow +4 -4
  360. package/lib/models/caseview/CaseViewModel.js.map +1 -1
  361. package/lib/models/caseview/__tests__/CaseViewModel.spec.js.flow +3 -3
  362. package/lib/models/concepts/BusinessScenarioModel.js.flow +9 -9
  363. package/lib/models/concepts/BusinessScenarioModel.js.map +1 -1
  364. package/lib/models/concepts/ConceptDetailModel.js.flow +17 -17
  365. package/lib/models/concepts/ConceptDetailModel.js.map +1 -1
  366. package/lib/models/concepts/ConceptIndexModel.js.flow +2 -2
  367. package/lib/models/concepts/ConceptIndexModel.js.map +1 -1
  368. package/lib/models/concepts/ConceptLinkModel.js.flow +6 -4
  369. package/lib/models/concepts/ConceptLinkModel.js.map +1 -1
  370. package/lib/models/concepts/ConceptRelationCollection.js.flow +5 -5
  371. package/lib/models/concepts/ConceptRelationCollection.js.map +1 -1
  372. package/lib/models/concepts/SourceReferenceCollection.js.flow +2 -2
  373. package/lib/models/concepts/SourceReferenceCollection.js.map +1 -1
  374. package/lib/models/concepts/SourceReferenceModel.js.flow +2 -2
  375. package/lib/models/concepts/SourceReferenceModel.js.map +1 -1
  376. package/lib/models/concepts/__tests__/ConceptDetailModel.spec.js.flow +1 -1
  377. package/lib/models/content/ContentIndexModel.js.flow +3 -3
  378. package/lib/models/content/ContentIndexModel.js.map +1 -1
  379. package/lib/models/content/ContentLinkModel.js.flow +11 -9
  380. package/lib/models/content/ContentLinkModel.js.map +1 -1
  381. package/lib/models/content/ContentModel.js.flow +2 -2
  382. package/lib/models/content/ContentModel.js.map +1 -1
  383. package/lib/models/content/ContentTOCModel.js.flow +4 -4
  384. package/lib/models/content/ContentTOCModel.js.map +1 -1
  385. package/lib/models/content/SectionModel.js.flow +4 -4
  386. package/lib/models/content/SectionModel.js.map +1 -1
  387. package/lib/models/content/SubSectionModel.js.flow +2 -2
  388. package/lib/models/content/SubSectionModel.js.map +1 -1
  389. package/lib/models/content/__tests__/ContentModel.spec.js.flow +16 -16
  390. package/lib/models/contentconfiguration/ContentConfiguration.js.flow +1 -1
  391. package/lib/models/contentconfiguration/ContentConfiguration.js.map +1 -1
  392. package/lib/models/contentconfiguration/ContentConfigurationElements.js.flow +5 -5
  393. package/lib/models/contentconfiguration/ContentConfigurationElements.js.map +1 -1
  394. package/lib/models/contentconfiguration/ContentConfigurationEndResults.js.flow +1 -1
  395. package/lib/models/contentconfiguration/ContentConfigurationEndResults.js.map +1 -1
  396. package/lib/models/contentconfiguration/ContentConfigurationQuestions.js.flow +2 -2
  397. package/lib/models/contentconfiguration/ContentConfigurationQuestions.js.map +1 -1
  398. package/lib/models/contentconfiguration/__tests__/ContentConfigurationResults.spec.js.flow +12 -12
  399. package/lib/models/detail/DetailModel.js.flow +5 -5
  400. package/lib/models/detail/DetailModel.js.map +1 -1
  401. package/lib/models/error/ErrorCollection.js.flow +4 -4
  402. package/lib/models/error/ErrorCollection.js.map +1 -1
  403. package/lib/models/error/ErrorModel.js.flow +1 -1
  404. package/lib/models/error/ErrorModel.js.map +1 -1
  405. package/lib/models/error/__tests__/ErrorModel.spec.js.flow +1 -1
  406. package/lib/models/filters/AssignmentFilterModel.js.flow +3 -3
  407. package/lib/models/filters/AssignmentFilterModel.js.map +1 -1
  408. package/lib/models/filters/BaseFilterModel.js.flow +3 -3
  409. package/lib/models/filters/BaseFilterModel.js.map +1 -1
  410. package/lib/models/filters/FilterCollection.js.flow +5 -5
  411. package/lib/models/filters/FilterCollection.js.map +1 -1
  412. package/lib/models/filters/__tests__/AssignmentFilterModel.spec.js.flow +4 -4
  413. package/lib/models/filters/__tests__/FilterCollection.spec.js.flow +11 -11
  414. package/lib/models/filters/__tests__/FilterModel.spec.js.flow +1 -1
  415. package/lib/models/filters/__tests__/RangeFilterModel.spec.js.flow +1 -1
  416. package/lib/models/form/FormModel.js.flow +39 -39
  417. package/lib/models/form/FormModel.js.map +1 -1
  418. package/lib/models/form/FormObjectModel.js.flow +16 -16
  419. package/lib/models/form/FormObjectModel.js.map +1 -1
  420. package/lib/models/form/__tests__/FormModel.instrument.spec.js.flow +7 -7
  421. package/lib/models/form/__tests__/FormModel.repeating.spec.js.flow +2 -2
  422. package/lib/models/form/__tests__/FormModel.selfhref.spec.js.flow +1 -1
  423. package/lib/models/form/__tests__/FormModel.spec.js.flow +6 -6
  424. package/lib/models/form/__tests__/FormResultData.spec.js.flow +1 -1
  425. package/lib/models/form/__tests__/FormWithContent.spec.js.flow +3 -3
  426. package/lib/models/grouping/GroupingModel.js.flow +7 -7
  427. package/lib/models/grouping/GroupingModel.js.map +1 -1
  428. package/lib/models/grouping/__tests__/GroupingModel.spec.js.flow +2 -2
  429. package/lib/models/href/Href.js.flow +6 -6
  430. package/lib/models/href/Href.js.map +1 -1
  431. package/lib/models/href/__tests__/Href.spec.js.flow +18 -16
  432. package/lib/models/layouthint/LayoutHintCollection.js.flow +3 -3
  433. package/lib/models/layouthint/LayoutHintCollection.js.map +1 -1
  434. package/lib/models/links/LinkCollection.js.flow +4 -4
  435. package/lib/models/links/LinkCollection.js.map +1 -1
  436. package/lib/models/links/LinkModel.js.flow +3 -3
  437. package/lib/models/links/LinkModel.js.map +1 -1
  438. package/lib/models/links/__tests__/LinkModel.spec.js.flow +4 -4
  439. package/lib/models/links/normalizeLinkJSON.js.flow +6 -6
  440. package/lib/models/links/normalizeLinkJSON.js.map +1 -1
  441. package/lib/models/list/ListDetailModel.js.flow +7 -7
  442. package/lib/models/list/ListDetailModel.js.map +1 -1
  443. package/lib/models/list/ListItemCollection.js.flow +2 -2
  444. package/lib/models/list/ListItemCollection.js.map +1 -1
  445. package/lib/models/list/ListItemModel.js.flow +2 -2
  446. package/lib/models/list/ListItemModel.js.map +1 -1
  447. package/lib/models/list/ListModel.js.flow +6 -6
  448. package/lib/models/list/ListModel.js.map +1 -1
  449. package/lib/models/list/__tests__/ListDetailModel.spec.js.flow +4 -4
  450. package/lib/models/list/__tests__/ListItemCollection.spec.js.flow +1 -1
  451. package/lib/models/list/__tests__/ListModel.spec.js.flow +3 -3
  452. package/lib/models/list/__tests__/ListResultDetail.spec.js.flow +3 -3
  453. package/lib/models/lookup/LookupOptionCollection.js.flow +1 -1
  454. package/lib/models/lookup/LookupOptionCollection.js.map +1 -1
  455. package/lib/models/lookup/LookupOptionsModel.js.flow +4 -4
  456. package/lib/models/lookup/LookupOptionsModel.js.map +1 -1
  457. package/lib/models/lookup/__tests__/LookupOptionsModel.spec.js.flow +3 -3
  458. package/lib/models/modelcatalog/ModelCatalogModel.js.flow +2 -2
  459. package/lib/models/modelcatalog/ModelCatalogModel.js.map +1 -1
  460. package/lib/models/paging/PagingModel.js.flow +1 -1
  461. package/lib/models/paging/PagingModel.js.map +1 -1
  462. package/lib/models/paging/__tests__/PagingModel.spec.js.flow +2 -2
  463. package/lib/models/panels/GroupingPanelModel.js.flow +5 -5
  464. package/lib/models/panels/GroupingPanelModel.js.map +1 -1
  465. package/lib/models/panels/__tests__/GroupingPanelModel.spec.js.flow +8 -8
  466. package/lib/models/parameter/__tests__/Parameter.spec.js.flow +5 -5
  467. package/lib/models/process/ProcessStatusSettingsModel.js.flow +1 -1
  468. package/lib/models/process/ProcessStatusSettingsModel.js.map +1 -1
  469. package/lib/models/process/__tests__/ProcessStatusSettingsModel.spec.js.flow +1 -1
  470. package/lib/models/resolveModel.js.flow +4 -4
  471. package/lib/models/resolveModel.js.map +1 -1
  472. package/lib/models/sorting/SortingModel.js.flow +4 -4
  473. package/lib/models/sorting/SortingModel.js.map +1 -1
  474. package/lib/models/sorting/__tests__/SortingModel.spec.js.flow +3 -3
  475. package/lib/models/tab/TabModel.js.flow +3 -3
  476. package/lib/models/tab/TabModel.js.map +1 -1
  477. package/lib/models/tab/__tests__/TabModel.spec.js.flow +5 -5
  478. package/lib/models/taskgroup/TaskGroupModel.js.flow +2 -2
  479. package/lib/models/taskgroup/TaskGroupModel.js.map +1 -1
  480. package/lib/models/types.js.flow +1 -1
  481. package/lib/models/types.js.map +1 -1
  482. package/lib/models/user/UserProfileModel.js.flow +1 -1
  483. package/lib/models/user/UserProfileModel.js.map +1 -1
  484. package/lib/models/user/__tests__/UserModel.spec.js.flow +2 -2
  485. package/lib/models/user/__tests__/UserProfileModel.spec.js.flow +2 -2
  486. package/lib/models/user/__tests__/UserServicesModel.spec.js.flow +1 -1
  487. package/lib/modularui/CaptchaRequest.js.flow +1 -1
  488. package/lib/modularui/CaptchaRequest.js.map +1 -1
  489. package/lib/modularui/ModularUIRequest.js.flow +26 -26
  490. package/lib/modularui/ModularUIRequest.js.map +1 -1
  491. package/lib/modularui/UploadRequest.js.flow +6 -6
  492. package/lib/modularui/UploadRequest.js.map +1 -1
  493. package/lib/modularui/__tests__/ModularUIError.spec.js.flow +1 -1
  494. package/lib/modularui/__tests__/ModularUIRequest.spec.js.flow +9 -9
  495. package/lib/react/utils.js.flow +1 -1
  496. package/lib/react/utils.js.map +1 -1
  497. package/lib/react-client/client.js +1 -0
  498. package/lib/react-client/client.js.flow +11 -10
  499. package/lib/react-client/client.js.map +1 -1
  500. package/lib/react-client/contextPath.js.flow +2 -2
  501. package/lib/react-client/contextPath.js.map +1 -1
  502. package/lib/react-client/rehydrate.js.flow +1 -1
  503. package/lib/react-client/rehydrate.js.map +1 -1
  504. package/lib/react-server/__tests__/serverUtil.spec.js.flow +2 -2
  505. package/lib/react-server/createSSRComplete.js.flow +3 -3
  506. package/lib/react-server/createSSRComplete.js.map +1 -1
  507. package/lib/react-server/renderSSRComplete.js.flow +4 -4
  508. package/lib/react-server/renderSSRComplete.js.map +1 -1
  509. package/lib/react-server/renderSSRMinimal.js.flow +1 -1
  510. package/lib/react-server/renderSSRMinimal.js.map +1 -1
  511. package/lib/react-server/requestInformation.js.flow +2 -2
  512. package/lib/react-server/requestInformation.js.map +1 -1
  513. package/lib/react-server/serverUtil.js.flow +8 -8
  514. package/lib/react-server/serverUtil.js.map +1 -1
  515. package/lib/react-theme/__tests__/createTheme.spec.js.flow +4 -4
  516. package/lib/react-theme/createTheme.js.flow +1 -1
  517. package/lib/react-theme/createTheme.js.map +1 -1
  518. package/lib/react-theme/utils/__tests__/background.spec.js.flow +2 -2
  519. package/lib/react-theme/utils/__tests__/contrast.spec.js.flow +1 -1
  520. package/lib/react-theme/utils/__tests__/corners.spec.js.flow +3 -3
  521. package/lib/react-theme/utils/__tests__/spacers.spec.js.flow +1 -1
  522. package/lib/react-theme/utils/__tests__/themeProps.spec.js.flow +9 -9
  523. package/lib/react-theme/utils/colors.js.flow +3 -3
  524. package/lib/react-theme/utils/colors.js.map +1 -1
  525. package/lib/react-theme/utils/contrast.js.flow +6 -6
  526. package/lib/react-theme/utils/contrast.js.map +1 -1
  527. package/lib/react-theme/utils/corners.js.flow +2 -2
  528. package/lib/react-theme/utils/corners.js.map +1 -1
  529. package/lib/react-theme/utils/spacers.js.flow +2 -2
  530. package/lib/react-theme/utils/spacers.js.map +1 -1
  531. package/lib/react-theme/utils/themeProps.js.flow +8 -8
  532. package/lib/react-theme/utils/themeProps.js.map +1 -1
  533. package/lib/redux/_i18n/I18nActions.js.flow +1 -1
  534. package/lib/redux/_i18n/I18nActions.js.map +1 -1
  535. package/lib/redux/_i18n/I18nReducer.js.flow +2 -2
  536. package/lib/redux/_i18n/I18nReducer.js.map +1 -1
  537. package/lib/redux/_i18n/__tests__/reducer.spec.js.flow +2 -2
  538. package/lib/redux/_modularui/ModularUIActions.js.flow +8 -8
  539. package/lib/redux/_modularui/ModularUIActions.js.map +1 -1
  540. package/lib/redux/_modularui/ModularUIConnector.js.flow +4 -4
  541. package/lib/redux/_modularui/ModularUIConnector.js.map +1 -1
  542. package/lib/redux/_modularui/ModularUIMiddleware.js.flow +6 -6
  543. package/lib/redux/_modularui/ModularUIMiddleware.js.map +1 -1
  544. package/lib/redux/_modularui/ModularUIReducer.js.flow +5 -5
  545. package/lib/redux/_modularui/ModularUIReducer.js.map +1 -1
  546. package/lib/redux/_modularui/ModularUISelectors.js.flow +11 -11
  547. package/lib/redux/_modularui/ModularUISelectors.js.map +1 -1
  548. package/lib/redux/_modularui/ModularUIUtils.js.flow +1 -1
  549. package/lib/redux/_modularui/ModularUIUtils.js.map +1 -1
  550. package/lib/redux/_modularui/__tests__/actions.spec.js.flow +1 -1
  551. package/lib/redux/_modularui/__tests__/reducer.spec.js.flow +13 -13
  552. package/lib/redux/_modularui/__tests__/selectors.spec.js.flow +3 -3
  553. package/lib/redux/_modularui/types.js.flow +4 -4
  554. package/lib/redux/_modularui/types.js.map +1 -1
  555. package/lib/redux/_modularui/withModularUI.js.flow +3 -3
  556. package/lib/redux/_modularui/withModularUI.js.map +1 -1
  557. package/lib/redux/_router/RouterActions.js.flow +3 -3
  558. package/lib/redux/_router/RouterActions.js.map +1 -1
  559. package/lib/redux/_router/RouterConnectors.js.flow +5 -5
  560. package/lib/redux/_router/RouterConnectors.js.map +1 -1
  561. package/lib/redux/_router/RouterReducer.js.flow +1 -1
  562. package/lib/redux/_router/RouterReducer.js.map +1 -1
  563. package/lib/redux/_router/__tests__/reducer.spec.js.flow +2 -2
  564. package/lib/redux/actions/Application.js.flow +1 -1
  565. package/lib/redux/actions/Application.js.map +1 -1
  566. package/lib/redux/actions/Authorization.js.flow +1 -1
  567. package/lib/redux/actions/Authorization.js.map +1 -1
  568. package/lib/redux/actions/Error.js.flow +3 -3
  569. package/lib/redux/actions/Error.js.map +1 -1
  570. package/lib/redux/actions/FormAttributeSet.js.flow +2 -2
  571. package/lib/redux/actions/FormAttributeSet.js.map +1 -1
  572. package/lib/redux/actions/FormAttributeSetRepeatable.js.flow +3 -3
  573. package/lib/redux/actions/FormAttributeSetRepeatable.js.map +1 -1
  574. package/lib/redux/actions/FormAutosave.js.flow +1 -1
  575. package/lib/redux/actions/FormAutosave.js.map +1 -1
  576. package/lib/redux/actions/FormAutosubmit.js.flow +1 -1
  577. package/lib/redux/actions/FormAutosubmit.js.map +1 -1
  578. package/lib/redux/actions/FormValidations.js.flow +3 -3
  579. package/lib/redux/actions/FormValidations.js.map +1 -1
  580. package/lib/redux/actions/Notification.js.flow +4 -4
  581. package/lib/redux/actions/Notification.js.map +1 -1
  582. package/lib/redux/actions/Preferences.js.flow +11 -11
  583. package/lib/redux/actions/Preferences.js.map +1 -1
  584. package/lib/redux/actions/ProgressIndicator.js.flow +1 -1
  585. package/lib/redux/actions/ProgressIndicator.js.map +1 -1
  586. package/lib/redux/actions/SignIn.js.flow +3 -3
  587. package/lib/redux/actions/SignIn.js.map +1 -1
  588. package/lib/redux/actions/__tests__/Authorization.spec.js.flow +2 -2
  589. package/lib/redux/actions/__tests__/Error-server.spec.js.flow +13 -13
  590. package/lib/redux/actions/__tests__/Error.spec.js.flow +6 -6
  591. package/lib/redux/actions/__tests__/Notification.spec.js.flow +1 -1
  592. package/lib/redux/actions/__tests__/Preferences.spec.js.flow +2 -2
  593. package/lib/redux/connectors/Application.js.flow +1 -1
  594. package/lib/redux/connectors/Application.js.map +1 -1
  595. package/lib/redux/connectors/Breadcrumb.js.flow +1 -1
  596. package/lib/redux/connectors/Breadcrumb.js.map +1 -1
  597. package/lib/redux/connectors/CaseView.js.flow +1 -1
  598. package/lib/redux/connectors/CaseView.js.map +1 -1
  599. package/lib/redux/connectors/ConceptDetail.js.flow +1 -1
  600. package/lib/redux/connectors/ConceptDetail.js.map +1 -1
  601. package/lib/redux/connectors/ContentBrowser.js.flow +1 -1
  602. package/lib/redux/connectors/ContentBrowser.js.map +1 -1
  603. package/lib/redux/connectors/ContentDetail.js.flow +1 -1
  604. package/lib/redux/connectors/ContentDetail.js.map +1 -1
  605. package/lib/redux/connectors/ContentDetailSection.js.flow +2 -2
  606. package/lib/redux/connectors/ContentDetailSection.js.map +1 -1
  607. package/lib/redux/connectors/Form.js.flow +5 -5
  608. package/lib/redux/connectors/Form.js.map +1 -1
  609. package/lib/redux/connectors/FormAttributeSet.js.flow +6 -6
  610. package/lib/redux/connectors/FormAttributeSet.js.map +1 -1
  611. package/lib/redux/connectors/ListDetail.js.flow +1 -1
  612. package/lib/redux/connectors/ListDetail.js.map +1 -1
  613. package/lib/redux/connectors/Modal.js.flow +1 -1
  614. package/lib/redux/connectors/Modal.js.map +1 -1
  615. package/lib/redux/connectors/ModelCatalog.js.flow +1 -1
  616. package/lib/redux/connectors/ModelCatalog.js.map +1 -1
  617. package/lib/redux/connectors/Notification.js.flow +1 -1
  618. package/lib/redux/connectors/Notification.js.map +1 -1
  619. package/lib/redux/connectors/PanelRenderer.js.flow +2 -2
  620. package/lib/redux/connectors/PanelRenderer.js.map +1 -1
  621. package/lib/redux/connectors/Preferences.js.flow +3 -3
  622. package/lib/redux/connectors/Preferences.js.map +1 -1
  623. package/lib/redux/connectors/Progress.js.flow +1 -1
  624. package/lib/redux/connectors/Progress.js.map +1 -1
  625. package/lib/redux/connectors/ProgressIndicator.js.flow +1 -1
  626. package/lib/redux/connectors/ProgressIndicator.js.map +1 -1
  627. package/lib/redux/connectors/QuickSearch.js.flow +2 -2
  628. package/lib/redux/connectors/QuickSearch.js.map +1 -1
  629. package/lib/redux/connectors/SignIn.js.flow +1 -1
  630. package/lib/redux/connectors/SignIn.js.map +1 -1
  631. package/lib/redux/connectors/SignOut.js.flow +1 -1
  632. package/lib/redux/connectors/SignOut.js.map +1 -1
  633. package/lib/redux/connectors/Tab.js.flow +1 -1
  634. package/lib/redux/connectors/Tab.js.map +1 -1
  635. package/lib/redux/reducers/AuthReducer.js.flow +1 -1
  636. package/lib/redux/reducers/AuthReducer.js.map +1 -1
  637. package/lib/redux/reducers/ErrorReducer.js.flow +1 -1
  638. package/lib/redux/reducers/ErrorReducer.js.map +1 -1
  639. package/lib/redux/reducers/ModalsReducer.js.flow +1 -1
  640. package/lib/redux/reducers/ModalsReducer.js.map +1 -1
  641. package/lib/redux/reducers/NotificationReducer.js.flow +1 -1
  642. package/lib/redux/reducers/NotificationReducer.js.map +1 -1
  643. package/lib/redux/reducers/PreferencesReducer.js.flow +1 -1
  644. package/lib/redux/reducers/PreferencesReducer.js.map +1 -1
  645. package/lib/redux/reducers/ProgressIndicatorReducer.js.flow +1 -1
  646. package/lib/redux/reducers/ProgressIndicatorReducer.js.map +1 -1
  647. package/lib/redux/reducers/__tests__/AuthReducer.spec.js.flow +10 -10
  648. package/lib/redux/reducers/__tests__/ErrorReducer.spec.js.flow +1 -1
  649. package/lib/redux/reducers/__tests__/ModalsReducer.spec.js.flow +3 -3
  650. package/lib/redux/reducers/__tests__/NotificationReducer.spec.js.flow +3 -3
  651. package/lib/redux/reducers/__tests__/PreferencesReducer.spec.js.flow +2 -2
  652. package/lib/redux/reducers/__tests__/ProgressIndicatorReducer.spec.js.flow +8 -8
  653. package/lib/redux/store/beforeRenderHooks.js.flow +1 -1
  654. package/lib/redux/store/beforeRenderHooks.js.map +1 -1
  655. package/lib/redux/store/configureStore.js.flow +3 -3
  656. package/lib/redux/store/configureStore.js.map +1 -1
  657. package/lib/utils/browser/Cookies.js.flow +1 -1
  658. package/lib/utils/browser/Cookies.js.map +1 -1
  659. package/lib/utils/browser/__tests__/Cookies.spec.js.flow +1 -1
  660. package/lib/utils/datetime/DateTimeUtil.js.flow +15 -15
  661. package/lib/utils/datetime/DateTimeUtil.js.map +1 -1
  662. package/lib/utils/datetime/__tests__/DateTime.spec.js.flow +84 -81
  663. package/lib/utils/fetch/__tests__/xhr.spec.js.flow +2 -2
  664. package/lib/utils/fetch/universalFetch.js.flow +1 -1
  665. package/lib/utils/fetch/universalFetch.js.map +1 -1
  666. package/lib/utils/fetch/xhr.js.flow +6 -6
  667. package/lib/utils/fetch/xhr.js.map +1 -1
  668. package/lib/utils/helpers/__tests__/sanitizeHTML.spec.js.flow +8 -8
  669. package/lib/utils/helpers/sanitizeHtml.js.flow +3 -3
  670. package/lib/utils/helpers/sanitizeHtml.js.map +1 -1
  671. package/lib/utils/helpers/text.js.flow +1 -1
  672. package/lib/utils/helpers/text.js.map +1 -1
  673. package/lib/utils/number/DecimalFormat.js.flow +2 -2
  674. package/lib/utils/number/DecimalFormat.js.map +1 -1
  675. package/lib/utils/number/__tests__/formatValue.spec.js.flow +1 -1
  676. package/lib/utils/number/formatValue.js.flow +2 -2
  677. package/lib/utils/number/formatValue.js.map +1 -1
  678. package/lib/utils/number/parseNumbers.js.flow +7 -7
  679. package/lib/utils/number/parseNumbers.js.map +1 -1
  680. package/package.json +20 -20
  681. package/src/builder/__tests__/mergeLayoutHintConfigurations.spec.js +4 -4
  682. package/src/builder/mergeLayoutHintConfigurations.js +3 -3
  683. package/src/constants/LayoutHints.js +1 -1
  684. package/src/constants/Settings.js +2 -2
  685. package/src/exceptions/FetchException.js +2 -2
  686. package/src/exceptions/NetworkException.js +1 -1
  687. package/src/exceptions/UnauthorizedException.js +1 -1
  688. package/src/hooks/__tests__/UseModularUIModel.spec.js +9 -9
  689. package/src/hooks/__tests__/useAuthentication.spec.js +2 -2
  690. package/src/hooks/__tests__/useForm.spec.js +2 -2
  691. package/src/hooks/__tests__/useModelCatalog.spec.js +7 -7
  692. package/src/hooks/__tests__/useModularUIBasic.spec.js +2 -2
  693. package/src/hooks/__tests__/usePreference.spec.js +1 -1
  694. package/src/hooks/useAllFormsOnModel.js +2 -2
  695. package/src/hooks/useAuthentication.js +2 -2
  696. package/src/hooks/useContent.js +1 -1
  697. package/src/hooks/useDeepCompareEffect.js +1 -1
  698. package/src/hooks/useForm.js +4 -4
  699. package/src/hooks/useI18n.js +3 -3
  700. package/src/hooks/useModal.js +2 -2
  701. package/src/hooks/useModelCatalog.js +1 -1
  702. package/src/hooks/useModularUI.js +1 -1
  703. package/src/hooks/useModularUIBasic.js +1 -1
  704. package/src/hooks/useModularUIModel.js +1 -1
  705. package/src/hooks/useModularUIRequest.js +1 -1
  706. package/src/hooks/useNotification.js +2 -2
  707. package/src/hooks/usePreference.js +17 -7
  708. package/src/i18n/Locale.js +4 -4
  709. package/src/i18n/Locales.js +8 -8
  710. package/src/i18n/Message.js +2 -2
  711. package/src/i18n/__tests__/Locale.spec.js +3 -3
  712. package/src/i18n/__tests__/Locales.spec.js +15 -13
  713. package/src/i18n/withMessage.js +4 -4
  714. package/src/models/actions/ActionCollection.js +4 -4
  715. package/src/models/actions/ActionModel.js +4 -4
  716. package/src/models/actions/__tests__/ActionCollection.spec.js +3 -3
  717. package/src/models/actions/__tests__/ActionModel.spec.js +1 -1
  718. package/src/models/application/ApplicationModel.js +3 -3
  719. package/src/models/attributes/AttributeCollection.js +7 -7
  720. package/src/models/attributes/AttributeContent.js +9 -9
  721. package/src/models/attributes/AttributeDataHelper.js +9 -9
  722. package/src/models/attributes/AttributeModel.js +24 -24
  723. package/src/models/attributes/AttributeSetModel.js +1 -1
  724. package/src/models/attributes/BooleanAttributeModel.js +4 -4
  725. package/src/models/attributes/ChoiceAttributeModel.js +7 -7
  726. package/src/models/attributes/ChoiceAttributeOptionCollection.js +15 -15
  727. package/src/models/attributes/ChoiceAttributeOptionModel.js +19 -11
  728. package/src/models/attributes/CompositeAttributeChildCollection.js +10 -10
  729. package/src/models/attributes/CompositeAttributeModel.js +7 -7
  730. package/src/models/attributes/DatetimeAttributeModel.js +6 -6
  731. package/src/models/attributes/NumberAttributeModel.js +9 -9
  732. package/src/models/attributes/PasswordAttributeModel.js +8 -8
  733. package/src/models/attributes/StringAttributeModel.js +3 -3
  734. package/src/models/attributes/UploadAttributeModel.js +5 -5
  735. package/src/models/attributes/__tests__/AttributeCollection.spec.js +11 -11
  736. package/src/models/attributes/__tests__/AttributeContent.spec.js +7 -7
  737. package/src/models/attributes/__tests__/AttributeModel.spec.js +5 -5
  738. package/src/models/attributes/__tests__/AttributeSetModel.spec.js +2 -2
  739. package/src/models/attributes/__tests__/BooleanAttributeModel.spec.js +1 -1
  740. package/src/models/attributes/__tests__/ChoiceAttributeModel.spec.js +8 -8
  741. package/src/models/attributes/__tests__/ChoiceAttributeOptionCollection.spec.js +8 -8
  742. package/src/models/attributes/__tests__/ChoiceAttributeOptionModel.spec.js +1 -1
  743. package/src/models/attributes/__tests__/DateAttributeModel.spec.js +4 -4
  744. package/src/models/attributes/__tests__/DatetimeAttributeModel.spec.js +11 -11
  745. package/src/models/attributes/__tests__/HelptextAttributeModel.spec.js +3 -3
  746. package/src/models/attributes/__tests__/MemoAttributeModel.spec.js +1 -1
  747. package/src/models/attributes/__tests__/MoneyAttributeModel.spec.js +1 -1
  748. package/src/models/attributes/__tests__/NumberAttributeModel.spec.js +1 -1
  749. package/src/models/attributes/__tests__/PasswordAttributeModel.spec.js +1 -1
  750. package/src/models/attributes/__tests__/StringAttributeModel.spec.js +4 -4
  751. package/src/models/attributes/__tests__/TimeAttributeModel.spec.js +2 -2
  752. package/src/models/attributes/__tests__/TimestampModel.spec.js +2 -2
  753. package/src/models/attributes/__tests__/UploadAttributeModel.spec.js +4 -4
  754. package/src/models/attributes/__tests__/_createAttribute.spec.js +6 -6
  755. package/src/models/attributes/__tests__/createAttributeComposite.spec.js +3 -3
  756. package/src/models/attributes/__tests__/createAttributeDynamicSchema.spec.js +3 -3
  757. package/src/models/attributes/_createAttribute.js +5 -5
  758. package/src/models/attributes/input-constraints/ConstraintCollection.js +5 -5
  759. package/src/models/attributes/input-constraints/ConstraintModel.js +1 -1
  760. package/src/models/attributes/input-constraints/DateBoundaryConstraint.js +6 -6
  761. package/src/models/attributes/input-constraints/MandatoryConstraint.js +1 -1
  762. package/src/models/attributes/input-constraints/NumberBoundaryConstraint.js +6 -6
  763. package/src/models/attributes/input-constraints/NumberFormatConstraint.js +2 -2
  764. package/src/models/attributes/input-constraints/NumberGroupingConstraint.js +2 -2
  765. package/src/models/attributes/input-constraints/__tests__/ConstraintModel.spec.js +1 -1
  766. package/src/models/attributes/input-constraints/__tests__/DateBoundaryConstraint.spec.js +6 -6
  767. package/src/models/attributes/input-constraints/__tests__/DateTimeDateFormatConstraint.spec.js +2 -2
  768. package/src/models/attributes/input-constraints/__tests__/DateTimeTimeFormatConstraint.spec.js +2 -2
  769. package/src/models/attributes/input-constraints/__tests__/DatetimeFormatConstraint.spec.js +5 -5
  770. package/src/models/attributes/input-constraints/__tests__/NumberBoundaryConstraint.spec.js +6 -6
  771. package/src/models/attributes/input-constraints/__tests__/NumberFormatConstraint.spec.js +3 -3
  772. package/src/models/attributes/input-constraints/__tests__/NumberGroupingConstraint.spec.js +2 -2
  773. package/src/models/attributes/input-constraints/__tests__/RegexConstraint.spec.js +1 -1
  774. package/src/models/attributes/input-constraints/__tests__/StringLengthConstraint.spec.js +4 -4
  775. package/src/models/attributes/layouthint-rules/BaseLayoutHintRule.js +4 -4
  776. package/src/models/attributes/layouthint-rules/DependentAttribute.js +15 -15
  777. package/src/models/attributes/layouthint-rules/LayoutHintRuleCollection.js +2 -2
  778. package/src/models/attributes/layouthint-rules/RemainingTotalUploadSize.js +2 -2
  779. package/src/models/attributes/layouthint-rules/__tests__/DependentAttribute.spec.js +22 -22
  780. package/src/models/attributes/layouthint-rules/__tests__/LayoutHintRuleCollection.spec.js +1 -1
  781. package/src/models/attributes/layouthint-rules/__tests__/RemainingTotalUploadSize.spec.js +4 -4
  782. package/src/models/base/BaseCollection.js +6 -6
  783. package/src/models/base/BaseModel.js +1 -1
  784. package/src/models/base/ResourceModel.js +5 -5
  785. package/src/models/base/__tests__/ResourceCollection.spec.js +1 -1
  786. package/src/models/caseview/CaseViewModel.js +4 -4
  787. package/src/models/caseview/__tests__/CaseViewModel.spec.js +3 -3
  788. package/src/models/concepts/BusinessScenarioModel.js +9 -9
  789. package/src/models/concepts/ConceptDetailModel.js +17 -17
  790. package/src/models/concepts/ConceptIndexModel.js +2 -2
  791. package/src/models/concepts/ConceptLinkModel.js +6 -4
  792. package/src/models/concepts/ConceptRelationCollection.js +5 -5
  793. package/src/models/concepts/SourceReferenceCollection.js +2 -2
  794. package/src/models/concepts/SourceReferenceModel.js +2 -2
  795. package/src/models/concepts/__tests__/ConceptDetailModel.spec.js +1 -1
  796. package/src/models/content/ContentIndexModel.js +3 -3
  797. package/src/models/content/ContentLinkModel.js +11 -9
  798. package/src/models/content/ContentModel.js +2 -2
  799. package/src/models/content/ContentTOCModel.js +4 -4
  800. package/src/models/content/SectionModel.js +4 -4
  801. package/src/models/content/SubSectionModel.js +2 -2
  802. package/src/models/content/__tests__/ContentModel.spec.js +16 -16
  803. package/src/models/contentconfiguration/ContentConfiguration.js +1 -1
  804. package/src/models/contentconfiguration/ContentConfigurationElements.js +5 -5
  805. package/src/models/contentconfiguration/ContentConfigurationEndResults.js +1 -1
  806. package/src/models/contentconfiguration/ContentConfigurationQuestions.js +2 -2
  807. package/src/models/contentconfiguration/__tests__/ContentConfigurationResults.spec.js +12 -12
  808. package/src/models/detail/DetailModel.js +5 -5
  809. package/src/models/error/ErrorCollection.js +4 -4
  810. package/src/models/error/ErrorModel.js +1 -1
  811. package/src/models/error/__tests__/ErrorModel.spec.js +1 -1
  812. package/src/models/filters/AssignmentFilterModel.js +3 -3
  813. package/src/models/filters/BaseFilterModel.js +3 -3
  814. package/src/models/filters/FilterCollection.js +5 -5
  815. package/src/models/filters/__tests__/AssignmentFilterModel.spec.js +4 -4
  816. package/src/models/filters/__tests__/FilterCollection.spec.js +11 -11
  817. package/src/models/filters/__tests__/FilterModel.spec.js +1 -1
  818. package/src/models/filters/__tests__/RangeFilterModel.spec.js +1 -1
  819. package/src/models/form/FormModel.js +39 -39
  820. package/src/models/form/FormObjectModel.js +16 -16
  821. package/src/models/form/__tests__/FormModel.instrument.spec.js +7 -7
  822. package/src/models/form/__tests__/FormModel.repeating.spec.js +2 -2
  823. package/src/models/form/__tests__/FormModel.selfhref.spec.js +1 -1
  824. package/src/models/form/__tests__/FormModel.spec.js +6 -6
  825. package/src/models/form/__tests__/FormResultData.spec.js +1 -1
  826. package/src/models/form/__tests__/FormWithContent.spec.js +3 -3
  827. package/src/models/grouping/GroupingModel.js +7 -7
  828. package/src/models/grouping/__tests__/GroupingModel.spec.js +2 -2
  829. package/src/models/href/Href.js +6 -6
  830. package/src/models/href/__tests__/Href.spec.js +18 -16
  831. package/src/models/layouthint/LayoutHintCollection.js +3 -3
  832. package/src/models/links/LinkCollection.js +4 -4
  833. package/src/models/links/LinkModel.js +3 -3
  834. package/src/models/links/__tests__/LinkModel.spec.js +4 -4
  835. package/src/models/links/normalizeLinkJSON.js +6 -6
  836. package/src/models/list/ListDetailModel.js +7 -7
  837. package/src/models/list/ListItemCollection.js +2 -2
  838. package/src/models/list/ListItemModel.js +2 -2
  839. package/src/models/list/ListModel.js +6 -6
  840. package/src/models/list/__tests__/ListDetailModel.spec.js +4 -4
  841. package/src/models/list/__tests__/ListItemCollection.spec.js +1 -1
  842. package/src/models/list/__tests__/ListModel.spec.js +3 -3
  843. package/src/models/list/__tests__/ListResultDetail.spec.js +3 -3
  844. package/src/models/lookup/LookupOptionCollection.js +1 -1
  845. package/src/models/lookup/LookupOptionsModel.js +4 -4
  846. package/src/models/lookup/__tests__/LookupOptionsModel.spec.js +3 -3
  847. package/src/models/modelcatalog/ModelCatalogModel.js +2 -2
  848. package/src/models/paging/PagingModel.js +1 -1
  849. package/src/models/paging/__tests__/PagingModel.spec.js +2 -2
  850. package/src/models/panels/GroupingPanelModel.js +5 -5
  851. package/src/models/panels/__tests__/GroupingPanelModel.spec.js +8 -8
  852. package/src/models/parameter/__tests__/Parameter.spec.js +5 -5
  853. package/src/models/process/ProcessStatusSettingsModel.js +1 -1
  854. package/src/models/process/__tests__/ProcessStatusSettingsModel.spec.js +1 -1
  855. package/src/models/resolveModel.js +4 -4
  856. package/src/models/sorting/SortingModel.js +4 -4
  857. package/src/models/sorting/__tests__/SortingModel.spec.js +3 -3
  858. package/src/models/tab/TabModel.js +3 -3
  859. package/src/models/tab/__tests__/TabModel.spec.js +5 -5
  860. package/src/models/taskgroup/TaskGroupModel.js +2 -2
  861. package/src/models/types.js +1 -1
  862. package/src/models/user/UserProfileModel.js +1 -1
  863. package/src/models/user/__tests__/UserModel.spec.js +2 -2
  864. package/src/models/user/__tests__/UserProfileModel.spec.js +2 -2
  865. package/src/models/user/__tests__/UserServicesModel.spec.js +1 -1
  866. package/src/modularui/CaptchaRequest.js +1 -1
  867. package/src/modularui/ModularUIRequest.js +26 -26
  868. package/src/modularui/UploadRequest.js +6 -6
  869. package/src/modularui/__tests__/ModularUIError.spec.js +1 -1
  870. package/src/modularui/__tests__/ModularUIRequest.spec.js +9 -9
  871. package/src/react/utils.js +1 -1
  872. package/src/react-client/client.js +11 -10
  873. package/src/react-client/contextPath.js +2 -2
  874. package/src/react-client/rehydrate.js +1 -1
  875. package/src/react-server/__tests__/serverUtil.spec.js +2 -2
  876. package/src/react-server/createSSRComplete.js +3 -3
  877. package/src/react-server/renderSSRComplete.js +4 -4
  878. package/src/react-server/renderSSRMinimal.js +1 -1
  879. package/src/react-server/requestInformation.js +2 -2
  880. package/src/react-server/serverUtil.js +8 -8
  881. package/src/react-theme/__tests__/createTheme.spec.js +4 -4
  882. package/src/react-theme/createTheme.js +1 -1
  883. package/src/react-theme/utils/__tests__/background.spec.js +2 -2
  884. package/src/react-theme/utils/__tests__/contrast.spec.js +1 -1
  885. package/src/react-theme/utils/__tests__/corners.spec.js +3 -3
  886. package/src/react-theme/utils/__tests__/spacers.spec.js +1 -1
  887. package/src/react-theme/utils/__tests__/themeProps.spec.js +9 -9
  888. package/src/react-theme/utils/colors.js +3 -3
  889. package/src/react-theme/utils/contrast.js +6 -6
  890. package/src/react-theme/utils/corners.js +2 -2
  891. package/src/react-theme/utils/spacers.js +2 -2
  892. package/src/react-theme/utils/themeProps.js +8 -8
  893. package/src/redux/_i18n/I18nActions.js +1 -1
  894. package/src/redux/_i18n/I18nReducer.js +2 -2
  895. package/src/redux/_i18n/__tests__/reducer.spec.js +2 -2
  896. package/src/redux/_modularui/ModularUIActions.js +8 -8
  897. package/src/redux/_modularui/ModularUIConnector.js +4 -4
  898. package/src/redux/_modularui/ModularUIMiddleware.js +6 -6
  899. package/src/redux/_modularui/ModularUIReducer.js +5 -5
  900. package/src/redux/_modularui/ModularUISelectors.js +11 -11
  901. package/src/redux/_modularui/ModularUIUtils.js +1 -1
  902. package/src/redux/_modularui/__tests__/actions.spec.js +1 -1
  903. package/src/redux/_modularui/__tests__/reducer.spec.js +13 -13
  904. package/src/redux/_modularui/__tests__/selectors.spec.js +3 -3
  905. package/src/redux/_modularui/types.js +4 -4
  906. package/src/redux/_modularui/withModularUI.js +3 -3
  907. package/src/redux/_router/RouterActions.js +3 -3
  908. package/src/redux/_router/RouterConnectors.js +5 -5
  909. package/src/redux/_router/RouterReducer.js +1 -1
  910. package/src/redux/_router/__tests__/reducer.spec.js +2 -2
  911. package/src/redux/actions/Application.js +1 -1
  912. package/src/redux/actions/Authorization.js +1 -1
  913. package/src/redux/actions/Error.js +3 -3
  914. package/src/redux/actions/FormAttributeSet.js +2 -2
  915. package/src/redux/actions/FormAttributeSetRepeatable.js +3 -3
  916. package/src/redux/actions/FormAutosave.js +1 -1
  917. package/src/redux/actions/FormAutosubmit.js +1 -1
  918. package/src/redux/actions/FormValidations.js +3 -3
  919. package/src/redux/actions/Notification.js +4 -4
  920. package/src/redux/actions/Preferences.js +11 -11
  921. package/src/redux/actions/ProgressIndicator.js +1 -1
  922. package/src/redux/actions/SignIn.js +3 -3
  923. package/src/redux/actions/__tests__/Authorization.spec.js +2 -2
  924. package/src/redux/actions/__tests__/Error-server.spec.js +13 -13
  925. package/src/redux/actions/__tests__/Error.spec.js +6 -6
  926. package/src/redux/actions/__tests__/Notification.spec.js +1 -1
  927. package/src/redux/actions/__tests__/Preferences.spec.js +2 -2
  928. package/src/redux/connectors/Application.js +1 -1
  929. package/src/redux/connectors/Breadcrumb.js +1 -1
  930. package/src/redux/connectors/CaseView.js +1 -1
  931. package/src/redux/connectors/ConceptDetail.js +1 -1
  932. package/src/redux/connectors/ContentBrowser.js +1 -1
  933. package/src/redux/connectors/ContentDetail.js +1 -1
  934. package/src/redux/connectors/ContentDetailSection.js +2 -2
  935. package/src/redux/connectors/Form.js +5 -5
  936. package/src/redux/connectors/FormAttributeSet.js +6 -6
  937. package/src/redux/connectors/ListDetail.js +1 -1
  938. package/src/redux/connectors/Modal.js +1 -1
  939. package/src/redux/connectors/ModelCatalog.js +1 -1
  940. package/src/redux/connectors/Notification.js +1 -1
  941. package/src/redux/connectors/PanelRenderer.js +2 -2
  942. package/src/redux/connectors/Preferences.js +3 -3
  943. package/src/redux/connectors/Progress.js +1 -1
  944. package/src/redux/connectors/ProgressIndicator.js +1 -1
  945. package/src/redux/connectors/QuickSearch.js +2 -2
  946. package/src/redux/connectors/SignIn.js +1 -1
  947. package/src/redux/connectors/SignOut.js +1 -1
  948. package/src/redux/connectors/Tab.js +1 -1
  949. package/src/redux/reducers/AuthReducer.js +1 -1
  950. package/src/redux/reducers/ErrorReducer.js +1 -1
  951. package/src/redux/reducers/ModalsReducer.js +1 -1
  952. package/src/redux/reducers/NotificationReducer.js +1 -1
  953. package/src/redux/reducers/PreferencesReducer.js +1 -1
  954. package/src/redux/reducers/ProgressIndicatorReducer.js +1 -1
  955. package/src/redux/reducers/__tests__/AuthReducer.spec.js +10 -10
  956. package/src/redux/reducers/__tests__/ErrorReducer.spec.js +1 -1
  957. package/src/redux/reducers/__tests__/ModalsReducer.spec.js +3 -3
  958. package/src/redux/reducers/__tests__/NotificationReducer.spec.js +3 -3
  959. package/src/redux/reducers/__tests__/PreferencesReducer.spec.js +2 -2
  960. package/src/redux/reducers/__tests__/ProgressIndicatorReducer.spec.js +8 -8
  961. package/src/redux/store/beforeRenderHooks.js +1 -1
  962. package/src/redux/store/configureStore.js +3 -3
  963. package/src/utils/browser/Cookies.js +1 -1
  964. package/src/utils/browser/__tests__/Cookies.spec.js +1 -1
  965. package/src/utils/datetime/DateTimeUtil.js +15 -15
  966. package/src/utils/datetime/__tests__/DateTime.spec.js +84 -81
  967. package/src/utils/fetch/__tests__/xhr.spec.js +2 -2
  968. package/src/utils/fetch/universalFetch.js +1 -1
  969. package/src/utils/fetch/xhr.js +6 -6
  970. package/src/utils/helpers/__tests__/sanitizeHTML.spec.js +8 -8
  971. package/src/utils/helpers/sanitizeHtml.js +3 -3
  972. package/src/utils/helpers/text.js +1 -1
  973. package/src/utils/number/DecimalFormat.js +2 -2
  974. package/src/utils/number/__tests__/formatValue.spec.js +1 -1
  975. package/src/utils/number/formatValue.js +2 -2
  976. package/src/utils/number/parseNumbers.js +7 -7
@@ -1 +1 @@
1
- {"version":3,"file":"Locale.js","names":["formatMessage","languages","IllegalStateException","getSetting","Locale","constructor","locale","_defineProperty","_code","code","_messages","fixPlaceHoldersInObject","messages","_errors","errors","_nativeName","nativeName","setup","missingTranslation","aLocale","split","length","language","lang","toUpperCase","fixPlaceHolders","message","replace","arguments","undefined","JSON","parse","_JSON$stringify","getBaseMessage","id","defaultMessage","messageFromLocale","process","env","NODE_ENV","console","debug","parameters","getMessage","update"],"sources":["../../src/i18n/Locale.js"],"sourcesContent":["// @flow\nimport formatMessage from \"format-message\";\n\nimport languages from \"./languages\";\nimport { IllegalStateException } from \"../exceptions\";\n\nimport { getSetting } from \"../constants\";\n\nimport type { LocaleConfiguration, MessageParameters } from \"./types\";\n\n/**\n * Create a locale\n */\nclass Locale {\n _code: string;\n _messages: { [string]: string };\n _errors: { [string]: string };\n _nativeName: ?string;\n\n constructor(locale: LocaleConfiguration) {\n this._code = locale.code;\n\n this._messages = this.fixPlaceHoldersInObject(locale.messages);\n this._errors = this.fixPlaceHoldersInObject(locale.errors);\n\n this._nativeName = locale.nativeName;\n\n formatMessage.setup({\n missingTranslation: \"ignore\",\n });\n }\n\n /**\n * Retrieve locale code\n */\n get code(): string {\n return this._code;\n }\n\n /**\n * Retrieve nativeName\n */\n get nativeName(): string {\n if (this._nativeName) {\n return this._nativeName;\n }\n\n const aLocale = this.code.split(\"-\");\n\n if (aLocale.length > 0) {\n const language = languages.lang[aLocale[0]];\n\n if (language) {\n return (\n language[1] + (aLocale[1] ? ` (${aLocale[1].toUpperCase()})` : \"\")\n );\n }\n }\n\n throw new IllegalStateException(\n `Can not find language name based on locale: ${this.code}`\n );\n }\n\n /**\n * Exported messages from Be Informed have placeholders in the syntax ${placeholder_name}\n * where the ICU messageformat module uses {placeholder_name}.\n * This method converts the ${} to {}\n */\n fixPlaceHolders(message: ?string): null | string {\n if (typeof message === \"string\") {\n return message\n .replace(/'\\$\\{(?<key>.*?)}'/g, \"''{$<key>}''\")\n .replace(/\\$\\{(?<key>.*?)}/g, \"{$<key>}\");\n }\n\n return null;\n }\n\n /**\n * Exported messages from Be Informed have placeholders in the syntax ${placeholder_name}\n * where the ICU messageformat module uses {placeholder_name}.\n * This method converts the ${} to {}\n */\n fixPlaceHoldersInObject(messages: Object = {}): Object {\n return JSON.parse(\n JSON.stringify(messages)\n .replace(/'\\$\\{(?<key>.*?)}'/g, \"''{$<key>}''\")\n .replace(/\\$\\{(?<key>.*?)}/g, \"{$<key>}\")\n );\n }\n\n /**\n * Retrieve message by id\n */\n getBaseMessage(id: string, defaultMessage?: string): string {\n if (!id && !defaultMessage) {\n return \"[message: id or defaultMessage missing]\";\n }\n\n const messageFromLocale = this._messages[id] || this._errors[id];\n\n if (\n (typeof process === \"undefined\" ||\n process.env.NODE_ENV !== \"production\") &&\n !messageFromLocale &&\n id &&\n getSetting(\"DEBUG_I18N_MESSAGE_NOT_FOUND\")\n ) {\n // eslint-disable-next-line no-console\n console.debug(\n `Message with id ${id} not found for locale ${this.code} in layout translations`\n );\n }\n return messageFromLocale || this.fixPlaceHolders(defaultMessage) || id;\n }\n\n /**\n * Format message using formatMessage library\n */\n formatMessage(message: string, parameters?: MessageParameters): string {\n if (parameters) {\n return formatMessage(message, parameters);\n }\n\n return message;\n }\n\n /**\n * Retrieve a messages with replaced parameters\n */\n getMessage(\n id: string,\n defaultMessage?: string,\n parameters?: MessageParameters\n ): string {\n const message = this.getBaseMessage(id, defaultMessage);\n return this.formatMessage(message, parameters);\n }\n\n /**\n * Add or change messages for this locale. It is not possible to remove messages.\n */\n update(messages: Object = {}, errors: Object = {}) {\n this._messages = {\n ...this._messages,\n ...this.fixPlaceHoldersInObject(messages),\n };\n\n this._errors = {\n ...this._errors,\n ...this.fixPlaceHoldersInObject(errors),\n };\n }\n}\n\nexport default Locale;\n"],"mappings":"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"}
1
+ {"version":3,"file":"Locale.js","names":["formatMessage","languages","IllegalStateException","getSetting","Locale","constructor","locale","_defineProperty","_code","code","_messages","fixPlaceHoldersInObject","messages","_errors","errors","_nativeName","nativeName","setup","missingTranslation","aLocale","split","length","language","lang","toUpperCase","fixPlaceHolders","message","replace","arguments","undefined","JSON","parse","_JSON$stringify","getBaseMessage","id","defaultMessage","messageFromLocale","process","env","NODE_ENV","console","debug","parameters","getMessage","update"],"sources":["../../src/i18n/Locale.js"],"sourcesContent":["// @flow\nimport formatMessage from \"format-message\";\n\nimport languages from \"./languages\";\nimport { IllegalStateException } from \"../exceptions\";\n\nimport { getSetting } from \"../constants\";\n\nimport type { LocaleConfiguration, MessageParameters } from \"./types\";\n\n/**\n * Create a locale\n */\nclass Locale {\n _code: string;\n _messages: { [string]: string };\n _errors: { [string]: string };\n _nativeName: ?string;\n\n constructor(locale: LocaleConfiguration) {\n this._code = locale.code;\n\n this._messages = this.fixPlaceHoldersInObject(locale.messages);\n this._errors = this.fixPlaceHoldersInObject(locale.errors);\n\n this._nativeName = locale.nativeName;\n\n formatMessage.setup({\n missingTranslation: \"ignore\",\n });\n }\n\n /**\n * Retrieve locale code\n */\n get code(): string {\n return this._code;\n }\n\n /**\n * Retrieve nativeName\n */\n get nativeName(): string {\n if (this._nativeName) {\n return this._nativeName;\n }\n\n const aLocale = this.code.split(\"-\");\n\n if (aLocale.length > 0) {\n const language = languages.lang[aLocale[0]];\n\n if (language) {\n return (\n language[1] + (aLocale[1] ? ` (${aLocale[1].toUpperCase()})` : \"\")\n );\n }\n }\n\n throw new IllegalStateException(\n `Can not find language name based on locale: ${this.code}`,\n );\n }\n\n /**\n * Exported messages from Be Informed have placeholders in the syntax ${placeholder_name}\n * where the ICU messageformat module uses {placeholder_name}.\n * This method converts the ${} to {}\n */\n fixPlaceHolders(message: ?string): null | string {\n if (typeof message === \"string\") {\n return message\n .replace(/'\\$\\{(?<key>.*?)}'/g, \"''{$<key>}''\")\n .replace(/\\$\\{(?<key>.*?)}/g, \"{$<key>}\");\n }\n\n return null;\n }\n\n /**\n * Exported messages from Be Informed have placeholders in the syntax ${placeholder_name}\n * where the ICU messageformat module uses {placeholder_name}.\n * This method converts the ${} to {}\n */\n fixPlaceHoldersInObject(messages: Object = {}): Object {\n return JSON.parse(\n JSON.stringify(messages)\n .replace(/'\\$\\{(?<key>.*?)}'/g, \"''{$<key>}''\")\n .replace(/\\$\\{(?<key>.*?)}/g, \"{$<key>}\"),\n );\n }\n\n /**\n * Retrieve message by id\n */\n getBaseMessage(id: string, defaultMessage?: string): string {\n if (!id && !defaultMessage) {\n return \"[message: id or defaultMessage missing]\";\n }\n\n const messageFromLocale = this._messages[id] || this._errors[id];\n\n if (\n (typeof process === \"undefined\" ||\n process.env.NODE_ENV !== \"production\") &&\n !messageFromLocale &&\n id &&\n getSetting(\"DEBUG_I18N_MESSAGE_NOT_FOUND\")\n ) {\n // eslint-disable-next-line no-console\n console.debug(\n `Message with id ${id} not found for locale ${this.code} in layout translations`,\n );\n }\n return messageFromLocale || this.fixPlaceHolders(defaultMessage) || id;\n }\n\n /**\n * Format message using formatMessage library\n */\n formatMessage(message: string, parameters?: MessageParameters): string {\n if (parameters) {\n return formatMessage(message, parameters);\n }\n\n return message;\n }\n\n /**\n * Retrieve a messages with replaced parameters\n */\n getMessage(\n id: string,\n defaultMessage?: string,\n parameters?: MessageParameters,\n ): string {\n const message = this.getBaseMessage(id, defaultMessage);\n return this.formatMessage(message, parameters);\n }\n\n /**\n * Add or change messages for this locale. It is not possible to remove messages.\n */\n update(messages: Object = {}, errors: Object = {}) {\n this._messages = {\n ...this._messages,\n ...this.fixPlaceHoldersInObject(messages),\n };\n\n this._errors = {\n ...this._errors,\n ...this.fixPlaceHoldersInObject(errors),\n };\n }\n}\n\nexport default Locale;\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Locales.js","names":["Locale","englishErrors","dutchErrors","BaseCollection","IllegalArgumentException","availableLocales","code","messages","errors","createLocalesWithConfiguredErrors","configuredErrors","_mapInstanceProperty","call","availableLocale","Locales","constructor","locales","arguments","length","undefined","locale","rehydrate","hydatedLocales","_collection","_context","_code","_messages","_errors","hasLocale","localeCode","some","item","_startsWithInstanceProperty","getLocale","_context2","_findInstanceProperty","availableLocaleCodes","_context3","getPreferredLocale","acceptLanguageHeader","_context4","acceptLanguages","match","preferredLocales","_filterInstanceProperty","_context5","update","add"],"sources":["../../src/i18n/Locales.js"],"sourcesContent":["// @flow\nimport Locale from \"./Locale\";\n\nimport englishErrors from \"./translations/beinformed_error_messages_en.nl\";\nimport dutchErrors from \"./translations/beinformed_error_messages_nl.nl\";\n\nimport BaseCollection from \"../models/base/BaseCollection\";\n\nimport { IllegalArgumentException } from \"../exceptions\";\n\nimport type { LocaleConfiguration } from \"./types\";\n\ntype ErrorMessageObject = {\n [languageCode: string]: {\n [messageID: string]: string,\n },\n};\n\ntype HydratedLocales = {\n _collection: Array<{\n _code: string,\n _messages: {\n [string]: string,\n },\n _errors: {\n [string]: string,\n },\n }>,\n};\n\n/**\n * Array of available locales\n * Order of locales is the preferred order of locales.\n * When user has an accept language header that does not correspond to the locales array,\n * the first one is used as the preferred language\n */\nexport const availableLocales: Array<LocaleConfiguration> = [\n {\n code: \"en\",\n messages: {},\n errors: englishErrors,\n },\n {\n code: \"nl\",\n messages: {},\n errors: dutchErrors,\n },\n];\n\n/**\n * Merge an object with custom error messages (exported and translated from be informed for example) and merge them with the existing translations.\n */\nexport const createLocalesWithConfiguredErrors = (\n configuredErrors: ErrorMessageObject\n): Array<Object> =>\n availableLocales.map((availableLocale) => {\n if (configuredErrors[availableLocale.code]) {\n return {\n ...availableLocale,\n errors: {\n ...availableLocale.errors,\n ...configuredErrors[availableLocale.code],\n },\n };\n }\n\n return availableLocale;\n });\n\n/**\n * Locales, collection of Locale\n */\nclass Locales extends BaseCollection<Locale> {\n constructor(locales: Array<LocaleConfiguration> = availableLocales) {\n super(locales.map((locale) => new Locale(locale)));\n }\n\n /**\n * rehydrate\n */\n static rehydrate(hydatedLocales: HydratedLocales): Locales {\n if (hydatedLocales && hydatedLocales._collection) {\n return new Locales(\n hydatedLocales._collection.map((locale) => ({\n code: locale._code,\n messages: locale._messages,\n errors: locale._errors,\n }))\n );\n }\n\n return new Locales([]);\n }\n\n /**\n * Check if locale with localeCode exists\n */\n hasLocale(localeCode: string): boolean {\n return this.some((item) => localeCode.startsWith(item.code));\n }\n\n /**\n * Retrieve locales by localeCode from Locales collection\n */\n getLocale(localeCode: string): Locale {\n if (this.hasLocale(localeCode)) {\n const locale = this.find((item) => localeCode.startsWith(item.code));\n if (locale) {\n return locale;\n }\n }\n throw new IllegalArgumentException(\n `Locale configuration for locale ${localeCode} not found`\n );\n }\n\n /**\n * Retrieve all available locale codes\n */\n get availableLocaleCodes(): Array<string> {\n return this.map((locale) => locale.code);\n }\n\n /**\n * Retrieve preferred locale based on the accept header of a browser\n */\n getPreferredLocale(acceptLanguageHeader: string | null): void | string {\n if (acceptLanguageHeader != null) {\n const acceptLanguages =\n acceptLanguageHeader.match(/[-A-Za-z]{2,10}/gu) || [];\n\n const preferredLocales = acceptLanguages\n .filter((locale) =>\n this.availableLocaleCodes.some((availableLocale) =>\n locale.startsWith(availableLocale)\n )\n )\n .map((locale) =>\n this.availableLocaleCodes.find((availableLocale) =>\n locale.startsWith(availableLocale)\n )\n );\n\n if (preferredLocales.length > 0) {\n return preferredLocales[0];\n }\n }\n\n return this.availableLocaleCodes[0];\n }\n\n /**\n * Add or change messages and errors for the given locale.<br>\n * It is not possible to remove messages.\n */\n update(locale: string, messages: Object = {}, errors: Object = {}) {\n if (this.hasLocale(locale)) {\n this.getLocale(locale).update(messages, errors);\n } else {\n this.add(\n new Locale({\n code: locale,\n messages,\n errors,\n })\n );\n }\n }\n}\n\nexport default Locales;\n"],"mappings":"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"}
1
+ {"version":3,"file":"Locales.js","names":["Locale","englishErrors","dutchErrors","BaseCollection","IllegalArgumentException","availableLocales","code","messages","errors","createLocalesWithConfiguredErrors","configuredErrors","_mapInstanceProperty","call","availableLocale","Locales","constructor","locales","arguments","length","undefined","locale","rehydrate","hydatedLocales","_collection","_context","_code","_messages","_errors","hasLocale","localeCode","some","item","_startsWithInstanceProperty","getLocale","_context2","_findInstanceProperty","availableLocaleCodes","_context3","getPreferredLocale","acceptLanguageHeader","_context4","acceptLanguages","match","preferredLocales","_filterInstanceProperty","_context5","update","add"],"sources":["../../src/i18n/Locales.js"],"sourcesContent":["// @flow\nimport Locale from \"./Locale\";\n\nimport englishErrors from \"./translations/beinformed_error_messages_en.nl\";\nimport dutchErrors from \"./translations/beinformed_error_messages_nl.nl\";\n\nimport BaseCollection from \"../models/base/BaseCollection\";\n\nimport { IllegalArgumentException } from \"../exceptions\";\n\nimport type { LocaleConfiguration } from \"./types\";\n\ntype ErrorMessageObject = {\n [languageCode: string]: {\n [messageID: string]: string,\n },\n};\n\ntype HydratedLocales = {\n _collection: Array<{\n _code: string,\n _messages: {\n [string]: string,\n },\n _errors: {\n [string]: string,\n },\n }>,\n};\n\n/**\n * Array of available locales\n * Order of locales is the preferred order of locales.\n * When user has an accept language header that does not correspond to the locales array,\n * the first one is used as the preferred language\n */\nexport const availableLocales: Array<LocaleConfiguration> = [\n {\n code: \"en\",\n messages: {},\n errors: englishErrors,\n },\n {\n code: \"nl\",\n messages: {},\n errors: dutchErrors,\n },\n];\n\n/**\n * Merge an object with custom error messages (exported and translated from be informed for example) and merge them with the existing translations.\n */\nexport const createLocalesWithConfiguredErrors = (\n configuredErrors: ErrorMessageObject,\n): Array<Object> =>\n availableLocales.map((availableLocale) => {\n if (configuredErrors[availableLocale.code]) {\n return {\n ...availableLocale,\n errors: {\n ...availableLocale.errors,\n ...configuredErrors[availableLocale.code],\n },\n };\n }\n\n return availableLocale;\n });\n\n/**\n * Locales, collection of Locale\n */\nclass Locales extends BaseCollection<Locale> {\n constructor(locales: Array<LocaleConfiguration> = availableLocales) {\n super(locales.map((locale) => new Locale(locale)));\n }\n\n /**\n * rehydrate\n */\n static rehydrate(hydatedLocales: HydratedLocales): Locales {\n if (hydatedLocales && hydatedLocales._collection) {\n return new Locales(\n hydatedLocales._collection.map((locale) => ({\n code: locale._code,\n messages: locale._messages,\n errors: locale._errors,\n })),\n );\n }\n\n return new Locales([]);\n }\n\n /**\n * Check if locale with localeCode exists\n */\n hasLocale(localeCode: string): boolean {\n return this.some((item) => localeCode.startsWith(item.code));\n }\n\n /**\n * Retrieve locales by localeCode from Locales collection\n */\n getLocale(localeCode: string): Locale {\n if (this.hasLocale(localeCode)) {\n const locale = this.find((item) => localeCode.startsWith(item.code));\n if (locale) {\n return locale;\n }\n }\n throw new IllegalArgumentException(\n `Locale configuration for locale ${localeCode} not found`,\n );\n }\n\n /**\n * Retrieve all available locale codes\n */\n get availableLocaleCodes(): Array<string> {\n return this.map((locale) => locale.code);\n }\n\n /**\n * Retrieve preferred locale based on the accept header of a browser\n */\n getPreferredLocale(acceptLanguageHeader: string | null): void | string {\n if (acceptLanguageHeader != null) {\n const acceptLanguages =\n acceptLanguageHeader.match(/[-A-Za-z]{2,10}/gu) || [];\n\n const preferredLocales = acceptLanguages\n .filter((locale) =>\n this.availableLocaleCodes.some((availableLocale) =>\n locale.startsWith(availableLocale),\n ),\n )\n .map((locale) =>\n this.availableLocaleCodes.find((availableLocale) =>\n locale.startsWith(availableLocale),\n ),\n );\n\n if (preferredLocales.length > 0) {\n return preferredLocales[0];\n }\n }\n\n return this.availableLocaleCodes[0];\n }\n\n /**\n * Add or change messages and errors for the given locale.<br>\n * It is not possible to remove messages.\n */\n update(locale: string, messages: Object = {}, errors: Object = {}) {\n if (this.hasLocale(locale)) {\n this.getLocale(locale).update(messages, errors);\n } else {\n this.add(\n new Locale({\n code: locale,\n messages,\n errors,\n }),\n );\n }\n }\n}\n\nexport default Locales;\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Message.js","names":["memo","hideVisually","useMessage","jsx","_jsx","Message","_ref","className","id","defaultMessage","children","data","screenreaderOnly","allowHTML","translatedMessage","styles","style","dangerouslySetInnerHTML","__html","displayName"],"sources":["../../src/i18n/Message.js"],"sourcesContent":["// @flow\nimport { memo } from \"react\";\nimport { hideVisually } from \"polished\";\n\nimport { useMessage } from \"../hooks/useI18n\";\n\ntype MessageProps = {\n +className?: string,\n +id: string,\n +defaultMessage?: string | null,\n +children?: string,\n +data?: Object | null,\n +screenreaderOnly?: boolean,\n +allowHTML?: boolean,\n};\n\n/**\n * Message React component\n */\nconst Message: React$AbstractComponent<MessageProps, mixed> =\n memo<MessageProps>(\n ({\n className,\n id,\n defaultMessage,\n children,\n data,\n screenreaderOnly = false,\n allowHTML = false,\n }: MessageProps) => {\n const translatedMessage = useMessage(\n id,\n defaultMessage || children,\n data\n );\n\n if (screenreaderOnly) {\n const styles = {\n ...hideVisually(),\n };\n\n return (\n <span className={className} style={styles}>\n {translatedMessage}\n </span>\n );\n }\n\n if (allowHTML) {\n return (\n <span\n className={className}\n dangerouslySetInnerHTML={{\n __html: translatedMessage,\n }}\n />\n );\n }\n\n return <span className={className}>{translatedMessage}</span>;\n }\n );\n\nMessage.displayName = \"BI.Message\";\n\nexport default Message;\n"],"mappings":"AACA,SAASA,IAAI,QAAQ,OAAO;AAC5B,SAASC,YAAY,QAAQ,UAAU;AAEvC,SAASC,UAAU,QAAQ,kBAAkB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAY9C;AACA;AACA;AACA,MAAMC,OAAqD,gBACzDL,IAAI,CACFM,IAAA,IAQoB;EAAA,IARnB;IACCC,SAAS;IACTC,EAAE;IACFC,cAAc;IACdC,QAAQ;IACRC,IAAI;IACJC,gBAAgB,GAAG,KAAK;IACxBC,SAAS,GAAG;EACA,CAAC,GAAAP,IAAA;EACb,MAAMQ,iBAAiB,GAAGZ,UAAU,CAClCM,EAAE,EACFC,cAAc,IAAIC,QAAQ,EAC1BC,IACF,CAAC;EAED,IAAIC,gBAAgB,EAAE;IACpB,MAAMG,MAAM,GAAG;MACb,GAAGd,YAAY,CAAC;IAClB,CAAC;IAED,oBACEG,IAAA;MAAMG,SAAS,EAAEA,SAAU;MAACS,KAAK,EAAED,MAAO;MAAAL,QAAA,EACvCI;IAAiB,CACd,CAAC;EAEX;EAEA,IAAID,SAAS,EAAE;IACb,oBACET,IAAA;MACEG,SAAS,EAAEA,SAAU;MACrBU,uBAAuB,EAAE;QACvBC,MAAM,EAAEJ;MACV;IAAE,CACH,CAAC;EAEN;EAEA,oBAAOV,IAAA;IAAMG,SAAS,EAAEA,SAAU;IAAAG,QAAA,EAAEI;EAAiB,CAAO,CAAC;AAC/D,CACF,CAAC;AAEHT,OAAO,CAACc,WAAW,GAAG,YAAY;AAElC,eAAed,OAAO"}
1
+ {"version":3,"file":"Message.js","names":["memo","hideVisually","useMessage","jsx","_jsx","Message","_ref","className","id","defaultMessage","children","data","screenreaderOnly","allowHTML","translatedMessage","styles","style","dangerouslySetInnerHTML","__html","displayName"],"sources":["../../src/i18n/Message.js"],"sourcesContent":["// @flow\nimport { memo } from \"react\";\nimport { hideVisually } from \"polished\";\n\nimport { useMessage } from \"../hooks/useI18n\";\n\ntype MessageProps = {\n +className?: string,\n +id: string,\n +defaultMessage?: string | null,\n +children?: string,\n +data?: Object | null,\n +screenreaderOnly?: boolean,\n +allowHTML?: boolean,\n};\n\n/**\n * Message React component\n */\nconst Message: React$AbstractComponent<MessageProps, mixed> =\n memo<MessageProps>(\n ({\n className,\n id,\n defaultMessage,\n children,\n data,\n screenreaderOnly = false,\n allowHTML = false,\n }: MessageProps) => {\n const translatedMessage = useMessage(\n id,\n defaultMessage || children,\n data,\n );\n\n if (screenreaderOnly) {\n const styles = {\n ...hideVisually(),\n };\n\n return (\n <span className={className} style={styles}>\n {translatedMessage}\n </span>\n );\n }\n\n if (allowHTML) {\n return (\n <span\n className={className}\n dangerouslySetInnerHTML={{\n __html: translatedMessage,\n }}\n />\n );\n }\n\n return <span className={className}>{translatedMessage}</span>;\n },\n );\n\nMessage.displayName = \"BI.Message\";\n\nexport default Message;\n"],"mappings":"AACA,SAASA,IAAI,QAAQ,OAAO;AAC5B,SAASC,YAAY,QAAQ,UAAU;AAEvC,SAASC,UAAU,QAAQ,kBAAkB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAY9C;AACA;AACA;AACA,MAAMC,OAAqD,gBACzDL,IAAI,CACFM,IAAA,IAQoB;EAAA,IARnB;IACCC,SAAS;IACTC,EAAE;IACFC,cAAc;IACdC,QAAQ;IACRC,IAAI;IACJC,gBAAgB,GAAG,KAAK;IACxBC,SAAS,GAAG;EACA,CAAC,GAAAP,IAAA;EACb,MAAMQ,iBAAiB,GAAGZ,UAAU,CAClCM,EAAE,EACFC,cAAc,IAAIC,QAAQ,EAC1BC,IACF,CAAC;EAED,IAAIC,gBAAgB,EAAE;IACpB,MAAMG,MAAM,GAAG;MACb,GAAGd,YAAY,CAAC;IAClB,CAAC;IAED,oBACEG,IAAA;MAAMG,SAAS,EAAEA,SAAU;MAACS,KAAK,EAAED,MAAO;MAAAL,QAAA,EACvCI;IAAiB,CACd,CAAC;EAEX;EAEA,IAAID,SAAS,EAAE;IACb,oBACET,IAAA;MACEG,SAAS,EAAEA,SAAU;MACrBU,uBAAuB,EAAE;QACvBC,MAAM,EAAEJ;MACV;IAAE,CACH,CAAC;EAEN;EAEA,oBAAOV,IAAA;IAAMG,SAAS,EAAEA,SAAU;IAAAG,QAAA,EAAEI;EAAiB,CAAO,CAAC;AAC/D,CACF,CAAC;AAEHT,OAAO,CAACc,WAAW,GAAG,YAAY;AAElC,eAAed,OAAO"}
@@ -1 +1 @@
1
- {"version":3,"file":"withMessage.js","names":["connect","createSelector","memoize","getLocales","getLocale","getMessage","locales","localeCode","id","defaultMessage","placeholders","_len","arguments","length","args","Array","_key","_JSON$stringify","mapStateToProps","state","message","withMessage"],"sources":["../../src/i18n/withMessage.js"],"sourcesContent":["// @flow\nimport { connect } from \"react-redux\";\n\nimport { createSelector } from \"reselect\";\nimport memoize from \"lodash/memoize\";\n\nimport { getLocales, getLocale } from \"../redux/selectors/i18n\";\n\nimport type { ReduxState } from \"../redux/types\";\nimport type { ComponentType } from \"react\";\n\ntype StateProps = {\n +message: (\n id: string,\n defaultMessage: string,\n placeholders: { ... }\n ) => string,\n};\n\ntype Props = {\n ...StateProps,\n ...\n};\n\nconst getMessage = createSelector(\n [getLocales, getLocale],\n (locales, localeCode) =>\n memoize(\n (id: string, defaultMessage?: string, placeholders?: Object) =>\n locales\n .getLocale(localeCode)\n .getMessage(id, defaultMessage, placeholders),\n (...args) => JSON.stringify(args)\n )\n);\n\nconst mapStateToProps = (state: ReduxState): StateProps => ({\n message: getMessage(state),\n});\n\n/**\n */\nconst withMessage: ComponentType<any> = connect<Props, {}, StateProps, _, _, _>(\n mapStateToProps\n);\n\nexport default withMessage;\n"],"mappings":";AACA,SAASA,OAAO,QAAQ,aAAa;AAErC,SAASC,cAAc,QAAQ,UAAU;AACzC,OAAOC,OAAO,MAAM,gBAAgB;AAEpC,SAASC,UAAU,EAAEC,SAAS,QAAQ,yBAAyB;AAkB/D,MAAMC,UAAU,GAAGJ,cAAc,CAC/B,CAACE,UAAU,EAAEC,SAAS,CAAC,EACvB,CAACE,OAAO,EAAEC,UAAU,KAClBL,OAAO,CACL,CAACM,EAAU,EAAEC,cAAuB,EAAEC,YAAqB,KACzDJ,OAAO,CACJF,SAAS,CAACG,UAAU,CAAC,CACrBF,UAAU,CAACG,EAAE,EAAEC,cAAc,EAAEC,YAAY,CAAC,EACjD;EAAA,SAAAC,IAAA,GAAAC,SAAA,CAAAC,MAAA,EAAIC,IAAI,OAAAC,KAAA,CAAAJ,IAAA,GAAAK,IAAA,MAAAA,IAAA,GAAAL,IAAA,EAAAK,IAAA;IAAJF,IAAI,CAAAE,IAAA,IAAAJ,SAAA,CAAAI,IAAA;EAAA;EAAA,OAAKC,eAAA,CAAeH,IAAI,CAAC;AAAA,CACnC,CACJ,CAAC;AAED,MAAMI,eAAe,GAAIC,KAAiB,KAAkB;EAC1DC,OAAO,EAAEf,UAAU,CAACc,KAAK;AAC3B,CAAC,CAAC;;AAEF;AACA;AACA,MAAME,WAA+B,GAAGrB,OAAO,CAC7CkB,eACF,CAAC;AAED,eAAeG,WAAW"}
1
+ {"version":3,"file":"withMessage.js","names":["connect","createSelector","memoize","getLocales","getLocale","getMessage","locales","localeCode","id","defaultMessage","placeholders","_len","arguments","length","args","Array","_key","_JSON$stringify","mapStateToProps","state","message","withMessage"],"sources":["../../src/i18n/withMessage.js"],"sourcesContent":["// @flow\nimport { connect } from \"react-redux\";\n\nimport { createSelector } from \"reselect\";\nimport memoize from \"lodash/memoize\";\n\nimport { getLocales, getLocale } from \"../redux/selectors/i18n\";\n\nimport type { ReduxState } from \"../redux/types\";\nimport type { ComponentType } from \"react\";\n\ntype StateProps = {\n +message: (\n id: string,\n defaultMessage: string,\n placeholders: { ... },\n ) => string,\n};\n\ntype Props = {\n ...StateProps,\n ...\n};\n\nconst getMessage = createSelector(\n [getLocales, getLocale],\n (locales, localeCode) =>\n memoize(\n (id: string, defaultMessage?: string, placeholders?: Object) =>\n locales\n .getLocale(localeCode)\n .getMessage(id, defaultMessage, placeholders),\n (...args) => JSON.stringify(args),\n ),\n);\n\nconst mapStateToProps = (state: ReduxState): StateProps => ({\n message: getMessage(state),\n});\n\n/**\n */\nconst withMessage: ComponentType<any> = connect<Props, {}, StateProps, _, _, _>(\n mapStateToProps,\n);\n\nexport default withMessage;\n"],"mappings":";AACA,SAASA,OAAO,QAAQ,aAAa;AAErC,SAASC,cAAc,QAAQ,UAAU;AACzC,OAAOC,OAAO,MAAM,gBAAgB;AAEpC,SAASC,UAAU,EAAEC,SAAS,QAAQ,yBAAyB;AAkB/D,MAAMC,UAAU,GAAGJ,cAAc,CAC/B,CAACE,UAAU,EAAEC,SAAS,CAAC,EACvB,CAACE,OAAO,EAAEC,UAAU,KAClBL,OAAO,CACL,CAACM,EAAU,EAAEC,cAAuB,EAAEC,YAAqB,KACzDJ,OAAO,CACJF,SAAS,CAACG,UAAU,CAAC,CACrBF,UAAU,CAACG,EAAE,EAAEC,cAAc,EAAEC,YAAY,CAAC,EACjD;EAAA,SAAAC,IAAA,GAAAC,SAAA,CAAAC,MAAA,EAAIC,IAAI,OAAAC,KAAA,CAAAJ,IAAA,GAAAK,IAAA,MAAAA,IAAA,GAAAL,IAAA,EAAAK,IAAA;IAAJF,IAAI,CAAAE,IAAA,IAAAJ,SAAA,CAAAI,IAAA;EAAA;EAAA,OAAKC,eAAA,CAAeH,IAAI,CAAC;AAAA,CACnC,CACJ,CAAC;AAED,MAAMI,eAAe,GAAIC,KAAiB,KAAkB;EAC1DC,OAAO,EAAEf,UAAU,CAACc,KAAK;AAC3B,CAAC,CAAC;;AAEF;AACA;AACA,MAAME,WAA+B,GAAGrB,OAAO,CAC7CkB,eACF,CAAC;AAED,eAAeG,WAAW"}
@@ -1 +1 @@
1
- {"version":3,"file":"ActionCollection.js","names":["BaseCollection","ActionModel","ActionCollection","constructor","actions","actionsContributions","Array","isArray","collection","actionModels","actionData","actionContribution","_findInstanceProperty","call","name","push","getActionByKey","key","_context","newCollection","_filterInstanceProperty","action","first","getActionsByType","type","_context2","_includesInstanceProperty","getActionsByLayoutHint","_context3","_len","arguments","length","hints","_key","layouthint","has","hasActionsByLayoutHint","routePath","_context4","enabledRoutes","isDisabled","path","_mapInstanceProperty","selfhref","join"],"sources":["../../../src/models/actions/ActionCollection.js"],"sourcesContent":["// @flow\nimport BaseCollection from \"../base/BaseCollection\";\nimport ActionModel from \"./ActionModel\";\n\n/**\n * Collection of actions\n */\nexport default class ActionCollection extends BaseCollection<ActionModel> {\n constructor(actions?: Object, actionsContributions?: Object) {\n super();\n\n // no actions gives an empty collection\n if (!Array.isArray(actions)) {\n this.collection = [];\n } else if (Array.isArray(actionsContributions)) {\n const actionModels = [];\n for (const actionData of actions) {\n const actionContribution = actionsContributions.find(\n (actionContribution) => actionContribution.name === actionData.name\n );\n\n if (actionContribution) {\n actionModels.push(new ActionModel(actionData, actionContribution));\n }\n }\n\n this.collection = actionModels;\n }\n }\n\n /**\n * Retrieve action by key\n */\n getActionByKey(key: string): ActionModel | null {\n const newCollection = new ActionCollection();\n\n newCollection.collection = this.filter((action) => action.key === key);\n\n return newCollection.first;\n }\n\n /**\n * Retrieve actions by type\n */\n getActionsByType(type: string | Array<string>): ActionCollection {\n const newCollection = new ActionCollection();\n\n newCollection.collection = this.filter((action) =>\n Array.isArray(type) ? type.includes(action.type) : action.type === type\n );\n\n return newCollection;\n }\n\n /**\n * Retrieve actions including a layout hint\n */\n getActionsByLayoutHint(...hints: Array<string>): ActionCollection {\n const newCollection = new ActionCollection();\n\n newCollection.collection = this.filter((action) =>\n action.layouthint.has(...hints)\n );\n\n return newCollection;\n }\n\n /**\n * Indicates if an action with layout hint exists\n */\n hasActionsByLayoutHint(...hints: Array<string>): boolean {\n return this.getActionsByLayoutHint(...hints).length > 0;\n }\n\n /**\n * Use as path regex for react router routes\n */\n get routePath(): string {\n const enabledRoutes = this.collection.filter(\n (action) => !action.isDisabled\n );\n\n if (enabledRoutes.length === 0) {\n return \"__NON_EXISTING_ROUTE__\";\n }\n\n const path = enabledRoutes.map((action) => action.selfhref.path).join(\"|\");\n\n return this.length > 1 ? `(${path})` : path;\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"ActionCollection.js","names":["BaseCollection","ActionModel","ActionCollection","constructor","actions","actionsContributions","Array","isArray","collection","actionModels","actionData","actionContribution","_findInstanceProperty","call","name","push","getActionByKey","key","_context","newCollection","_filterInstanceProperty","action","first","getActionsByType","type","_context2","_includesInstanceProperty","getActionsByLayoutHint","_context3","_len","arguments","length","hints","_key","layouthint","has","hasActionsByLayoutHint","routePath","_context4","enabledRoutes","isDisabled","path","_mapInstanceProperty","selfhref","join"],"sources":["../../../src/models/actions/ActionCollection.js"],"sourcesContent":["// @flow\nimport BaseCollection from \"../base/BaseCollection\";\nimport ActionModel from \"./ActionModel\";\n\n/**\n * Collection of actions\n */\nexport default class ActionCollection extends BaseCollection<ActionModel> {\n constructor(actions?: Object, actionsContributions?: Object) {\n super();\n\n // no actions gives an empty collection\n if (!Array.isArray(actions)) {\n this.collection = [];\n } else if (Array.isArray(actionsContributions)) {\n const actionModels = [];\n for (const actionData of actions) {\n const actionContribution = actionsContributions.find(\n (actionContribution) => actionContribution.name === actionData.name,\n );\n\n if (actionContribution) {\n actionModels.push(new ActionModel(actionData, actionContribution));\n }\n }\n\n this.collection = actionModels;\n }\n }\n\n /**\n * Retrieve action by key\n */\n getActionByKey(key: string): ActionModel | null {\n const newCollection = new ActionCollection();\n\n newCollection.collection = this.filter((action) => action.key === key);\n\n return newCollection.first;\n }\n\n /**\n * Retrieve actions by type\n */\n getActionsByType(type: string | Array<string>): ActionCollection {\n const newCollection = new ActionCollection();\n\n newCollection.collection = this.filter((action) =>\n Array.isArray(type) ? type.includes(action.type) : action.type === type,\n );\n\n return newCollection;\n }\n\n /**\n * Retrieve actions including a layout hint\n */\n getActionsByLayoutHint(...hints: Array<string>): ActionCollection {\n const newCollection = new ActionCollection();\n\n newCollection.collection = this.filter((action) =>\n action.layouthint.has(...hints),\n );\n\n return newCollection;\n }\n\n /**\n * Indicates if an action with layout hint exists\n */\n hasActionsByLayoutHint(...hints: Array<string>): boolean {\n return this.getActionsByLayoutHint(...hints).length > 0;\n }\n\n /**\n * Use as path regex for react router routes\n */\n get routePath(): string {\n const enabledRoutes = this.collection.filter(\n (action) => !action.isDisabled,\n );\n\n if (enabledRoutes.length === 0) {\n return \"__NON_EXISTING_ROUTE__\";\n }\n\n const path = enabledRoutes.map((action) => action.selfhref.path).join(\"|\");\n\n return this.length > 1 ? `(${path})` : path;\n }\n}\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ActionModel.js","names":["has","ProcessStatusSettingsModel","AttributeCollection","BaseModel","Href","HTTP_METHODS","CREATE_ACTION","UPDATE_ACTION","DELETE_ACTION","ActionModel","constructor","data","contributions","_defineProperty","_fieldCollection","fields","createFromHref","name","href","label","type","arguments","length","undefined","isDisabled","selfhref","_href","querystring","method","getData","POST","layouthint","getContribution","all","fieldCollection","_context","_context2","_mapInstanceProperty","_filterInstanceProperty","call","attribute","value","join","getFieldByKey","key","getAttributeByKey","hasFieldByKey","isProcessTask","processStatus","icon","_icon"],"sources":["../../../src/models/actions/ActionModel.js"],"sourcesContent":["// @flow\nimport { has } from \"../../utils/helpers/objects\";\n\nimport ProcessStatusSettingsModel from \"../process/ProcessStatusSettingsModel\";\nimport AttributeCollection from \"../attributes/AttributeCollection\";\nimport BaseModel from \"../base/BaseModel\";\nimport Href from \"../href/Href\";\n\nimport { HTTP_METHODS } from \"../../constants/Constants\";\nimport {\n CREATE_ACTION,\n UPDATE_ACTION,\n DELETE_ACTION,\n} from \"../../constants/LayoutHints\";\n\nimport type { AttributeType } from \"../types\";\n\n/**\n * Defines an Action. For instance an action on the tab 'books', which leads to a form\n */\nexport default class ActionModel extends BaseModel {\n _fieldCollection: AttributeCollection;\n _href: Href;\n _icon: string;\n\n constructor(data: Object, contributions: Object) {\n super(data, contributions);\n\n this._fieldCollection = new AttributeCollection(\n this.data.fields,\n this.contributions.fields\n );\n }\n\n /**\n */\n static createFromHref(\n name: string,\n href: string,\n label: string,\n type: string = \"form\"\n ): ActionModel {\n return new ActionModel(\n {\n name,\n href,\n },\n {\n name,\n label: label || name,\n type,\n }\n );\n }\n\n /**\n */\n get isDisabled(): boolean {\n return this.data.href == null;\n }\n\n /**\n * retrieve href of action\n */\n get selfhref(): Href {\n return (\n this._href || new Href(`${this.data.href}?${this.querystring}`, \"Form\")\n );\n }\n\n /**\n */\n set selfhref(href: Href) {\n this._href = href;\n }\n\n /**\n * retrieve request method\n */\n get method(): $Keys<typeof HTTP_METHODS> {\n return this.getData(\"method\", HTTP_METHODS.POST);\n }\n\n /**\n * Retrieve type of method\n */\n get type(): string {\n if (this.layouthint.has(CREATE_ACTION)) {\n return \"create\";\n }\n if (this.layouthint.has(UPDATE_ACTION)) {\n return \"update\";\n }\n if (this.layouthint.has(DELETE_ACTION)) {\n return \"delete\";\n }\n\n return this.getContribution(\"type\", \"general\");\n }\n\n /**\n * Retrieve name of action\n */\n get name(): string {\n return this.getData(\"name\", \"unknown\");\n }\n\n /**\n * retrieve the collection of field attributes as an array\n */\n get fields(): Array<AttributeType> {\n return this._fieldCollection.all;\n }\n\n /**\n * Retrieve the field collection\n */\n get fieldCollection(): AttributeCollection {\n return this._fieldCollection;\n }\n\n /**\n */\n set fieldCollection(fieldCollection: AttributeCollection) {\n this._fieldCollection = fieldCollection;\n }\n\n /**\n * Retrieve querystring of action\n */\n get querystring(): string {\n return this.fields\n .filter((attribute) => attribute.value != null && attribute.value !== \"\")\n .map((attribute) => {\n const { value } = attribute;\n if (value !== null) {\n return `${attribute.name}=${value}`;\n }\n return attribute.name;\n })\n .join(\"&\");\n }\n\n /**\n * Retrieve a field by it's key\n */\n getFieldByKey(key: string): AttributeType | null {\n return this._fieldCollection.getAttributeByKey(key);\n }\n\n /**\n * Indicates if field exists by the given key\n */\n hasFieldByKey(key: string): boolean {\n return this.getFieldByKey(key) !== null;\n }\n\n /**\n * Getting the key/name of this action\n */\n get key(): string {\n return this.data.name;\n }\n\n /**\n * Getting the label of the action\n */\n get label(): string {\n return this.getContribution(\"label\", this.key);\n }\n\n /**\n */\n get isProcessTask(): boolean {\n return has(this.contributions, \"processTask\");\n }\n\n /**\n */\n get processStatus(): ProcessStatusSettingsModel | null {\n if (this.isProcessTask) {\n return new ProcessStatusSettingsModel(\n this.getData(\"processStatus\", {}),\n this.getContribution(\"processTask\", {})\n );\n }\n\n return null;\n }\n\n /**\n */\n get icon(): string {\n return this._icon;\n }\n\n /**\n */\n set icon(icon: string) {\n this._icon = icon;\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"ActionModel.js","names":["has","ProcessStatusSettingsModel","AttributeCollection","BaseModel","Href","HTTP_METHODS","CREATE_ACTION","UPDATE_ACTION","DELETE_ACTION","ActionModel","constructor","data","contributions","_defineProperty","_fieldCollection","fields","createFromHref","name","href","label","type","arguments","length","undefined","isDisabled","selfhref","_href","querystring","method","getData","POST","layouthint","getContribution","all","fieldCollection","_context","_context2","_mapInstanceProperty","_filterInstanceProperty","call","attribute","value","join","getFieldByKey","key","getAttributeByKey","hasFieldByKey","isProcessTask","processStatus","icon","_icon"],"sources":["../../../src/models/actions/ActionModel.js"],"sourcesContent":["// @flow\nimport { has } from \"../../utils/helpers/objects\";\n\nimport ProcessStatusSettingsModel from \"../process/ProcessStatusSettingsModel\";\nimport AttributeCollection from \"../attributes/AttributeCollection\";\nimport BaseModel from \"../base/BaseModel\";\nimport Href from \"../href/Href\";\n\nimport { HTTP_METHODS } from \"../../constants/Constants\";\nimport {\n CREATE_ACTION,\n UPDATE_ACTION,\n DELETE_ACTION,\n} from \"../../constants/LayoutHints\";\n\nimport type { AttributeType } from \"../types\";\n\n/**\n * Defines an Action. For instance an action on the tab 'books', which leads to a form\n */\nexport default class ActionModel extends BaseModel {\n _fieldCollection: AttributeCollection;\n _href: Href;\n _icon: string;\n\n constructor(data: Object, contributions: Object) {\n super(data, contributions);\n\n this._fieldCollection = new AttributeCollection(\n this.data.fields,\n this.contributions.fields,\n );\n }\n\n /**\n */\n static createFromHref(\n name: string,\n href: string,\n label: string,\n type: string = \"form\",\n ): ActionModel {\n return new ActionModel(\n {\n name,\n href,\n },\n {\n name,\n label: label || name,\n type,\n },\n );\n }\n\n /**\n */\n get isDisabled(): boolean {\n return this.data.href == null;\n }\n\n /**\n * retrieve href of action\n */\n get selfhref(): Href {\n return (\n this._href || new Href(`${this.data.href}?${this.querystring}`, \"Form\")\n );\n }\n\n /**\n */\n set selfhref(href: Href) {\n this._href = href;\n }\n\n /**\n * retrieve request method\n */\n get method(): $Keys<typeof HTTP_METHODS> {\n return this.getData(\"method\", HTTP_METHODS.POST);\n }\n\n /**\n * Retrieve type of method\n */\n get type(): string {\n if (this.layouthint.has(CREATE_ACTION)) {\n return \"create\";\n }\n if (this.layouthint.has(UPDATE_ACTION)) {\n return \"update\";\n }\n if (this.layouthint.has(DELETE_ACTION)) {\n return \"delete\";\n }\n\n return this.getContribution(\"type\", \"general\");\n }\n\n /**\n * Retrieve name of action\n */\n get name(): string {\n return this.getData(\"name\", \"unknown\");\n }\n\n /**\n * retrieve the collection of field attributes as an array\n */\n get fields(): Array<AttributeType> {\n return this._fieldCollection.all;\n }\n\n /**\n * Retrieve the field collection\n */\n get fieldCollection(): AttributeCollection {\n return this._fieldCollection;\n }\n\n /**\n */\n set fieldCollection(fieldCollection: AttributeCollection) {\n this._fieldCollection = fieldCollection;\n }\n\n /**\n * Retrieve querystring of action\n */\n get querystring(): string {\n return this.fields\n .filter((attribute) => attribute.value != null && attribute.value !== \"\")\n .map((attribute) => {\n const { value } = attribute;\n if (value !== null) {\n return `${attribute.name}=${value}`;\n }\n return attribute.name;\n })\n .join(\"&\");\n }\n\n /**\n * Retrieve a field by it's key\n */\n getFieldByKey(key: string): AttributeType | null {\n return this._fieldCollection.getAttributeByKey(key);\n }\n\n /**\n * Indicates if field exists by the given key\n */\n hasFieldByKey(key: string): boolean {\n return this.getFieldByKey(key) !== null;\n }\n\n /**\n * Getting the key/name of this action\n */\n get key(): string {\n return this.data.name;\n }\n\n /**\n * Getting the label of the action\n */\n get label(): string {\n return this.getContribution(\"label\", this.key);\n }\n\n /**\n */\n get isProcessTask(): boolean {\n return has(this.contributions, \"processTask\");\n }\n\n /**\n */\n get processStatus(): ProcessStatusSettingsModel | null {\n if (this.isProcessTask) {\n return new ProcessStatusSettingsModel(\n this.getData(\"processStatus\", {}),\n this.getContribution(\"processTask\", {}),\n );\n }\n\n return null;\n }\n\n /**\n */\n get icon(): string {\n return this._icon;\n }\n\n /**\n */\n set icon(icon: string) {\n this._icon = icon;\n }\n}\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ApplicationModel.js","names":["ResourceModel","LinkModel","UserServicesModel","NotAllowedUriException","DEFAULT_AUTHENTICATION_TYPE","ApplicationModel","constructor","arguments","_defineProperty","type","modelName","isApplicableModel","data","contributions","resourcetype","getInitialChildModelLinks","userService","links","getLinkByKey","href","path","setChildModels","models","userServiceModel","_findInstanceProperty","call","model","userServices","label","getContribution","authenticationTypes","sort","a","b","isPrimary","tabs","getLinksByGroup","modelcatalog","create","_userServices","isLoggedIn","userHref","userLink"],"sources":["../../../src/models/application/ApplicationModel.js"],"sourcesContent":["// @flow\nimport ResourceModel from \"../base/ResourceModel\";\nimport LinkModel from \"../links/LinkModel\";\nimport UserServicesModel from \"../user/UserServicesModel\";\n\nimport { NotAllowedUriException } from \"../../exceptions\";\n\nimport { DEFAULT_AUTHENTICATION_TYPE } from \"../../constants\";\n\nimport type { ModularUIModel, AuthenticationType } from \"../types\";\nimport type { ModularUIResponse } from \"../../modularui\";\nimport type LinkCollection from \"../links/LinkCollection\";\nimport type Href from \"../href/Href\";\n\n/**\n * The Application model\n */\nexport default class ApplicationModel extends ResourceModel {\n _userServices: ?UserServicesModel;\n\n /**\n * Retrieve type of model\n */\n get type(): string {\n return \"Application\";\n }\n\n /**\n */\n static get modelName(): string {\n return \"ApplicationModel\";\n }\n\n /**\n */\n static isApplicableModel(data: ModularUIResponse): boolean {\n return (\n data.contributions.resourcetype &&\n data.contributions.resourcetype === \"Application\"\n );\n }\n\n /**\n */\n getInitialChildModelLinks(): Array<LinkModel> {\n const userService = this.links.getLinkByKey(\"UserServices\");\n if (userService && userService.href.path === \"/login\") {\n throw new NotAllowedUriException(\n \"The user service (Login panel) should not have the uri '/login', use a different URI because this uri matches the login service.\"\n );\n }\n\n return userService ? [userService] : [];\n }\n\n /**\n */\n setChildModels(models: Array<ModularUIModel>) {\n const userServiceModel = models.find(\n (model) => model.type === \"UserServices\"\n );\n\n if (userServiceModel) {\n this.userServices = userServiceModel;\n }\n }\n\n /**\n * Getting the label of the application\n */\n get label(): string {\n return this.getContribution(\"label\", \"\");\n }\n\n /**\n * Getting the authentication types of the application\n */\n get authenticationTypes(): Array<AuthenticationType> {\n const authenticationTypes = this.getContribution(\"security\", [\n DEFAULT_AUTHENTICATION_TYPE,\n ]);\n\n if (authenticationTypes) {\n //put primary first\n return authenticationTypes?.sort(\n (a: AuthenticationType, b: AuthenticationType) =>\n a.isPrimary === b.isPrimary ? 0 : a.isPrimary ? -1 : 1\n );\n }\n\n return [DEFAULT_AUTHENTICATION_TYPE];\n }\n\n /**\n * Getting the tab links\n */\n get tabs(): LinkCollection {\n return this.links.getLinksByGroup(\"tab\");\n }\n\n /**\n * Get modelcatalog link\n */\n get modelcatalog(): LinkModel {\n return LinkModel.create(\"modelcatalog\", \"/modelcatalog\", \"Model catalog\");\n }\n\n /**\n * Set the userservices for this application\n */\n set userServices(model: ?ModularUIModel) {\n this._userServices = model instanceof UserServicesModel ? model : null;\n }\n\n /**\n * returns the userservices configured for this application\n */\n get userServices(): ?UserServicesModel {\n return this._userServices ? this._userServices : null;\n }\n\n /**\n * Indicates if the user is logged in\n */\n get isLoggedIn(): boolean {\n return this.userServices?.isLoggedIn ?? false;\n }\n\n /**\n * Retrieve link to the user information,\n * only available when the user services are available\n */\n get userHref(): Href | null {\n if (this.userServices != null && this.userServices.userLink != null) {\n return this.userServices.userLink.href;\n }\n\n return null;\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"ApplicationModel.js","names":["ResourceModel","LinkModel","UserServicesModel","NotAllowedUriException","DEFAULT_AUTHENTICATION_TYPE","ApplicationModel","constructor","arguments","_defineProperty","type","modelName","isApplicableModel","data","contributions","resourcetype","getInitialChildModelLinks","userService","links","getLinkByKey","href","path","setChildModels","models","userServiceModel","_findInstanceProperty","call","model","userServices","label","getContribution","authenticationTypes","sort","a","b","isPrimary","tabs","getLinksByGroup","modelcatalog","create","_userServices","isLoggedIn","userHref","userLink"],"sources":["../../../src/models/application/ApplicationModel.js"],"sourcesContent":["// @flow\nimport ResourceModel from \"../base/ResourceModel\";\nimport LinkModel from \"../links/LinkModel\";\nimport UserServicesModel from \"../user/UserServicesModel\";\n\nimport { NotAllowedUriException } from \"../../exceptions\";\n\nimport { DEFAULT_AUTHENTICATION_TYPE } from \"../../constants\";\n\nimport type { ModularUIModel, AuthenticationType } from \"../types\";\nimport type { ModularUIResponse } from \"../../modularui\";\nimport type LinkCollection from \"../links/LinkCollection\";\nimport type Href from \"../href/Href\";\n\n/**\n * The Application model\n */\nexport default class ApplicationModel extends ResourceModel {\n _userServices: ?UserServicesModel;\n\n /**\n * Retrieve type of model\n */\n get type(): string {\n return \"Application\";\n }\n\n /**\n */\n static get modelName(): string {\n return \"ApplicationModel\";\n }\n\n /**\n */\n static isApplicableModel(data: ModularUIResponse): boolean {\n return (\n data.contributions.resourcetype &&\n data.contributions.resourcetype === \"Application\"\n );\n }\n\n /**\n */\n getInitialChildModelLinks(): Array<LinkModel> {\n const userService = this.links.getLinkByKey(\"UserServices\");\n if (userService && userService.href.path === \"/login\") {\n throw new NotAllowedUriException(\n \"The user service (Login panel) should not have the uri '/login', use a different URI because this uri matches the login service.\",\n );\n }\n\n return userService ? [userService] : [];\n }\n\n /**\n */\n setChildModels(models: Array<ModularUIModel>) {\n const userServiceModel = models.find(\n (model) => model.type === \"UserServices\",\n );\n\n if (userServiceModel) {\n this.userServices = userServiceModel;\n }\n }\n\n /**\n * Getting the label of the application\n */\n get label(): string {\n return this.getContribution(\"label\", \"\");\n }\n\n /**\n * Getting the authentication types of the application\n */\n get authenticationTypes(): Array<AuthenticationType> {\n const authenticationTypes = this.getContribution(\"security\", [\n DEFAULT_AUTHENTICATION_TYPE,\n ]);\n\n if (authenticationTypes) {\n //put primary first\n return authenticationTypes?.sort(\n (a: AuthenticationType, b: AuthenticationType) =>\n a.isPrimary === b.isPrimary ? 0 : a.isPrimary ? -1 : 1,\n );\n }\n\n return [DEFAULT_AUTHENTICATION_TYPE];\n }\n\n /**\n * Getting the tab links\n */\n get tabs(): LinkCollection {\n return this.links.getLinksByGroup(\"tab\");\n }\n\n /**\n * Get modelcatalog link\n */\n get modelcatalog(): LinkModel {\n return LinkModel.create(\"modelcatalog\", \"/modelcatalog\", \"Model catalog\");\n }\n\n /**\n * Set the userservices for this application\n */\n set userServices(model: ?ModularUIModel) {\n this._userServices = model instanceof UserServicesModel ? model : null;\n }\n\n /**\n * returns the userservices configured for this application\n */\n get userServices(): ?UserServicesModel {\n return this._userServices ? this._userServices : null;\n }\n\n /**\n * Indicates if the user is logged in\n */\n get isLoggedIn(): boolean {\n return this.userServices?.isLoggedIn ?? false;\n }\n\n /**\n * Retrieve link to the user information,\n * only available when the user services are available\n */\n get userHref(): Href | null {\n if (this.userServices != null && this.userServices.userLink != null) {\n return this.userServices.userLink.href;\n }\n\n return null;\n }\n}\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"AttributeCollection.js","names":["has","ResourceCollection","createAttribute","ChoiceAttributeModel","CompositeAttributeModel","ContentConfiguration","ConfigurationException","AttributeCollection","constructor","data","arguments","length","undefined","contributions","isReadonly","forEach","contribution","key","_Object$keys","attribute","readonly","collection","push","processLayoutHintRules","attributes","all","visible","_context","_filterInstanceProperty","call","isHidden","questions","_context2","isResult","results","_context3","getAttributeByAttribute","_context4","_findInstanceProperty","attr","equals","getChildByAttribute","getAttributeByKey","_context5","getChildByKey","hasAttributeByKey","getAttributeByLayoutHint","_context6","_len","hints","Array","_key","layouthint","getChoiceAttributeByLayoutHint","layoutHint","getAttributesByLayoutHint","_context7","_len2","_key2","replace","oldAttribute","newAttribute","replaceByKey","index","setReferenceDate","date","clone","referenceDate","hasServerErrors","some","addServerError","error","elementid","anchor","hasErrors","updateValidations","errors","_context8","hasDynamicValidationData","attributeErrors","compositeChildErrors","elementId","_startsWithInstanceProperty","children","indicateContentConfiguration","contentConfiguration","formdata","getFormData","_context9","_context10","validationData","attributesFormData","_mapInstanceProperty","isVisible","getEmptyFormData","attributeFormData"],"sources":["../../../src/models/attributes/AttributeCollection.js"],"sourcesContent":["// @flow\nimport { has } from \"../../utils/helpers/objects\";\n\nimport ResourceCollection from \"../base/ResourceCollection\";\n\nimport createAttribute from \"./_createAttribute\";\nimport ChoiceAttributeModel from \"./ChoiceAttributeModel\";\nimport CompositeAttributeModel from \"./CompositeAttributeModel\";\n\nimport ContentConfiguration from \"../contentconfiguration/ContentConfiguration\";\n\nimport { ConfigurationException } from \"../../exceptions\";\n\nimport type { AttributeType, FormErrorAnchor } from \"../types\";\n\n/**\n * Collection of attributes\n */\nclass AttributeCollection extends ResourceCollection<AttributeType> {\n constructor(\n data: Object | Array<Object> = {},\n contributions: Array<Object> = [],\n isReadonly: boolean = false\n ) {\n super();\n\n if (contributions) {\n contributions.forEach((contribution) => {\n const [key] = Object.keys(contribution);\n\n const attribute = createAttribute(key, data, contribution[key]);\n\n if (attribute !== null) {\n // when readonly is not explicitly set in the contributions, follow argument\n if (isReadonly && !has(contribution[key], \"readonly\")) {\n attribute.readonly = true;\n }\n\n this.collection.push(attribute);\n }\n });\n\n this.processLayoutHintRules();\n }\n }\n\n /**\n * Retrieve all attributes in this collection<br>\n * This getter processes layout hints, this is different from the standard {@link BaseCollection#all} property\n * @returns {Array<AttributeType>}\n */\n get attributes(): Array<AttributeType> {\n this.processLayoutHintRules();\n return this.all;\n }\n\n /**\n * Replace attributes with a new array of attributes\n */\n set attributes(attributes: Array<AttributeType>) {\n this.collection = attributes;\n }\n\n /**\n */\n processLayoutHintRules(): void {\n this.all.forEach((attribute) => {\n attribute.processLayoutHintRules(this);\n });\n }\n\n /**\n * Retrieve only visible attributes from the collection\n */\n get visible(): Array<AttributeType> {\n // Let flow know that this is a AttributeCollection\n if (this instanceof AttributeCollection) {\n return this.attributes.filter((attribute) => !attribute.isHidden);\n }\n\n return [];\n }\n\n /**\n */\n get questions(): Array<AttributeType> {\n return this.visible.filter((attribute) => !attribute.isResult);\n }\n\n /**\n */\n get results(): Array<AttributeType> {\n return this.visible.filter((attribute) => attribute.isResult);\n }\n\n /**\n */\n getAttributeByAttribute(attribute: AttributeType): AttributeType | null {\n return this.find((attr) => {\n if (attr.equals(attribute)) {\n return true;\n } else if (attribute instanceof CompositeAttributeModel) {\n return attribute.getChildByAttribute(attribute);\n }\n\n return false;\n });\n }\n\n /**\n * Get a single attribute by it's key\n */\n getAttributeByKey(key: string): AttributeType | null {\n return this.find((attribute) => {\n if (attribute.key === key) {\n return true;\n } else if (attribute instanceof CompositeAttributeModel) {\n return attribute.getChildByKey(key);\n }\n\n return false;\n });\n }\n\n /**\n * Indicates if attribute with key exists in collection\n */\n hasAttributeByKey(key: string): boolean {\n return this.getAttributeByKey(key) !== null;\n }\n\n /**\n * Getting the first attribute having the supplied layout hint\n */\n getAttributeByLayoutHint(...hints: Array<string>): AttributeType | null {\n return this.find((attribute) => attribute.layouthint.has(...hints)) || null;\n }\n\n /**\n * Getting a choice attribute by layouthint, returns null when not found or not a choice attribute\n */\n getChoiceAttributeByLayoutHint(\n layoutHint: string\n ): ChoiceAttributeModel | null {\n const attribute = this.getAttributeByLayoutHint(layoutHint);\n\n return attribute instanceof ChoiceAttributeModel ? attribute : null;\n }\n\n /**\n * Getting all attributes having the supplied layout hint\n */\n getAttributesByLayoutHint(...hints: Array<string>): Array<AttributeType> {\n return this.filter((attribute) => attribute.layouthint.has(...hints));\n }\n\n /**\n * Replace an attribute instance in the collection with a new attribute instance\n */\n replace(oldAttribute: AttributeType, newAttribute: AttributeType): void {\n this.replaceByKey(oldAttribute.key, newAttribute);\n }\n\n /**\n * Replace an attribute by the key of the attribute\n */\n replaceByKey(key: string, newAttribute: AttributeType): void {\n this.forEach((attribute, index) => {\n if (attribute.key === key) {\n this.collection[index] = newAttribute;\n }\n });\n }\n\n /**\n * Set reference date by replacing an old attribute with a new attribute with a reference Date\n * Date is a string in ISO format yyyy-MM-dd\n */\n setReferenceDate(date: string): void {\n this.forEach((attribute) => {\n const newAttribute = attribute.clone();\n\n newAttribute.referenceDate = date;\n\n this.replace(attribute, newAttribute);\n });\n }\n\n /**\n */\n hasServerErrors(): boolean {\n return this.collection.some((attribute) => attribute.hasServerErrors());\n }\n\n /**\n */\n addServerError(error: FormErrorAnchor): void {\n const elementid = error?.anchor?.elementid;\n\n if (elementid) {\n const attribute = this.getAttributeByKey(elementid);\n if (attribute) {\n attribute.addServerError(error);\n } else {\n throw new ConfigurationException(\n `Could not add error to missing attribute with id ${elementid}`\n );\n }\n }\n }\n\n /**\n */\n hasErrors(): boolean {\n return this.visible.some((attribute) => attribute.hasErrors());\n }\n\n /**\n */\n updateValidations(errors: Array<Object>): AttributeCollection {\n this.all\n .filter((attribute) => attribute.hasDynamicValidationData)\n .forEach((attribute) => {\n const attributeErrors = errors.filter(\n (error) => error.anchor?.elementid === attribute.key\n );\n attribute.updateValidations(attributeErrors);\n\n if (attribute instanceof CompositeAttributeModel) {\n const compositeChildErrors = errors.filter((error) => {\n const elementId = error.anchor?.elementid;\n return elementId && elementId.startsWith(`${attribute.key}.`);\n });\n\n attribute.children.updateValidations(\n `${attribute.key}.`,\n compositeChildErrors\n );\n }\n });\n\n return this;\n }\n\n /**\n */\n indicateContentConfiguration(\n contentConfiguration: ContentConfiguration\n ): void {\n if (contentConfiguration) {\n this.all.forEach((attribute) => {\n attribute.indicateContentConfiguration(contentConfiguration);\n });\n }\n }\n\n /**\n * Generate formdata object for current collection based on formdata of attributes\n * Skip attributes that are readonly, the confirmation password or null\n */\n get formdata(): { [string]: any } | null {\n return this.getFormData(false);\n }\n\n /**\n */\n getFormData(validationData: boolean = false): { [string]: any } | null {\n const attributesFormData = this.attributes\n .filter(\n (attribute) =>\n attribute.formdata !== null &&\n !attribute.readonly &&\n (!validationData || attribute.hasDynamicValidationData)\n )\n .map((attribute) => {\n // make attribute empty when it is not (or no longer) visible\n if (attribute.isVisible) {\n return attribute.formdata;\n }\n\n return attribute.getEmptyFormData();\n });\n\n let data = {};\n attributesFormData.forEach((attributeFormData) => {\n // $FlowIgnore[cannot-spread-indexer]\n // $FlowIgnore[exponential-spread]\n data = {\n ...data,\n ...attributeFormData,\n };\n });\n\n return data;\n }\n}\n\nexport default AttributeCollection;\n"],"mappings":"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"}
1
+ {"version":3,"file":"AttributeCollection.js","names":["has","ResourceCollection","createAttribute","ChoiceAttributeModel","CompositeAttributeModel","ContentConfiguration","ConfigurationException","AttributeCollection","constructor","data","arguments","length","undefined","contributions","isReadonly","forEach","contribution","key","_Object$keys","attribute","readonly","collection","push","processLayoutHintRules","attributes","all","visible","_context","_filterInstanceProperty","call","isHidden","questions","_context2","isResult","results","_context3","getAttributeByAttribute","_context4","_findInstanceProperty","attr","equals","getChildByAttribute","getAttributeByKey","_context5","getChildByKey","hasAttributeByKey","getAttributeByLayoutHint","_context6","_len","hints","Array","_key","layouthint","getChoiceAttributeByLayoutHint","layoutHint","getAttributesByLayoutHint","_context7","_len2","_key2","replace","oldAttribute","newAttribute","replaceByKey","index","setReferenceDate","date","clone","referenceDate","hasServerErrors","some","addServerError","error","elementid","anchor","hasErrors","updateValidations","errors","_context8","hasDynamicValidationData","attributeErrors","compositeChildErrors","elementId","_startsWithInstanceProperty","children","indicateContentConfiguration","contentConfiguration","formdata","getFormData","_context9","_context10","validationData","attributesFormData","_mapInstanceProperty","isVisible","getEmptyFormData","attributeFormData"],"sources":["../../../src/models/attributes/AttributeCollection.js"],"sourcesContent":["// @flow\nimport { has } from \"../../utils/helpers/objects\";\n\nimport ResourceCollection from \"../base/ResourceCollection\";\n\nimport createAttribute from \"./_createAttribute\";\nimport ChoiceAttributeModel from \"./ChoiceAttributeModel\";\nimport CompositeAttributeModel from \"./CompositeAttributeModel\";\n\nimport ContentConfiguration from \"../contentconfiguration/ContentConfiguration\";\n\nimport { ConfigurationException } from \"../../exceptions\";\n\nimport type { AttributeType, FormErrorAnchor } from \"../types\";\n\n/**\n * Collection of attributes\n */\nclass AttributeCollection extends ResourceCollection<AttributeType> {\n constructor(\n data: Object | Array<Object> = {},\n contributions: Array<Object> = [],\n isReadonly: boolean = false,\n ) {\n super();\n\n if (contributions) {\n contributions.forEach((contribution) => {\n const [key] = Object.keys(contribution);\n\n const attribute = createAttribute(key, data, contribution[key]);\n\n if (attribute !== null) {\n // when readonly is not explicitly set in the contributions, follow argument\n if (isReadonly && !has(contribution[key], \"readonly\")) {\n attribute.readonly = true;\n }\n\n this.collection.push(attribute);\n }\n });\n\n this.processLayoutHintRules();\n }\n }\n\n /**\n * Retrieve all attributes in this collection<br>\n * This getter processes layout hints, this is different from the standard {@link BaseCollection#all} property\n * @returns {Array<AttributeType>}\n */\n get attributes(): Array<AttributeType> {\n this.processLayoutHintRules();\n return this.all;\n }\n\n /**\n * Replace attributes with a new array of attributes\n */\n set attributes(attributes: Array<AttributeType>) {\n this.collection = attributes;\n }\n\n /**\n */\n processLayoutHintRules(): void {\n this.all.forEach((attribute) => {\n attribute.processLayoutHintRules(this);\n });\n }\n\n /**\n * Retrieve only visible attributes from the collection\n */\n get visible(): Array<AttributeType> {\n // Let flow know that this is a AttributeCollection\n if (this instanceof AttributeCollection) {\n return this.attributes.filter((attribute) => !attribute.isHidden);\n }\n\n return [];\n }\n\n /**\n */\n get questions(): Array<AttributeType> {\n return this.visible.filter((attribute) => !attribute.isResult);\n }\n\n /**\n */\n get results(): Array<AttributeType> {\n return this.visible.filter((attribute) => attribute.isResult);\n }\n\n /**\n */\n getAttributeByAttribute(attribute: AttributeType): AttributeType | null {\n return this.find((attr) => {\n if (attr.equals(attribute)) {\n return true;\n } else if (attribute instanceof CompositeAttributeModel) {\n return attribute.getChildByAttribute(attribute);\n }\n\n return false;\n });\n }\n\n /**\n * Get a single attribute by it's key\n */\n getAttributeByKey(key: string): AttributeType | null {\n return this.find((attribute) => {\n if (attribute.key === key) {\n return true;\n } else if (attribute instanceof CompositeAttributeModel) {\n return attribute.getChildByKey(key);\n }\n\n return false;\n });\n }\n\n /**\n * Indicates if attribute with key exists in collection\n */\n hasAttributeByKey(key: string): boolean {\n return this.getAttributeByKey(key) !== null;\n }\n\n /**\n * Getting the first attribute having the supplied layout hint\n */\n getAttributeByLayoutHint(...hints: Array<string>): AttributeType | null {\n return this.find((attribute) => attribute.layouthint.has(...hints)) || null;\n }\n\n /**\n * Getting a choice attribute by layouthint, returns null when not found or not a choice attribute\n */\n getChoiceAttributeByLayoutHint(\n layoutHint: string,\n ): ChoiceAttributeModel | null {\n const attribute = this.getAttributeByLayoutHint(layoutHint);\n\n return attribute instanceof ChoiceAttributeModel ? attribute : null;\n }\n\n /**\n * Getting all attributes having the supplied layout hint\n */\n getAttributesByLayoutHint(...hints: Array<string>): Array<AttributeType> {\n return this.filter((attribute) => attribute.layouthint.has(...hints));\n }\n\n /**\n * Replace an attribute instance in the collection with a new attribute instance\n */\n replace(oldAttribute: AttributeType, newAttribute: AttributeType): void {\n this.replaceByKey(oldAttribute.key, newAttribute);\n }\n\n /**\n * Replace an attribute by the key of the attribute\n */\n replaceByKey(key: string, newAttribute: AttributeType): void {\n this.forEach((attribute, index) => {\n if (attribute.key === key) {\n this.collection[index] = newAttribute;\n }\n });\n }\n\n /**\n * Set reference date by replacing an old attribute with a new attribute with a reference Date\n * Date is a string in ISO format yyyy-MM-dd\n */\n setReferenceDate(date: string): void {\n this.forEach((attribute) => {\n const newAttribute = attribute.clone();\n\n newAttribute.referenceDate = date;\n\n this.replace(attribute, newAttribute);\n });\n }\n\n /**\n */\n hasServerErrors(): boolean {\n return this.collection.some((attribute) => attribute.hasServerErrors());\n }\n\n /**\n */\n addServerError(error: FormErrorAnchor): void {\n const elementid = error?.anchor?.elementid;\n\n if (elementid) {\n const attribute = this.getAttributeByKey(elementid);\n if (attribute) {\n attribute.addServerError(error);\n } else {\n throw new ConfigurationException(\n `Could not add error to missing attribute with id ${elementid}`,\n );\n }\n }\n }\n\n /**\n */\n hasErrors(): boolean {\n return this.visible.some((attribute) => attribute.hasErrors());\n }\n\n /**\n */\n updateValidations(errors: Array<Object>): AttributeCollection {\n this.all\n .filter((attribute) => attribute.hasDynamicValidationData)\n .forEach((attribute) => {\n const attributeErrors = errors.filter(\n (error) => error.anchor?.elementid === attribute.key,\n );\n attribute.updateValidations(attributeErrors);\n\n if (attribute instanceof CompositeAttributeModel) {\n const compositeChildErrors = errors.filter((error) => {\n const elementId = error.anchor?.elementid;\n return elementId && elementId.startsWith(`${attribute.key}.`);\n });\n\n attribute.children.updateValidations(\n `${attribute.key}.`,\n compositeChildErrors,\n );\n }\n });\n\n return this;\n }\n\n /**\n */\n indicateContentConfiguration(\n contentConfiguration: ContentConfiguration,\n ): void {\n if (contentConfiguration) {\n this.all.forEach((attribute) => {\n attribute.indicateContentConfiguration(contentConfiguration);\n });\n }\n }\n\n /**\n * Generate formdata object for current collection based on formdata of attributes\n * Skip attributes that are readonly, the confirmation password or null\n */\n get formdata(): { [string]: any } | null {\n return this.getFormData(false);\n }\n\n /**\n */\n getFormData(validationData: boolean = false): { [string]: any } | null {\n const attributesFormData = this.attributes\n .filter(\n (attribute) =>\n attribute.formdata !== null &&\n !attribute.readonly &&\n (!validationData || attribute.hasDynamicValidationData),\n )\n .map((attribute) => {\n // make attribute empty when it is not (or no longer) visible\n if (attribute.isVisible) {\n return attribute.formdata;\n }\n\n return attribute.getEmptyFormData();\n });\n\n let data = {};\n attributesFormData.forEach((attributeFormData) => {\n // $FlowIgnore[cannot-spread-indexer]\n // $FlowIgnore[exponential-spread]\n data = {\n ...data,\n ...attributeFormData,\n };\n });\n\n return data;\n }\n}\n\nexport default AttributeCollection;\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"AttributeContent.js","names":["retrieveText","hasAllContentInData","SectionModel","LayoutHintCollection","isPlainObject","AttributeContent","constructor","content","_defineProperty","_content","fromData","header","headerLabel","headerDescription","label","description","message","elements","_context","_context2","_mapInstanceProperty","_filterInstanceProperty","call","element","propertyElement","layouthint","properties","textFragmentElement","textfragments","textfragment","text","contentElement","sections","section","getContentElements","elementName","_context3","getContentElementCollections","collectionName","_context4","_context5","_flatInstanceProperty","getContentElementCollectionByLabels","labels","_context6","_context7","_context8","_includesInstanceProperty","getConceptPropertiesByLabels","getTextFragmentsByLabels","getSectionsByType","types","_context9","type","getSectionsByLabels","getReferredSections","referredSections","push"],"sources":["../../../src/models/attributes/AttributeContent.js"],"sourcesContent":["// @flow\nimport { retrieveText } from \"../../utils/helpers/text\";\nimport { hasAllContentInData } from \"../../constants/Settings\";\nimport SectionModel from \"../content/SectionModel\";\n\nimport LayoutHintCollection from \"../layouthint/LayoutHintCollection\";\nimport { isPlainObject } from \"../../utils\";\n\nimport type {\n ContentData,\n ContentElementMapped,\n PropertyData,\n PropertyElementMapped,\n TextFragmentData,\n TextFragmentElementMapped,\n ContentAll,\n} from \"../types\";\nimport type SubSectionModel from \"../content/SubSectionModel\";\n\n/**\n */\nclass AttributeContent {\n _content: ?ContentData;\n\n constructor(content: ?ContentData) {\n this._content = content;\n }\n\n /**\n */\n get fromData(): boolean {\n return hasAllContentInData();\n }\n\n /**\n */\n get header(): {\n label: ?string,\n description: ?string,\n } {\n let headerLabel = null;\n let headerDescription = null;\n\n const label = this._content?.header?.label;\n if (label) {\n headerLabel = label;\n }\n\n const description = this._content?.header?.description;\n if (description) {\n if (isPlainObject(description) && \"message\" in description) {\n headerDescription = description.message;\n } else if (typeof description === \"string\") {\n headerDescription = description;\n }\n }\n\n return { label: headerLabel, description: headerDescription };\n }\n\n /**\n */\n get elements(): ContentAll {\n if (this._content?.elements) {\n return this._content.elements\n .filter((element) => element !== null)\n .map((element) => {\n if (element.propertyElement) {\n const { label, layouthint, properties } = element.propertyElement;\n\n return {\n propertyElement: {\n label,\n layouthint: new LayoutHintCollection(layouthint),\n properties,\n },\n };\n }\n\n if (element.textFragmentElement) {\n const { label, layouthint, textfragments } =\n element.textFragmentElement;\n return {\n textFragmentElement: {\n label,\n layouthint: new LayoutHintCollection(layouthint),\n textfragments: textfragments.map((textfragment) => ({\n ...textfragment,\n text: retrieveText(textfragment.text),\n })),\n },\n };\n }\n\n if (element.contentElement) {\n const { label, layouthint, sections } = element.contentElement;\n return {\n contentElement: {\n label,\n layouthint: new LayoutHintCollection(layouthint),\n sections: sections.map(\n (section) => new SectionModel(section, null)\n ),\n },\n };\n }\n\n // $FlowIssue\n return element;\n });\n }\n\n return [];\n }\n\n /**\n */\n get label(): ?string {\n return this._content?.label;\n }\n\n /**\n */\n getContentElements<T>(elementName: string): Array<T> {\n // $FlowIssue incompatible-return\n return this.elements.filter((element) => elementName in element);\n }\n\n /**\n */\n getContentElementCollections<T>(\n elementName: string,\n collectionName: string\n ): Array<T> {\n return this.getContentElements(elementName)\n .map((element) => element[elementName][collectionName])\n .flat();\n }\n\n /**\n */\n getContentElementCollectionByLabels<T, U>(\n elementName: string,\n collectionName: string,\n labels: Array<string>\n ): Array<U> {\n return (\n this.getContentElements<T>(elementName)\n // $FlowIssue incompatible-use\n .filter((element) => labels.includes(element[elementName].label))\n // $FlowIssue incompatible-use\n .map((element) => element[elementName][collectionName])\n .flat()\n );\n }\n\n /**\n */\n get properties(): Array<PropertyData> {\n return this.getContentElementCollections<PropertyData>(\n \"propertyElement\",\n \"properties\"\n );\n }\n\n /**\n * Get concept properties by property element label\n */\n getConceptPropertiesByLabels(labels: Array<string>): Array<PropertyData> {\n return this.getContentElementCollectionByLabels<\n PropertyElementMapped,\n PropertyData\n >(\"propertyElement\", \"properties\", labels);\n }\n\n /**\n */\n get textfragments(): Array<TextFragmentData> {\n return this.getContentElementCollections<TextFragmentData>(\n \"textFragmentElement\",\n \"textfragments\"\n );\n }\n\n /**\n * Get concept text fragments by text fragment element label\n */\n getTextFragmentsByLabels(labels: Array<string>): Array<TextFragmentData> {\n return this.getContentElementCollectionByLabels<\n TextFragmentElementMapped,\n TextFragmentData\n >(\"textFragmentElement\", \"textfragments\", labels);\n }\n\n /**\n */\n get sections(): Array<SectionModel> {\n return this.getContentElementCollections<SectionModel>(\n \"contentElement\",\n \"sections\"\n );\n }\n\n /**\n */\n getSectionsByType(types: Array<string>): Array<SectionModel> {\n return this.sections.filter((section) => types.includes(section.type));\n }\n\n /**\n * Get concept text fragments by text fragment element label\n */\n getSectionsByLabels(labels: Array<string>): Array<SectionModel> {\n return this.getContentElementCollectionByLabels<\n ContentElementMapped,\n SectionModel\n >(\"contentElement\", \"sections\", labels);\n }\n\n /**\n */\n getReferredSections(): Array<SectionModel | SubSectionModel> {\n const referredSections = [];\n\n for (const section of this.sections) {\n referredSections.push(...section.getReferredSections());\n }\n\n return referredSections;\n }\n}\n\nexport default AttributeContent;\n"],"mappings":"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"}
1
+ {"version":3,"file":"AttributeContent.js","names":["retrieveText","hasAllContentInData","SectionModel","LayoutHintCollection","isPlainObject","AttributeContent","constructor","content","_defineProperty","_content","fromData","header","headerLabel","headerDescription","label","description","message","elements","_context","_context2","_mapInstanceProperty","_filterInstanceProperty","call","element","propertyElement","layouthint","properties","textFragmentElement","textfragments","textfragment","text","contentElement","sections","section","getContentElements","elementName","_context3","getContentElementCollections","collectionName","_context4","_context5","_flatInstanceProperty","getContentElementCollectionByLabels","labels","_context6","_context7","_context8","_includesInstanceProperty","getConceptPropertiesByLabels","getTextFragmentsByLabels","getSectionsByType","types","_context9","type","getSectionsByLabels","getReferredSections","referredSections","push"],"sources":["../../../src/models/attributes/AttributeContent.js"],"sourcesContent":["// @flow\nimport { retrieveText } from \"../../utils/helpers/text\";\nimport { hasAllContentInData } from \"../../constants/Settings\";\nimport SectionModel from \"../content/SectionModel\";\n\nimport LayoutHintCollection from \"../layouthint/LayoutHintCollection\";\nimport { isPlainObject } from \"../../utils\";\n\nimport type {\n ContentData,\n ContentElementMapped,\n PropertyData,\n PropertyElementMapped,\n TextFragmentData,\n TextFragmentElementMapped,\n ContentAll,\n} from \"../types\";\nimport type SubSectionModel from \"../content/SubSectionModel\";\n\n/**\n */\nclass AttributeContent {\n _content: ?ContentData;\n\n constructor(content: ?ContentData) {\n this._content = content;\n }\n\n /**\n */\n get fromData(): boolean {\n return hasAllContentInData();\n }\n\n /**\n */\n get header(): {\n label: ?string,\n description: ?string,\n } {\n let headerLabel = null;\n let headerDescription = null;\n\n const label = this._content?.header?.label;\n if (label) {\n headerLabel = label;\n }\n\n const description = this._content?.header?.description;\n if (description) {\n if (isPlainObject(description) && \"message\" in description) {\n headerDescription = description.message;\n } else if (typeof description === \"string\") {\n headerDescription = description;\n }\n }\n\n return { label: headerLabel, description: headerDescription };\n }\n\n /**\n */\n get elements(): ContentAll {\n if (this._content?.elements) {\n return this._content.elements\n .filter((element) => element !== null)\n .map((element) => {\n if (element.propertyElement) {\n const { label, layouthint, properties } = element.propertyElement;\n\n return {\n propertyElement: {\n label,\n layouthint: new LayoutHintCollection(layouthint),\n properties,\n },\n };\n }\n\n if (element.textFragmentElement) {\n const { label, layouthint, textfragments } =\n element.textFragmentElement;\n return {\n textFragmentElement: {\n label,\n layouthint: new LayoutHintCollection(layouthint),\n textfragments: textfragments.map((textfragment) => ({\n ...textfragment,\n text: retrieveText(textfragment.text),\n })),\n },\n };\n }\n\n if (element.contentElement) {\n const { label, layouthint, sections } = element.contentElement;\n return {\n contentElement: {\n label,\n layouthint: new LayoutHintCollection(layouthint),\n sections: sections.map(\n (section) => new SectionModel(section, null),\n ),\n },\n };\n }\n\n // $FlowIssue\n return element;\n });\n }\n\n return [];\n }\n\n /**\n */\n get label(): ?string {\n return this._content?.label;\n }\n\n /**\n */\n getContentElements<T>(elementName: string): Array<T> {\n // $FlowIssue incompatible-return\n return this.elements.filter((element) => elementName in element);\n }\n\n /**\n */\n getContentElementCollections<T>(\n elementName: string,\n collectionName: string,\n ): Array<T> {\n return this.getContentElements(elementName)\n .map((element) => element[elementName][collectionName])\n .flat();\n }\n\n /**\n */\n getContentElementCollectionByLabels<T, U>(\n elementName: string,\n collectionName: string,\n labels: Array<string>,\n ): Array<U> {\n return (\n this.getContentElements<T>(elementName)\n // $FlowIssue incompatible-use\n .filter((element) => labels.includes(element[elementName].label))\n // $FlowIssue incompatible-use\n .map((element) => element[elementName][collectionName])\n .flat()\n );\n }\n\n /**\n */\n get properties(): Array<PropertyData> {\n return this.getContentElementCollections<PropertyData>(\n \"propertyElement\",\n \"properties\",\n );\n }\n\n /**\n * Get concept properties by property element label\n */\n getConceptPropertiesByLabels(labels: Array<string>): Array<PropertyData> {\n return this.getContentElementCollectionByLabels<\n PropertyElementMapped,\n PropertyData,\n >(\"propertyElement\", \"properties\", labels);\n }\n\n /**\n */\n get textfragments(): Array<TextFragmentData> {\n return this.getContentElementCollections<TextFragmentData>(\n \"textFragmentElement\",\n \"textfragments\",\n );\n }\n\n /**\n * Get concept text fragments by text fragment element label\n */\n getTextFragmentsByLabels(labels: Array<string>): Array<TextFragmentData> {\n return this.getContentElementCollectionByLabels<\n TextFragmentElementMapped,\n TextFragmentData,\n >(\"textFragmentElement\", \"textfragments\", labels);\n }\n\n /**\n */\n get sections(): Array<SectionModel> {\n return this.getContentElementCollections<SectionModel>(\n \"contentElement\",\n \"sections\",\n );\n }\n\n /**\n */\n getSectionsByType(types: Array<string>): Array<SectionModel> {\n return this.sections.filter((section) => types.includes(section.type));\n }\n\n /**\n * Get concept text fragments by text fragment element label\n */\n getSectionsByLabels(labels: Array<string>): Array<SectionModel> {\n return this.getContentElementCollectionByLabels<\n ContentElementMapped,\n SectionModel,\n >(\"contentElement\", \"sections\", labels);\n }\n\n /**\n */\n getReferredSections(): Array<SectionModel | SubSectionModel> {\n const referredSections = [];\n\n for (const section of this.sections) {\n referredSections.push(...section.getReferredSections());\n }\n\n return referredSections;\n }\n}\n\nexport default AttributeContent;\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"AttributeDataHelper.js","names":["klona","pick","has","isPlainObject","AttributeDataHelper","constructor","data","key","childrenKeys","_defineProperty","_key","Array","isArray","_attribute","_findInstanceProperty","call","attr","elementid","name","param","_value","getValue","attributeData","_links","undefined","_children","createChildren","childData","parentKey","childKey","elements","_context","element","parentData","content","createChild","keyObject","dynamicschema","dynamicschemaId","children","arguments","length","childrenIsArray","value","_context2","_mapInstanceProperty","attribute","_valuesInstanceProperty","suggestions","suggestion","options","_context3","_context4","_filterInstanceProperty","option","selected","code","static","links","attrDS","message","isResult","referenceDate","pickedContent","_Object$keys","getData","_context5","child","subChild"],"sources":["../../../src/models/attributes/AttributeDataHelper.js"],"sourcesContent":["// @flow\nimport { klona } from \"klona/full\";\nimport pick from \"lodash/pick\";\n\nimport { has, isPlainObject } from \"../../utils/helpers/objects\";\n\n/**\n * This util helps to normalize various attribute data formats available in the modular ui.\n * It fixes differences in choice attributes with dynamic schema's, links on download attributes, composites with various children, etc\n *\n * @private\n */\nclass AttributeDataHelper {\n _key: string;\n _attribute: Object;\n _value: any;\n _children: Array<AttributeDataHelper>;\n\n /**\n */\n constructor(\n data: Object | Array<Object>,\n key: string,\n childrenKeys: Array<Object>\n ) {\n this._key = key;\n\n if (Array.isArray(data)) {\n this._attribute =\n data.find(\n (attr) =>\n attr.elementid === key || attr.name === key || attr.param === key\n ) || {};\n this._value = this.getValue(this._attribute);\n } else {\n const attributeData = klona(data);\n attributeData._links = pick(data._links, [\n \"concept\",\n \"download\",\n \"lookupOptions\",\n \"lookupList\",\n ]);\n\n this._attribute = attributeData;\n\n if (data[key] === undefined || (\"name\" in data && \"param\" in data)) {\n this._value = this.getValue(data);\n } else {\n this._value = data[key];\n }\n }\n\n this._children = this.createChildren(data, childrenKeys);\n }\n\n /**\n */\n childData(\n data: Object | Array<Object>,\n parentKey: string,\n childKey: string\n ): Object {\n if (Array.isArray(data)) {\n if (Array.isArray(this._attribute.elements)) {\n return this._attribute.elements.find(\n (element) => element.elementid === childKey\n );\n }\n } else if (has(data, parentKey) && isPlainObject(data[parentKey])) {\n const parentData = data[parentKey];\n if (isPlainObject(parentData) && data.content?.[childKey]) {\n return { ...parentData, content: data.content[childKey] };\n }\n return parentData;\n } else if (has(data, childKey) && isPlainObject(data[childKey])) {\n return data[childKey];\n }\n\n if (isPlainObject(data)) {\n return data;\n }\n\n return {};\n }\n\n /**\n */\n createChild(\n data: Object | Array<Object>,\n childData: Object,\n keyObject: Object\n ): AttributeDataHelper {\n const dynamicschema =\n isPlainObject(data) && !Array.isArray(data)\n ? data.dynamicschema\n : undefined;\n\n let dynamicschemaId = null;\n if (keyObject.dynamicschemaId) {\n dynamicschemaId = keyObject.dynamicschemaId;\n } else if (\n isPlainObject(data) &&\n typeof data.key === \"string\" &&\n keyObject.key\n ) {\n dynamicschemaId = `${data.key}.${keyObject.key}`;\n }\n\n return new AttributeDataHelper(\n {\n ...childData,\n dynamicschema,\n dynamicschemaId,\n },\n keyObject.key,\n keyObject.children\n );\n }\n\n /**\n */\n createChildren(\n data: Object | Array<Object>,\n childrenKeys: Array<Object> = []\n ): Array<AttributeDataHelper> {\n const childrenIsArray = Array.isArray(this.value);\n\n if (childrenIsArray) {\n return this.value.map((value) =>\n childrenKeys.map((keyObject) => {\n const childData = this.childData(value, this.key, keyObject.key);\n\n return this.createChild(data, childData, keyObject);\n })\n );\n }\n\n return childrenKeys.map((keyObject) => {\n const childData = this.childData(data, this.key, keyObject.key);\n\n return this.createChild(data, childData, keyObject);\n });\n }\n\n /**\n */\n getValue(attribute: Object): any {\n if (\"values\" in attribute) {\n return attribute.values;\n }\n\n if (\"value\" in attribute) {\n return attribute.value;\n }\n\n if (\"suggestions\" in attribute) {\n return attribute.suggestions;\n }\n\n if (\"suggestion\" in attribute) {\n return attribute.suggestion;\n }\n\n if (Array.isArray(attribute.options)) {\n return attribute.options\n .filter((option) => option.selected)\n .map((option) => option.code || option.key);\n }\n\n return null;\n }\n\n /**\n */\n get key(): string {\n return this._key;\n }\n\n /**\n */\n get value(): any {\n return this._value;\n }\n\n /**\n */\n get static(): boolean {\n return this._attribute.static || false;\n }\n\n /**\n */\n get links(): any {\n return this._attribute._links || void 0;\n }\n\n /**\n */\n get dynamicschemaId(): string {\n return this._attribute.dynamicschemaId || this.key;\n }\n\n /*\n retrieve the dynamischema by the dynamischemaId\n mentioned in the contributions of the attribute\n */\n /**\n */\n get dynamicschema(): any {\n const { dynamicschema } = this._attribute;\n if (!dynamicschema) {\n return void 0;\n }\n\n if (Array.isArray(dynamicschema)) {\n return dynamicschema;\n } else if (dynamicschema[this.dynamicschemaId]) {\n const attrDS = dynamicschema[this.dynamicschemaId];\n return attrDS.map((attr) => {\n if (attr.elements) {\n return {\n ...attr,\n elements: {\n ...attr.elements,\n dynamicschema,\n },\n };\n }\n\n return attr;\n });\n }\n\n return void 0;\n }\n\n /**\n */\n get options(): any {\n return this._attribute.options || void 0;\n }\n\n /**\n */\n get message(): any {\n return this._attribute.message || void 0;\n }\n\n /**\n */\n get isResult(): boolean {\n return this._attribute.isResult || false;\n }\n\n /**\n */\n get referenceDate(): any {\n return this._attribute.referenceDate || void 0;\n }\n\n /**\n */\n get children(): Array<AttributeDataHelper> {\n return this._children || [];\n }\n\n /**\n */\n get content(): Object {\n if (this._attribute.content) {\n const pickedContent = pick(this._attribute.content, [\n \"header\",\n \"label\",\n \"elements\",\n \"layouthint\",\n \"text\",\n ]);\n\n if (Object.keys(pickedContent).length > 0) {\n return pickedContent;\n }\n }\n\n return null;\n }\n\n /**\n */\n getData(): Object {\n return {\n key: this.key,\n value: this.value,\n static: this.static,\n _links: this.links,\n dynamicschema: this.dynamicschema,\n dynamicschemaId: this.dynamicschemaId,\n options: this.options,\n message: this.message,\n isResult: this.isResult,\n referenceDate: this.referenceDate,\n children: this.children.map((child) =>\n Array.isArray(child)\n ? child.map((subChild) => subChild.getData())\n : child.getData()\n ),\n content: this.content,\n };\n }\n}\n\nexport default AttributeDataHelper;\n"],"mappings":"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"}
1
+ {"version":3,"file":"AttributeDataHelper.js","names":["klona","pick","has","isPlainObject","AttributeDataHelper","constructor","data","key","childrenKeys","_defineProperty","_key","Array","isArray","_attribute","_findInstanceProperty","call","attr","elementid","name","param","_value","getValue","attributeData","_links","undefined","_children","createChildren","childData","parentKey","childKey","elements","_context","element","parentData","content","createChild","keyObject","dynamicschema","dynamicschemaId","children","arguments","length","childrenIsArray","value","_context2","_mapInstanceProperty","attribute","_valuesInstanceProperty","suggestions","suggestion","options","_context3","_context4","_filterInstanceProperty","option","selected","code","static","links","attrDS","message","isResult","referenceDate","pickedContent","_Object$keys","getData","_context5","child","subChild"],"sources":["../../../src/models/attributes/AttributeDataHelper.js"],"sourcesContent":["// @flow\nimport { klona } from \"klona/full\";\nimport pick from \"lodash/pick\";\n\nimport { has, isPlainObject } from \"../../utils/helpers/objects\";\n\n/**\n * This util helps to normalize various attribute data formats available in the modular ui.\n * It fixes differences in choice attributes with dynamic schema's, links on download attributes, composites with various children, etc\n *\n * @private\n */\nclass AttributeDataHelper {\n _key: string;\n _attribute: Object;\n _value: any;\n _children: Array<AttributeDataHelper>;\n\n /**\n */\n constructor(\n data: Object | Array<Object>,\n key: string,\n childrenKeys: Array<Object>,\n ) {\n this._key = key;\n\n if (Array.isArray(data)) {\n this._attribute =\n data.find(\n (attr) =>\n attr.elementid === key || attr.name === key || attr.param === key,\n ) || {};\n this._value = this.getValue(this._attribute);\n } else {\n const attributeData = klona(data);\n attributeData._links = pick(data._links, [\n \"concept\",\n \"download\",\n \"lookupOptions\",\n \"lookupList\",\n ]);\n\n this._attribute = attributeData;\n\n if (data[key] === undefined || (\"name\" in data && \"param\" in data)) {\n this._value = this.getValue(data);\n } else {\n this._value = data[key];\n }\n }\n\n this._children = this.createChildren(data, childrenKeys);\n }\n\n /**\n */\n childData(\n data: Object | Array<Object>,\n parentKey: string,\n childKey: string,\n ): Object {\n if (Array.isArray(data)) {\n if (Array.isArray(this._attribute.elements)) {\n return this._attribute.elements.find(\n (element) => element.elementid === childKey,\n );\n }\n } else if (has(data, parentKey) && isPlainObject(data[parentKey])) {\n const parentData = data[parentKey];\n if (isPlainObject(parentData) && data.content?.[childKey]) {\n return { ...parentData, content: data.content[childKey] };\n }\n return parentData;\n } else if (has(data, childKey) && isPlainObject(data[childKey])) {\n return data[childKey];\n }\n\n if (isPlainObject(data)) {\n return data;\n }\n\n return {};\n }\n\n /**\n */\n createChild(\n data: Object | Array<Object>,\n childData: Object,\n keyObject: Object,\n ): AttributeDataHelper {\n const dynamicschema =\n isPlainObject(data) && !Array.isArray(data)\n ? data.dynamicschema\n : undefined;\n\n let dynamicschemaId = null;\n if (keyObject.dynamicschemaId) {\n dynamicschemaId = keyObject.dynamicschemaId;\n } else if (\n isPlainObject(data) &&\n typeof data.key === \"string\" &&\n keyObject.key\n ) {\n dynamicschemaId = `${data.key}.${keyObject.key}`;\n }\n\n return new AttributeDataHelper(\n {\n ...childData,\n dynamicschema,\n dynamicschemaId,\n },\n keyObject.key,\n keyObject.children,\n );\n }\n\n /**\n */\n createChildren(\n data: Object | Array<Object>,\n childrenKeys: Array<Object> = [],\n ): Array<AttributeDataHelper> {\n const childrenIsArray = Array.isArray(this.value);\n\n if (childrenIsArray) {\n return this.value.map((value) =>\n childrenKeys.map((keyObject) => {\n const childData = this.childData(value, this.key, keyObject.key);\n\n return this.createChild(data, childData, keyObject);\n }),\n );\n }\n\n return childrenKeys.map((keyObject) => {\n const childData = this.childData(data, this.key, keyObject.key);\n\n return this.createChild(data, childData, keyObject);\n });\n }\n\n /**\n */\n getValue(attribute: Object): any {\n if (\"values\" in attribute) {\n return attribute.values;\n }\n\n if (\"value\" in attribute) {\n return attribute.value;\n }\n\n if (\"suggestions\" in attribute) {\n return attribute.suggestions;\n }\n\n if (\"suggestion\" in attribute) {\n return attribute.suggestion;\n }\n\n if (Array.isArray(attribute.options)) {\n return attribute.options\n .filter((option) => option.selected)\n .map((option) => option.code || option.key);\n }\n\n return null;\n }\n\n /**\n */\n get key(): string {\n return this._key;\n }\n\n /**\n */\n get value(): any {\n return this._value;\n }\n\n /**\n */\n get static(): boolean {\n return this._attribute.static || false;\n }\n\n /**\n */\n get links(): any {\n return this._attribute._links || void 0;\n }\n\n /**\n */\n get dynamicschemaId(): string {\n return this._attribute.dynamicschemaId || this.key;\n }\n\n /*\n retrieve the dynamischema by the dynamischemaId\n mentioned in the contributions of the attribute\n */\n /**\n */\n get dynamicschema(): any {\n const { dynamicschema } = this._attribute;\n if (!dynamicschema) {\n return void 0;\n }\n\n if (Array.isArray(dynamicschema)) {\n return dynamicschema;\n } else if (dynamicschema[this.dynamicschemaId]) {\n const attrDS = dynamicschema[this.dynamicschemaId];\n return attrDS.map((attr) => {\n if (attr.elements) {\n return {\n ...attr,\n elements: {\n ...attr.elements,\n dynamicschema,\n },\n };\n }\n\n return attr;\n });\n }\n\n return void 0;\n }\n\n /**\n */\n get options(): any {\n return this._attribute.options || void 0;\n }\n\n /**\n */\n get message(): any {\n return this._attribute.message || void 0;\n }\n\n /**\n */\n get isResult(): boolean {\n return this._attribute.isResult || false;\n }\n\n /**\n */\n get referenceDate(): any {\n return this._attribute.referenceDate || void 0;\n }\n\n /**\n */\n get children(): Array<AttributeDataHelper> {\n return this._children || [];\n }\n\n /**\n */\n get content(): Object {\n if (this._attribute.content) {\n const pickedContent = pick(this._attribute.content, [\n \"header\",\n \"label\",\n \"elements\",\n \"layouthint\",\n \"text\",\n ]);\n\n if (Object.keys(pickedContent).length > 0) {\n return pickedContent;\n }\n }\n\n return null;\n }\n\n /**\n */\n getData(): Object {\n return {\n key: this.key,\n value: this.value,\n static: this.static,\n _links: this.links,\n dynamicschema: this.dynamicschema,\n dynamicschemaId: this.dynamicschemaId,\n options: this.options,\n message: this.message,\n isResult: this.isResult,\n referenceDate: this.referenceDate,\n children: this.children.map((child) =>\n Array.isArray(child)\n ? child.map((subChild) => subChild.getData())\n : child.getData(),\n ),\n content: this.content,\n };\n }\n}\n\nexport default AttributeDataHelper;\n"],"mappings":"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"}