@beinformed/ui 1.65.13 → 1.65.15

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 (656) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/esm/hooks/useList.js +3 -1
  3. package/esm/hooks/useList.js.flow +11 -4
  4. package/esm/hooks/useList.js.map +1 -1
  5. package/esm/hooks/useModularUI.js +21 -26
  6. package/esm/hooks/useModularUI.js.flow +28 -34
  7. package/esm/hooks/useModularUI.js.map +1 -1
  8. package/esm/hooks/useModularUIBasic.js +8 -39
  9. package/esm/hooks/useModularUIBasic.js.flow +6 -42
  10. package/esm/hooks/useModularUIBasic.js.map +1 -1
  11. package/lib/hooks/useList.js +3 -1
  12. package/lib/hooks/useList.js.map +1 -1
  13. package/lib/hooks/useModularUI.js +20 -25
  14. package/lib/hooks/useModularUI.js.map +1 -1
  15. package/lib/hooks/useModularUIBasic.js +9 -39
  16. package/lib/hooks/useModularUIBasic.js.map +1 -1
  17. package/package.json +2 -3
  18. package/src/builder/__tests__/LayoutHintConfig.json +0 -20
  19. package/src/builder/__tests__/mergeLayoutHintConfigurations.spec.js +0 -71
  20. package/src/builder/__tests__/subdir/LayoutHintConfig.json +0 -20
  21. package/src/builder/index.js +0 -2
  22. package/src/builder/mergeLayoutHintConfigurations.js +0 -62
  23. package/src/constants/Constants.js +0 -196
  24. package/src/constants/LayoutHintConfig.js +0 -186
  25. package/src/constants/LayoutHints.js +0 -134
  26. package/src/constants/Settings.js +0 -267
  27. package/src/constants/index.js +0 -4
  28. package/src/exceptions/ConfigurationException.js +0 -13
  29. package/src/exceptions/FetchException.js +0 -101
  30. package/src/exceptions/IllegalArgumentException.js +0 -12
  31. package/src/exceptions/IllegalReturnException.js +0 -11
  32. package/src/exceptions/IllegalStateException.js +0 -12
  33. package/src/exceptions/JsonParseException.js +0 -12
  34. package/src/exceptions/MissingPropertyException.js +0 -13
  35. package/src/exceptions/NetworkException.js +0 -20
  36. package/src/exceptions/NotAllowedUriException.js +0 -12
  37. package/src/exceptions/NotFoundException.js +0 -20
  38. package/src/exceptions/ServerRequestException.js +0 -12
  39. package/src/exceptions/ThemePropertyException.js +0 -12
  40. package/src/exceptions/TimeoutException.js +0 -13
  41. package/src/exceptions/UnauthorizedException.js +0 -26
  42. package/src/exceptions/UnsupportedOperationException.js +0 -12
  43. package/src/exceptions/index.js +0 -16
  44. package/src/hooks/__tests__/UseModularUIModel.spec.js +0 -194
  45. package/src/hooks/__tests__/useAuthentication.spec.js +0 -166
  46. package/src/hooks/__tests__/useForm.spec.js +0 -300
  47. package/src/hooks/__tests__/useI18n.spec.js +0 -30
  48. package/src/hooks/__tests__/useModal.spec.js +0 -67
  49. package/src/hooks/__tests__/useModelCatalog.spec.js +0 -180
  50. package/src/hooks/__tests__/useModels.spec.js +0 -138
  51. package/src/hooks/__tests__/useModularUIBasic.spec.js +0 -126
  52. package/src/hooks/__tests__/useNotification.spec.js +0 -47
  53. package/src/hooks/__tests__/usePreference.spec.js +0 -72
  54. package/src/hooks/__tests__/useProgressIndicator.spec.js +0 -67
  55. package/src/hooks/index.js +0 -21
  56. package/src/hooks/useAllFormsOnModel.js +0 -92
  57. package/src/hooks/useAuthentication.js +0 -113
  58. package/src/hooks/useContent.js +0 -48
  59. package/src/hooks/useDeepCompareEffect.js +0 -50
  60. package/src/hooks/useForm.js +0 -156
  61. package/src/hooks/useI18n.js +0 -46
  62. package/src/hooks/useList.js +0 -221
  63. package/src/hooks/useLookup.js +0 -82
  64. package/src/hooks/useModal.js +0 -46
  65. package/src/hooks/useModelCatalog.js +0 -256
  66. package/src/hooks/useModels.js +0 -50
  67. package/src/hooks/useModularUI.js +0 -79
  68. package/src/hooks/useModularUIBasic.js +0 -152
  69. package/src/hooks/useModularUIKey.js +0 -14
  70. package/src/hooks/useModularUIModel.js +0 -86
  71. package/src/hooks/useModularUIRequest.js +0 -25
  72. package/src/hooks/useNotification.js +0 -48
  73. package/src/hooks/usePanel.js +0 -79
  74. package/src/hooks/usePreference.js +0 -27
  75. package/src/hooks/useProgressIndicator.js +0 -50
  76. package/src/hooks/useRouter.js +0 -70
  77. package/src/hooks/useSearch.js +0 -31
  78. package/src/i18n/Locale.js +0 -157
  79. package/src/i18n/Locales.js +0 -171
  80. package/src/i18n/Message.js +0 -66
  81. package/src/i18n/__tests__/Locale.spec.js +0 -108
  82. package/src/i18n/__tests__/Locales.spec.js +0 -137
  83. package/src/i18n/index.js +0 -12
  84. package/src/i18n/languages.js +0 -207
  85. package/src/i18n/translations/beinformed_error_messages_en.nl.js +0 -98
  86. package/src/i18n/translations/beinformed_error_messages_nl.nl.js +0 -98
  87. package/src/i18n/types.js +0 -23
  88. package/src/i18n/withMessage.js +0 -47
  89. package/src/index.js +0 -7
  90. package/src/models/__tests__/resolveModel.spec.js +0 -34
  91. package/src/models/actions/ActionCollection.js +0 -100
  92. package/src/models/actions/ActionModel.js +0 -207
  93. package/src/models/actions/__mock__/action.js +0 -35
  94. package/src/models/actions/__tests__/ActionCollection.spec.js +0 -98
  95. package/src/models/actions/__tests__/ActionModel.spec.js +0 -75
  96. package/src/models/application/ApplicationModel.js +0 -168
  97. package/src/models/application/__mock__/application.js +0 -14
  98. package/src/models/application/__mock__/contributions.json +0 -312
  99. package/src/models/application/__mock__/data.json +0 -263
  100. package/src/models/application/__tests__/Application.spec.js +0 -99
  101. package/src/models/application/__tests__/webapp.json +0 -42
  102. package/src/models/application/__tests__/webappContributions.json +0 -43
  103. package/src/models/attributes/AttributeCollection.js +0 -306
  104. package/src/models/attributes/AttributeContent.js +0 -233
  105. package/src/models/attributes/AttributeDataHelper.js +0 -323
  106. package/src/models/attributes/AttributeModel.js +0 -1021
  107. package/src/models/attributes/AttributeSetModel.js +0 -117
  108. package/src/models/attributes/BooleanAttributeModel.js +0 -319
  109. package/src/models/attributes/CaptchaAttributeModel.js +0 -51
  110. package/src/models/attributes/ChoiceAttributeModel.js +0 -520
  111. package/src/models/attributes/ChoiceAttributeOptionCollection.js +0 -372
  112. package/src/models/attributes/ChoiceAttributeOptionModel.js +0 -415
  113. package/src/models/attributes/CompositeAttributeChildCollection.js +0 -254
  114. package/src/models/attributes/CompositeAttributeModel.js +0 -439
  115. package/src/models/attributes/DatetimeAttributeModel.js +0 -566
  116. package/src/models/attributes/HelptextAttributeModel.js +0 -54
  117. package/src/models/attributes/LabelAttributeModel.js +0 -36
  118. package/src/models/attributes/MemoAttributeModel.js +0 -43
  119. package/src/models/attributes/MoneyAttributeModel.js +0 -45
  120. package/src/models/attributes/NumberAttributeModel.js +0 -255
  121. package/src/models/attributes/PasswordAttributeModel.js +0 -245
  122. package/src/models/attributes/StringAttributeModel.js +0 -314
  123. package/src/models/attributes/UploadAttributeModel.js +0 -261
  124. package/src/models/attributes/XMLAttributeModel.js +0 -51
  125. package/src/models/attributes/__mock__/_ActionFieldsContributions.json +0 -12
  126. package/src/models/attributes/__mock__/_ActionFieldsData.json +0 -7
  127. package/src/models/attributes/__mock__/_FormCollectionContribution.json +0 -419
  128. package/src/models/attributes/__mock__/_FormCollectionData.json +0 -122
  129. package/src/models/attributes/__mock__/_InstrumentQuestionContributions.json +0 -178
  130. package/src/models/attributes/__mock__/_ListAttributeContributions.json +0 -82
  131. package/src/models/attributes/__mock__/_ListAttributeData.json +0 -70
  132. package/src/models/attributes/__mock__/_ListDetailContributions.json +0 -75
  133. package/src/models/attributes/__mock__/_ListDetailData.json +0 -38
  134. package/src/models/attributes/__mock__/_TreeFormAttributeContribution.json +0 -117
  135. package/src/models/attributes/__mock__/_TreeFormAttributeData.json +0 -27
  136. package/src/models/attributes/__mock__/form.contributions.json +0 -410
  137. package/src/models/attributes/__mock__/form.data.json +0 -113
  138. package/src/models/attributes/__mock__/form.js +0 -6
  139. package/src/models/attributes/__mock__/list.contributions.json +0 -110
  140. package/src/models/attributes/__mock__/list.data.json +0 -84
  141. package/src/models/attributes/__mock__/list.js +0 -6
  142. package/src/models/attributes/__tests__/AttributeCollection.spec.js +0 -160
  143. package/src/models/attributes/__tests__/AttributeCollectionComposite.spec.js +0 -146
  144. package/src/models/attributes/__tests__/AttributeContent.spec.js +0 -225
  145. package/src/models/attributes/__tests__/AttributeDataHelper.spec.js +0 -634
  146. package/src/models/attributes/__tests__/AttributeModel.spec.js +0 -274
  147. package/src/models/attributes/__tests__/AttributeSetModel.spec.js +0 -39
  148. package/src/models/attributes/__tests__/BooleanAttributeModel.spec.js +0 -107
  149. package/src/models/attributes/__tests__/CaptchaAttributeModel.spec.js +0 -13
  150. package/src/models/attributes/__tests__/ChoiceAttributeModel.spec.js +0 -750
  151. package/src/models/attributes/__tests__/ChoiceAttributeOptionCollection.spec.js +0 -507
  152. package/src/models/attributes/__tests__/ChoiceAttributeOptionModel.spec.js +0 -107
  153. package/src/models/attributes/__tests__/CompositeAttributeModel.spec.js +0 -467
  154. package/src/models/attributes/__tests__/DateAttributeModel.spec.js +0 -134
  155. package/src/models/attributes/__tests__/DatetimeAttributeModel.spec.js +0 -206
  156. package/src/models/attributes/__tests__/DatetimeAttributeModel_offset.spec.js +0 -345
  157. package/src/models/attributes/__tests__/HelptextAttributeModel.spec.js +0 -64
  158. package/src/models/attributes/__tests__/LabelAttributeModel.spec.js +0 -13
  159. package/src/models/attributes/__tests__/LookupAttributeModel.spec.js +0 -47
  160. package/src/models/attributes/__tests__/MemoAttributeModel.spec.js +0 -28
  161. package/src/models/attributes/__tests__/MoneyAttributeModel.spec.js +0 -22
  162. package/src/models/attributes/__tests__/NumberAttributeModel.spec.js +0 -67
  163. package/src/models/attributes/__tests__/PasswordAttributeModel.spec.js +0 -49
  164. package/src/models/attributes/__tests__/StringAttributeModel.spec.js +0 -125
  165. package/src/models/attributes/__tests__/TimeAttributeModel.spec.js +0 -57
  166. package/src/models/attributes/__tests__/TimestampModel.spec.js +0 -43
  167. package/src/models/attributes/__tests__/UploadAttributeModel.spec.js +0 -67
  168. package/src/models/attributes/__tests__/XMLAttributeModel.spec.js +0 -17
  169. package/src/models/attributes/__tests__/_createAttribute.spec.js +0 -106
  170. package/src/models/attributes/__tests__/createAttributeComposite.spec.js +0 -151
  171. package/src/models/attributes/__tests__/createAttributeDynamicSchema.spec.js +0 -134
  172. package/src/models/attributes/_createAttribute.js +0 -147
  173. package/src/models/attributes/input-constraints/BSNConstraint.js +0 -80
  174. package/src/models/attributes/input-constraints/ConstraintCollection.js +0 -65
  175. package/src/models/attributes/input-constraints/ConstraintModel.js +0 -76
  176. package/src/models/attributes/input-constraints/DateBoundaryConstraint.js +0 -240
  177. package/src/models/attributes/input-constraints/DateTimeDateFormatConstraint.js +0 -72
  178. package/src/models/attributes/input-constraints/DateTimeTimeFormatConstraint.js +0 -72
  179. package/src/models/attributes/input-constraints/DatetimeFormatConstraint.js +0 -132
  180. package/src/models/attributes/input-constraints/FileExtensionConstraint.js +0 -60
  181. package/src/models/attributes/input-constraints/FileSizeConstraint.js +0 -101
  182. package/src/models/attributes/input-constraints/IBANConstraint.js +0 -46
  183. package/src/models/attributes/input-constraints/MandatoryConstraint.js +0 -54
  184. package/src/models/attributes/input-constraints/MandatoryRangeConstraint.js +0 -84
  185. package/src/models/attributes/input-constraints/NumberBoundaryConstraint.js +0 -213
  186. package/src/models/attributes/input-constraints/NumberFormatConstraint.js +0 -153
  187. package/src/models/attributes/input-constraints/NumberGroupingConstraint.js +0 -140
  188. package/src/models/attributes/input-constraints/PasswordConfirmConstraint.js +0 -68
  189. package/src/models/attributes/input-constraints/PasswordLowerAndUpperCaseConstraint.js +0 -44
  190. package/src/models/attributes/input-constraints/PasswordMinNumericCharactersConstraint.js +0 -60
  191. package/src/models/attributes/input-constraints/PasswordMinSpecialCharactersConstraint.js +0 -60
  192. package/src/models/attributes/input-constraints/PasswordThreeConsecutiveCharactersNotAllowedConstraint.js +0 -72
  193. package/src/models/attributes/input-constraints/RangeConstraint.js +0 -161
  194. package/src/models/attributes/input-constraints/RegexConstraint.js +0 -72
  195. package/src/models/attributes/input-constraints/StringLengthConstraint.js +0 -179
  196. package/src/models/attributes/input-constraints/XMLConstraint.js +0 -62
  197. package/src/models/attributes/input-constraints/__tests__/BSNConstraint.spec.js +0 -25
  198. package/src/models/attributes/input-constraints/__tests__/ConstraintCollection.spec.js +0 -9
  199. package/src/models/attributes/input-constraints/__tests__/ConstraintModel.spec.js +0 -35
  200. package/src/models/attributes/input-constraints/__tests__/DateBoundaryConstraint.spec.js +0 -117
  201. package/src/models/attributes/input-constraints/__tests__/DateTimeDateFormatConstraint.spec.js +0 -30
  202. package/src/models/attributes/input-constraints/__tests__/DateTimeTimeFormatConstraint.spec.js +0 -54
  203. package/src/models/attributes/input-constraints/__tests__/DatetimeFormatConstraint.spec.js +0 -79
  204. package/src/models/attributes/input-constraints/__tests__/FileExtensionConstraint.spec.js +0 -20
  205. package/src/models/attributes/input-constraints/__tests__/FileSizeConstraint.spec.js +0 -53
  206. package/src/models/attributes/input-constraints/__tests__/IBANConstraint.spec.js +0 -12
  207. package/src/models/attributes/input-constraints/__tests__/MandatoryConstraint.spec.js +0 -14
  208. package/src/models/attributes/input-constraints/__tests__/NumberBoundaryConstraint.spec.js +0 -46
  209. package/src/models/attributes/input-constraints/__tests__/NumberFormatConstraint.spec.js +0 -137
  210. package/src/models/attributes/input-constraints/__tests__/NumberGroupingConstraint.spec.js +0 -85
  211. package/src/models/attributes/input-constraints/__tests__/PasswordConfirmConstraint.spec.js +0 -21
  212. package/src/models/attributes/input-constraints/__tests__/PasswordLowerAndUpperCaseConstraint.spec.js +0 -14
  213. package/src/models/attributes/input-constraints/__tests__/PasswordMinNumericCharactersConstraint.spec.js +0 -11
  214. package/src/models/attributes/input-constraints/__tests__/PasswordMinSpecialCharactersConstraint.spec.js +0 -11
  215. package/src/models/attributes/input-constraints/__tests__/PasswordThreeConsecutiveCharactersNotAllowedConstraint.spec.js +0 -22
  216. package/src/models/attributes/input-constraints/__tests__/RegexConstraint.spec.js +0 -42
  217. package/src/models/attributes/input-constraints/__tests__/StringLengthConstraint.spec.js +0 -102
  218. package/src/models/attributes/input-constraints/__tests__/XMLConstraint.spec.js +0 -15
  219. package/src/models/attributes/layouthint-rules/BaseLayoutHintRule.js +0 -74
  220. package/src/models/attributes/layouthint-rules/DependentAttribute.js +0 -246
  221. package/src/models/attributes/layouthint-rules/LayoutHintRuleCollection.js +0 -101
  222. package/src/models/attributes/layouthint-rules/RemainingTotalUploadSize.js +0 -67
  223. package/src/models/attributes/layouthint-rules/__mock__/MockedCollectionFactory.js +0 -54
  224. package/src/models/attributes/layouthint-rules/__tests__/BaseLayoutHintRule.spec.js +0 -29
  225. package/src/models/attributes/layouthint-rules/__tests__/DependentAttribute.spec.js +0 -310
  226. package/src/models/attributes/layouthint-rules/__tests__/LayoutHintRuleCollection.spec.js +0 -58
  227. package/src/models/attributes/layouthint-rules/__tests__/RemainingTotalUploadSize.spec.js +0 -24
  228. package/src/models/base/BaseCollection.js +0 -191
  229. package/src/models/base/BaseModel.js +0 -155
  230. package/src/models/base/ResourceCollection.js +0 -42
  231. package/src/models/base/ResourceModel.js +0 -246
  232. package/src/models/base/__tests__/BaseCollection.spec.js +0 -108
  233. package/src/models/base/__tests__/BaseModel.spec.js +0 -85
  234. package/src/models/base/__tests__/ResourceCollection.spec.js +0 -51
  235. package/src/models/base/__tests__/ResourceModel.spec.js +0 -100
  236. package/src/models/base/__tests__/webapp.json +0 -52
  237. package/src/models/caseview/CaseViewModel.js +0 -188
  238. package/src/models/caseview/__mock__/caseview.js +0 -14
  239. package/src/models/caseview/__mock__/contributions.json +0 -146
  240. package/src/models/caseview/__mock__/data.json +0 -21
  241. package/src/models/caseview/__tests__/CaseViewModel.spec.js +0 -132
  242. package/src/models/caseview/__tests__/caseview.json +0 -49
  243. package/src/models/caseview/__tests__/caseviewContributions.json +0 -118
  244. package/src/models/caseview/__tests__/caseview_local_taskgroup.json +0 -57
  245. package/src/models/concepts/BusinessScenarioModel.js +0 -176
  246. package/src/models/concepts/ConceptDetailModel.js +0 -349
  247. package/src/models/concepts/ConceptIndexModel.js +0 -186
  248. package/src/models/concepts/ConceptLinkModel.js +0 -208
  249. package/src/models/concepts/ConceptRelationCollection.js +0 -95
  250. package/src/models/concepts/ConceptRelationModel.js +0 -129
  251. package/src/models/concepts/ConceptTypeDetailModel.js +0 -128
  252. package/src/models/concepts/SourceReferenceCollection.js +0 -40
  253. package/src/models/concepts/SourceReferenceModel.js +0 -126
  254. package/src/models/concepts/__mock__/business_scenario.js +0 -26
  255. package/src/models/concepts/__mock__/business_scenario_data.json +0 -234
  256. package/src/models/concepts/__mock__/business_scenario_step.json +0 -64
  257. package/src/models/concepts/__mock__/conceptdetail.js +0 -27
  258. package/src/models/concepts/__mock__/conceptdetail_contributions.json +0 -156
  259. package/src/models/concepts/__mock__/conceptdetail_data.json +0 -164
  260. package/src/models/concepts/__mock__/conceptindex.js +0 -15
  261. package/src/models/concepts/__mock__/conceptindex_contributions.json +0 -86
  262. package/src/models/concepts/__mock__/conceptindex_data.json +0 -329
  263. package/src/models/concepts/__mock__/concepttype.js +0 -13
  264. package/src/models/concepts/__mock__/concepttype_Calculation.json +0 -75
  265. package/src/models/concepts/__mock__/concepttype_contributions.json +0 -139
  266. package/src/models/concepts/__mock__/concepttype_data.json +0 -32
  267. package/src/models/concepts/__mock__/concepttype_hierarchy.js +0 -13
  268. package/src/models/concepts/__mock__/concepttype_hierarchy.json +0 -32
  269. package/src/models/concepts/__mock__/related_concepts.js +0 -12
  270. package/src/models/concepts/__mock__/related_concepts_contributions.json +0 -41
  271. package/src/models/concepts/__mock__/related_concepts_data.json +0 -2408
  272. package/src/models/concepts/__mock__/relation_with_props_and_tf_data.js +0 -27
  273. package/src/models/concepts/__mock__/relation_with_props_and_tf_data.json +0 -67
  274. package/src/models/concepts/__tests__/BusinessScenarioModel.spec.js +0 -28
  275. package/src/models/concepts/__tests__/ConceptDetailModel.spec.js +0 -65
  276. package/src/models/concepts/__tests__/ConceptIndexModel.spec.js +0 -42
  277. package/src/models/concepts/__tests__/ConceptLinkModel.spec.js +0 -9
  278. package/src/models/concepts/__tests__/ConceptRelationCollection.spec.js +0 -9
  279. package/src/models/concepts/__tests__/ConceptRelationModel.spec.js +0 -53
  280. package/src/models/concepts/__tests__/ConceptTypeDetailModel.spec.js +0 -31
  281. package/src/models/concepts/__tests__/RelatedConcepts.spec.js +0 -58
  282. package/src/models/concepts/__tests__/SourceReferenceCollection.spec.js +0 -9
  283. package/src/models/concepts/__tests__/SourceReferenceModel.spec.js +0 -108
  284. package/src/models/content/ContentIndexModel.js +0 -165
  285. package/src/models/content/ContentLinkModel.js +0 -308
  286. package/src/models/content/ContentModel.js +0 -227
  287. package/src/models/content/ContentTOCModel.js +0 -237
  288. package/src/models/content/ContentTypeModel.js +0 -71
  289. package/src/models/content/SectionModel.js +0 -236
  290. package/src/models/content/SubSectionModel.js +0 -181
  291. package/src/models/content/__tests__/ContentIndexModel.spec.js +0 -40
  292. package/src/models/content/__tests__/ContentLinkModel.spec.js +0 -129
  293. package/src/models/content/__tests__/ContentModel.spec.js +0 -241
  294. package/src/models/content/__tests__/Formalsource.spec.js +0 -133
  295. package/src/models/content/__tests__/content-index-contributions.json +0 -50
  296. package/src/models/content/__tests__/content-index.json +0 -164
  297. package/src/models/content/__tests__/content-with-childsections.json +0 -105
  298. package/src/models/content/__tests__/content-with-sections.json +0 -105
  299. package/src/models/content/__tests__/content-with-subsections.json +0 -119
  300. package/src/models/content/__tests__/content-with-subsections2.json +0 -79
  301. package/src/models/content/__tests__/content.json +0 -31
  302. package/src/models/content/__tests__/contributions.json +0 -84
  303. package/src/models/content/__tests__/formalsource-complete.json +0 -235
  304. package/src/models/content/__tests__/formalsource-contributions.json +0 -110
  305. package/src/models/content/__tests__/formalsource-section-contributions.json +0 -84
  306. package/src/models/content/__tests__/formalsource-section.json +0 -60
  307. package/src/models/content/__tests__/formalsource-toc.json +0 -122
  308. package/src/models/contentconfiguration/ContentConfiguration.js +0 -70
  309. package/src/models/contentconfiguration/ContentConfigurationElements.js +0 -152
  310. package/src/models/contentconfiguration/ContentConfigurationEndResults.js +0 -45
  311. package/src/models/contentconfiguration/ContentConfigurationQuestions.js +0 -60
  312. package/src/models/contentconfiguration/ContentConfigurationResults.js +0 -105
  313. package/src/models/contentconfiguration/__tests__/ContentConfigurationElements.spec.js +0 -29
  314. package/src/models/contentconfiguration/__tests__/ContentConfigurationResults.spec.js +0 -101
  315. package/src/models/detail/DetailModel.js +0 -241
  316. package/src/models/detail/__tests__/DetailModel.spec.js +0 -41
  317. package/src/models/detail/__tests__/detail.json +0 -37
  318. package/src/models/detail/__tests__/detailContributions.json +0 -124
  319. package/src/models/error/ErrorCollection.js +0 -127
  320. package/src/models/error/ErrorModel.js +0 -83
  321. package/src/models/error/ErrorResponse.js +0 -343
  322. package/src/models/error/__tests__/ErrorCollection.spec.js +0 -41
  323. package/src/models/error/__tests__/ErrorModel.spec.js +0 -24
  324. package/src/models/filters/AssignmentFilterModel.js +0 -218
  325. package/src/models/filters/BaseFilterModel.js +0 -146
  326. package/src/models/filters/ConceptIndexFilterModel.js +0 -43
  327. package/src/models/filters/FilterCollection.js +0 -227
  328. package/src/models/filters/FilterModel.js +0 -151
  329. package/src/models/filters/RangeFilterModel.js +0 -36
  330. package/src/models/filters/StringFilterModel.js +0 -167
  331. package/src/models/filters/__tests__/AssignmentFilterModel.spec.js +0 -140
  332. package/src/models/filters/__tests__/FilterCollection.spec.js +0 -68
  333. package/src/models/filters/__tests__/FilterModel.spec.js +0 -65
  334. package/src/models/filters/__tests__/RangeFilterModel.spec.js +0 -55
  335. package/src/models/filters/__tests__/ZipcodeFilter.spec.js +0 -145
  336. package/src/models/filters/__tests__/filters.json +0 -91
  337. package/src/models/filters/__tests__/filtersContributions.json +0 -110
  338. package/src/models/form/FormModel.js +0 -1280
  339. package/src/models/form/FormObjectModel.js +0 -590
  340. package/src/models/form/__mock__/contributions.json +0 -525
  341. package/src/models/form/__mock__/data.json +0 -78
  342. package/src/models/form/__mock__/form.js +0 -17
  343. package/src/models/form/__tests__/FormContributions.json +0 -495
  344. package/src/models/form/__tests__/FormContributionsUnknownRepeat.json +0 -67
  345. package/src/models/form/__tests__/FormInstrumentContributions.json +0 -183
  346. package/src/models/form/__tests__/FormModel.getters.spec.js +0 -149
  347. package/src/models/form/__tests__/FormModel.instrument.spec.js +0 -202
  348. package/src/models/form/__tests__/FormModel.repeating.spec.js +0 -65
  349. package/src/models/form/__tests__/FormModel.selfhref.spec.js +0 -84
  350. package/src/models/form/__tests__/FormModel.spec.js +0 -752
  351. package/src/models/form/__tests__/FormModel.unknown-repeat.spec.js +0 -52
  352. package/src/models/form/__tests__/FormObjectModel.spec.js +0 -180
  353. package/src/models/form/__tests__/FormResultData.spec.js +0 -86
  354. package/src/models/form/__tests__/FormValidation.spec.js +0 -79
  355. package/src/models/form/__tests__/FormValidationContributions.json +0 -45
  356. package/src/models/form/__tests__/FormValidationDataInitial.json +0 -33
  357. package/src/models/form/__tests__/FormValidationDataUpdate1.json +0 -25
  358. package/src/models/form/__tests__/FormValidationDataUpdate2.json +0 -33
  359. package/src/models/form/__tests__/FormWithContent.spec.js +0 -71
  360. package/src/models/form/__tests__/FormWithContentContributions.json +0 -242
  361. package/src/models/form/__tests__/FormWithContentData.json +0 -244
  362. package/src/models/grouping/GroupingModel.js +0 -232
  363. package/src/models/grouping/__tests__/GroupingModel.spec.js +0 -80
  364. package/src/models/href/Href.js +0 -592
  365. package/src/models/href/ListHref.js +0 -161
  366. package/src/models/href/__tests__/Href.spec.js +0 -184
  367. package/src/models/href/__tests__/ListHref.spec.js +0 -61
  368. package/src/models/href/__tests__/list.json +0 -2417
  369. package/src/models/href/__tests__/listContributions.json +0 -330
  370. package/src/models/index.js +0 -177
  371. package/src/models/layouthint/LayoutHintCollection.js +0 -116
  372. package/src/models/layouthint/__tests__/LayoutHintCollection.spec.js +0 -89
  373. package/src/models/links/LinkCollection.js +0 -169
  374. package/src/models/links/LinkModel.js +0 -246
  375. package/src/models/links/__tests__/LinkCollection.spec.js +0 -426
  376. package/src/models/links/__tests__/LinkModel.spec.js +0 -103
  377. package/src/models/links/__tests__/normalizeLinkJSON.spec.js +0 -212
  378. package/src/models/links/normalizeLinkJSON.js +0 -121
  379. package/src/models/list/ListDetailModel.js +0 -332
  380. package/src/models/list/ListHeaderModel.js +0 -96
  381. package/src/models/list/ListItemCollection.js +0 -80
  382. package/src/models/list/ListItemModel.js +0 -111
  383. package/src/models/list/ListModel.js +0 -485
  384. package/src/models/list/__mock__/caselist.contributions.json +0 -372
  385. package/src/models/list/__mock__/caselist.data.json +0 -519
  386. package/src/models/list/__mock__/caselist.js +0 -14
  387. package/src/models/list/__tests__/ListDetailModel.hierarchy.spec.js +0 -88
  388. package/src/models/list/__tests__/ListDetailModel.spec.js +0 -96
  389. package/src/models/list/__tests__/ListItemCollection.spec.js +0 -22
  390. package/src/models/list/__tests__/ListModel.spec.js +0 -152
  391. package/src/models/list/__tests__/ListResultDetail.spec.js +0 -37
  392. package/src/models/list/__tests__/caselist-34.contributions.json +0 -146
  393. package/src/models/list/__tests__/caselist-34.data.json +0 -21
  394. package/src/models/list/__tests__/hierarchy.json +0 -185
  395. package/src/models/list/__tests__/hierarchyContributions.json +0 -582
  396. package/src/models/list/__tests__/instrument-detail-contributions.json +0 -761
  397. package/src/models/list/__tests__/instrument-detail-data.json +0 -66
  398. package/src/models/list/__tests__/list.json +0 -2426
  399. package/src/models/list/__tests__/listContributions.json +0 -349
  400. package/src/models/list/__tests__/related-contributions.json +0 -42
  401. package/src/models/list/__tests__/related-data.json +0 -32
  402. package/src/models/lookup/LookupOptionCollection.js +0 -54
  403. package/src/models/lookup/LookupOptionsModel.js +0 -81
  404. package/src/models/lookup/__tests__/LookupOptionCollection.spec.js +0 -80
  405. package/src/models/lookup/__tests__/LookupOptionsModel.spec.js +0 -82
  406. package/src/models/lookup/__tests__/_LookupOptionsContributions.json +0 -29
  407. package/src/models/lookup/__tests__/_LookupOptionsData.json +0 -34
  408. package/src/models/lookup/__tests__/_LookupOptionsListContributions.json +0 -129
  409. package/src/models/lookup/__tests__/_LookupOptionsListData.json +0 -134
  410. package/src/models/lookup/__tests__/_TaxonomyAttributeData.json +0 -42
  411. package/src/models/modelcatalog/ModelCatalogModel.js +0 -73
  412. package/src/models/modelcatalog/ModelCategoryCollection.js +0 -22
  413. package/src/models/modelcatalog/ModelCategoryModel.js +0 -63
  414. package/src/models/modelcatalog/__mock__/contributions.json +0 -6
  415. package/src/models/modelcatalog/__mock__/data.json +0 -29
  416. package/src/models/modelcatalog/__mock__/modelcatalog.js +0 -14
  417. package/src/models/modelcatalog/__tests__/ModelCatalogModel.spec.js +0 -49
  418. package/src/models/paging/PagesizeModel.js +0 -50
  419. package/src/models/paging/PagingModel.js +0 -105
  420. package/src/models/paging/__tests__/PageSizeModel.spec.js +0 -31
  421. package/src/models/paging/__tests__/PagingModel.spec.js +0 -40
  422. package/src/models/paging/__tests__/list.json +0 -8
  423. package/src/models/paging/__tests__/listContributions.json +0 -7
  424. package/src/models/panels/GroupingPanelModel.js +0 -164
  425. package/src/models/panels/__tests__/GroupingPanelModel.spec.js +0 -142
  426. package/src/models/panels/__tests__/groupingPanel.json +0 -49
  427. package/src/models/panels/__tests__/groupingPanelContributions.json +0 -59
  428. package/src/models/parameter/Parameter.js +0 -117
  429. package/src/models/parameter/__tests__/Parameter.spec.js +0 -125
  430. package/src/models/process/ProcessStatusSettingsModel.js +0 -88
  431. package/src/models/process/__tests__/ProcessStatusSettingsModel.spec.js +0 -52
  432. package/src/models/resolveModel.js +0 -92
  433. package/src/models/search/CaseSearchModel.js +0 -46
  434. package/src/models/search/__tests__/CaseSearchModel.spec.js +0 -10
  435. package/src/models/sorting/SortOptionModel.js +0 -114
  436. package/src/models/sorting/SortingModel.js +0 -140
  437. package/src/models/sorting/__tests__/SortingModel.spec.js +0 -96
  438. package/src/models/tab/TabModel.js +0 -160
  439. package/src/models/tab/__mock__/contributions.json +0 -77
  440. package/src/models/tab/__mock__/data.json +0 -20
  441. package/src/models/tab/__mock__/personContributions.json +0 -35
  442. package/src/models/tab/__mock__/personData.json +0 -21
  443. package/src/models/tab/__mock__/tab.js +0 -14
  444. package/src/models/tab/__mock__/tabPerson.js +0 -14
  445. package/src/models/tab/__tests__/TabModel.spec.js +0 -72
  446. package/src/models/tab/__tests__/tab.json +0 -37
  447. package/src/models/tab/__tests__/tabContributions.json +0 -39
  448. package/src/models/taskgroup/TaskGroupCollection.js +0 -16
  449. package/src/models/taskgroup/TaskGroupModel.js +0 -102
  450. package/src/models/taskgroup/__mock__/contributions.json +0 -18
  451. package/src/models/taskgroup/__mock__/data.json +0 -21
  452. package/src/models/taskgroup/__mock__/taskgroup.js +0 -14
  453. package/src/models/taskgroup/__tests__/TaskGroupModel.spec.js +0 -26
  454. package/src/models/taskgroup/__tests__/taskgroup.json +0 -25
  455. package/src/models/taskgroup/__tests__/taskgroupContributions.json +0 -23
  456. package/src/models/types.js +0 -291
  457. package/src/models/user/UserModel.js +0 -57
  458. package/src/models/user/UserProfileModel.js +0 -54
  459. package/src/models/user/UserServicesModel.js +0 -136
  460. package/src/models/user/__mock__/contributions.json +0 -148
  461. package/src/models/user/__mock__/data.json +0 -22
  462. package/src/models/user/__tests__/UserModel.spec.js +0 -43
  463. package/src/models/user/__tests__/UserProfileModel.spec.js +0 -45
  464. package/src/models/user/__tests__/UserServicesModel.spec.js +0 -55
  465. package/src/modularui/Authenticate.js +0 -217
  466. package/src/modularui/CaptchaRequest.js +0 -104
  467. package/src/modularui/ModularUIError.js +0 -25
  468. package/src/modularui/ModularUIRequest.js +0 -872
  469. package/src/modularui/ModularUIResponse.js +0 -160
  470. package/src/modularui/UploadRequest.js +0 -151
  471. package/src/modularui/__tests__/CustomContextPath.spec.js +0 -61
  472. package/src/modularui/__tests__/ModularUIError.spec.js +0 -22
  473. package/src/modularui/__tests__/ModularUIRequest.spec.js +0 -495
  474. package/src/modularui/__tests__/contributions.json +0 -312
  475. package/src/modularui/__tests__/data.json +0 -263
  476. package/src/modularui/index.js +0 -6
  477. package/src/modularui/types.js +0 -4
  478. package/src/react/ErrorBoundary.js +0 -61
  479. package/src/react/ErrorBoundaryFallback.js +0 -46
  480. package/src/react/index.js +0 -3
  481. package/src/react/utils.js +0 -33
  482. package/src/react-client/Init.js +0 -46
  483. package/src/react-client/client.js +0 -309
  484. package/src/react-client/contextPath.js +0 -30
  485. package/src/react-client/index.js +0 -4
  486. package/src/react-client/rehydrate.js +0 -94
  487. package/src/react-server/__tests__/htmlpage.spec.js +0 -75
  488. package/src/react-server/__tests__/requestInformation.spec.js +0 -266
  489. package/src/react-server/__tests__/serverUtil.spec.js +0 -183
  490. package/src/react-server/contextPath.js +0 -8
  491. package/src/react-server/createSSRComplete.js +0 -63
  492. package/src/react-server/htmlpage.js +0 -55
  493. package/src/react-server/index.js +0 -13
  494. package/src/react-server/renderSSRComplete.js +0 -111
  495. package/src/react-server/renderSSRMinimal.js +0 -54
  496. package/src/react-server/requestInformation.js +0 -68
  497. package/src/react-server/serverNoSSR.js +0 -87
  498. package/src/react-server/serverSSR.js +0 -70
  499. package/src/react-server/serverUtil.js +0 -279
  500. package/src/react-theme/ThemeProvider.js +0 -25
  501. package/src/react-theme/__tests__/ThemeProvider.spec.js +0 -84
  502. package/src/react-theme/__tests__/createTheme.spec.js +0 -172
  503. package/src/react-theme/createTheme.js +0 -118
  504. package/src/react-theme/index.js +0 -15
  505. package/src/react-theme/types.js +0 -16
  506. package/src/react-theme/useTheme.js +0 -13
  507. package/src/react-theme/utils/__tests__/background.spec.js +0 -30
  508. package/src/react-theme/utils/__tests__/colors.spec.js +0 -30
  509. package/src/react-theme/utils/__tests__/contrast.spec.js +0 -44
  510. package/src/react-theme/utils/__tests__/corners.spec.js +0 -27
  511. package/src/react-theme/utils/__tests__/spacers.spec.js +0 -44
  512. package/src/react-theme/utils/__tests__/themeProps.spec.js +0 -72
  513. package/src/react-theme/utils/background.js +0 -20
  514. package/src/react-theme/utils/colors.js +0 -47
  515. package/src/react-theme/utils/contrast.js +0 -117
  516. package/src/react-theme/utils/corners.js +0 -37
  517. package/src/react-theme/utils/spacers.js +0 -65
  518. package/src/react-theme/utils/themeProps.js +0 -90
  519. package/src/redux/_i18n/I18nActions.js +0 -38
  520. package/src/redux/_i18n/I18nReducer.js +0 -91
  521. package/src/redux/_i18n/__tests__/actions.spec.js +0 -37
  522. package/src/redux/_i18n/__tests__/reducer.spec.js +0 -29
  523. package/src/redux/_i18n/index.js +0 -6
  524. package/src/redux/_i18n/types.js +0 -20
  525. package/src/redux/_modularui/ModularUIActions.js +0 -227
  526. package/src/redux/_modularui/ModularUIConnector.js +0 -157
  527. package/src/redux/_modularui/ModularUIMiddleware.js +0 -182
  528. package/src/redux/_modularui/ModularUIReducer.js +0 -169
  529. package/src/redux/_modularui/ModularUISelectors.js +0 -322
  530. package/src/redux/_modularui/ModularUIUtils.js +0 -96
  531. package/src/redux/_modularui/__tests__/actions.spec.js +0 -159
  532. package/src/redux/_modularui/__tests__/reducer.spec.js +0 -134
  533. package/src/redux/_modularui/__tests__/selectors.spec.js +0 -153
  534. package/src/redux/_modularui/index.js +0 -11
  535. package/src/redux/_modularui/types.js +0 -121
  536. package/src/redux/_modularui/withModularUI.js +0 -85
  537. package/src/redux/_router/RouterActions.js +0 -75
  538. package/src/redux/_router/RouterConnectors.js +0 -97
  539. package/src/redux/_router/RouterMiddleware.js +0 -37
  540. package/src/redux/_router/RouterReducer.js +0 -21
  541. package/src/redux/_router/__tests__/actions.spec.js +0 -109
  542. package/src/redux/_router/__tests__/hooks.spec.js +0 -98
  543. package/src/redux/_router/__tests__/middleware.spec.js +0 -62
  544. package/src/redux/_router/__tests__/reducer.spec.js +0 -26
  545. package/src/redux/_router/index.js +0 -8
  546. package/src/redux/_router/types.js +0 -43
  547. package/src/redux/actions/Application.js +0 -45
  548. package/src/redux/actions/Authorization.js +0 -65
  549. package/src/redux/actions/Error.js +0 -95
  550. package/src/redux/actions/Form.js +0 -42
  551. package/src/redux/actions/FormAttributeSet.js +0 -98
  552. package/src/redux/actions/FormAttributeSetRepeatable.js +0 -45
  553. package/src/redux/actions/FormAutosave.js +0 -73
  554. package/src/redux/actions/FormAutosubmit.js +0 -43
  555. package/src/redux/actions/FormAutoupdate.js +0 -47
  556. package/src/redux/actions/FormValidations.js +0 -71
  557. package/src/redux/actions/Modals.js +0 -16
  558. package/src/redux/actions/ModelCatalog.js +0 -12
  559. package/src/redux/actions/Notification.js +0 -101
  560. package/src/redux/actions/Preferences.js +0 -173
  561. package/src/redux/actions/ProgressIndicator.js +0 -39
  562. package/src/redux/actions/SignIn.js +0 -102
  563. package/src/redux/actions/SignOut.js +0 -29
  564. package/src/redux/actions/__tests__/Application.spec.js +0 -52
  565. package/src/redux/actions/__tests__/Authorization.spec.js +0 -121
  566. package/src/redux/actions/__tests__/CustomErrorResponseHandler.spec.js +0 -72
  567. package/src/redux/actions/__tests__/Error-server.spec.js +0 -134
  568. package/src/redux/actions/__tests__/Error.spec.js +0 -116
  569. package/src/redux/actions/__tests__/Form.spec.js +0 -39
  570. package/src/redux/actions/__tests__/Modals.spec.js +0 -34
  571. package/src/redux/actions/__tests__/Notification.spec.js +0 -94
  572. package/src/redux/actions/__tests__/Preferences.spec.js +0 -71
  573. package/src/redux/actions/__tests__/ProgressIndicator.spec.js +0 -53
  574. package/src/redux/actions/index.js +0 -17
  575. package/src/redux/connectors/Application.js +0 -14
  576. package/src/redux/connectors/Breadcrumb.js +0 -28
  577. package/src/redux/connectors/CaseView.js +0 -14
  578. package/src/redux/connectors/ConceptDetail.js +0 -12
  579. package/src/redux/connectors/ContentBrowser.js +0 -14
  580. package/src/redux/connectors/ContentDetail.js +0 -13
  581. package/src/redux/connectors/ContentDetailSection.js +0 -17
  582. package/src/redux/connectors/Form.js +0 -83
  583. package/src/redux/connectors/FormAttributeSet.js +0 -85
  584. package/src/redux/connectors/ListDetail.js +0 -16
  585. package/src/redux/connectors/Modal.js +0 -47
  586. package/src/redux/connectors/ModelCatalog.js +0 -14
  587. package/src/redux/connectors/Notification.js +0 -47
  588. package/src/redux/connectors/PanelRenderer.js +0 -29
  589. package/src/redux/connectors/Preferences.js +0 -53
  590. package/src/redux/connectors/Progress.js +0 -35
  591. package/src/redux/connectors/ProgressIndicator.js +0 -35
  592. package/src/redux/connectors/QuickSearch.js +0 -36
  593. package/src/redux/connectors/SignIn.js +0 -47
  594. package/src/redux/connectors/SignOut.js +0 -38
  595. package/src/redux/connectors/Tab.js +0 -14
  596. package/src/redux/connectors/index.js +0 -22
  597. package/src/redux/index.js +0 -27
  598. package/src/redux/reducers/AuthReducer.js +0 -56
  599. package/src/redux/reducers/ErrorReducer.js +0 -22
  600. package/src/redux/reducers/ModalsReducer.js +0 -58
  601. package/src/redux/reducers/ModelCatalogReducer.js +0 -34
  602. package/src/redux/reducers/NotificationReducer.js +0 -45
  603. package/src/redux/reducers/PreferencesReducer.js +0 -31
  604. package/src/redux/reducers/ProgressIndicatorReducer.js +0 -60
  605. package/src/redux/reducers/__tests__/AuthReducer.spec.js +0 -95
  606. package/src/redux/reducers/__tests__/ErrorReducer.spec.js +0 -17
  607. package/src/redux/reducers/__tests__/ModalsReducer.spec.js +0 -34
  608. package/src/redux/reducers/__tests__/ModelCatalogReducer.spec.js +0 -23
  609. package/src/redux/reducers/__tests__/NotificationReducer.spec.js +0 -53
  610. package/src/redux/reducers/__tests__/PreferencesReducer.spec.js +0 -31
  611. package/src/redux/reducers/__tests__/ProgressIndicatorReducer.spec.js +0 -82
  612. package/src/redux/reducers/createReducer.js +0 -55
  613. package/src/redux/reducers/index.js +0 -10
  614. package/src/redux/selectors/i18n.js +0 -15
  615. package/src/redux/selectors/index.js +0 -3
  616. package/src/redux/selectors/modelcatalog.js +0 -11
  617. package/src/redux/store/__tests__/beforeRenderHooks.spec.js +0 -13
  618. package/src/redux/store/beforeRenderHooks.js +0 -26
  619. package/src/redux/store/configureStore.js +0 -59
  620. package/src/redux/types.js +0 -241
  621. package/src/utils/browser/Cache.js +0 -157
  622. package/src/utils/browser/Cookies.js +0 -44
  623. package/src/utils/browser/__tests__/Cookies.spec.js +0 -51
  624. package/src/utils/datetime/DateTimeUtil.js +0 -858
  625. package/src/utils/datetime/__tests__/DateTime.spec.js +0 -873
  626. package/src/utils/datetime/__tests__/DateTimeFormat.spec.js +0 -146
  627. package/src/utils/fetch/__mocks__/applicationContributions.json +0 -323
  628. package/src/utils/fetch/__mocks__/applicationData.json +0 -216
  629. package/src/utils/fetch/__mocks__/formContributions.json +0 -527
  630. package/src/utils/fetch/__mocks__/formData.json +0 -21
  631. package/src/utils/fetch/__mocks__/universalFetch.js +0 -38
  632. package/src/utils/fetch/__tests__/xhr.spec.js +0 -281
  633. package/src/utils/fetch/serverFetch.js +0 -33
  634. package/src/utils/fetch/types.js +0 -46
  635. package/src/utils/fetch/universalFetch.js +0 -106
  636. package/src/utils/fetch/xhr.js +0 -409
  637. package/src/utils/helpers/__tests__/checkResource.spec.js +0 -60
  638. package/src/utils/helpers/__tests__/createHash.spec.js +0 -11
  639. package/src/utils/helpers/__tests__/createHref.spec.js +0 -39
  640. package/src/utils/helpers/__tests__/objects.spec.js +0 -50
  641. package/src/utils/helpers/__tests__/sanitizeHTML.spec.js +0 -69
  642. package/src/utils/helpers/checkResource.js +0 -43
  643. package/src/utils/helpers/createHash.js +0 -28
  644. package/src/utils/helpers/createHref.js +0 -117
  645. package/src/utils/helpers/createUUID.js +0 -13
  646. package/src/utils/helpers/index.js +0 -9
  647. package/src/utils/helpers/objects.js +0 -33
  648. package/src/utils/helpers/repositoryResource.js +0 -22
  649. package/src/utils/helpers/sanitizeHtml.js +0 -55
  650. package/src/utils/helpers/text.js +0 -23
  651. package/src/utils/index.js +0 -22
  652. package/src/utils/number/DecimalFormat.js +0 -410
  653. package/src/utils/number/__tests__/formatValue.spec.js +0 -36
  654. package/src/utils/number/__tests__/parseNumbers.spec.js +0 -50
  655. package/src/utils/number/formatValue.js +0 -60
  656. package/src/utils/number/parseNumbers.js +0 -94
@@ -1,85 +0,0 @@
1
- import NumberGroupingConstraint from "../NumberGroupingConstraint";
2
-
3
- describe("numberGroupingConstraint", () => {
4
- it("validates if grouping separator exists on correct place", () => {
5
- const constraintMinimalFormat = new NumberGroupingConstraint(".", ",", "0");
6
-
7
- expect(constraintMinimalFormat.hasValidation()).toBe(true);
8
- expect(constraintMinimalFormat.validate("1000000")).toBe(true);
9
- expect(constraintMinimalFormat.validate("1.00.00.00")).toBe(false);
10
- expect(constraintMinimalFormat.validate("1.000.000")).toBe(true);
11
- expect(constraintMinimalFormat.validate("1000000,00")).toBe(true);
12
- expect(constraintMinimalFormat.validate("1000000.00")).toBe(false);
13
- expect(constraintMinimalFormat.validate("1000.000,00")).toBe(false);
14
- expect(constraintMinimalFormat.validate("1000,000.00")).toBe(false);
15
- expect(constraintMinimalFormat.validate("1.000.000,00")).toBe(true);
16
- expect(constraintMinimalFormat.validate("1,000,000.00")).toBe(false);
17
- expect(constraintMinimalFormat.validate("1.00.000,00")).toBe(false);
18
- expect(constraintMinimalFormat.validate("1,00,000.00")).toBe(false);
19
-
20
- const onlyDecimal = new NumberGroupingConstraint(".", ",", "###.##");
21
- expect(onlyDecimal.validate("1000000")).toBe(true);
22
- expect(onlyDecimal.validate("1.00.00.00")).toBe(false);
23
- expect(onlyDecimal.validate("1.000.000")).toBe(true);
24
- expect(onlyDecimal.validate("1000000,00")).toBe(true);
25
- expect(onlyDecimal.validate("1000000.00")).toBe(false);
26
- expect(onlyDecimal.validate("1.000.000,00")).toBe(true);
27
- expect(onlyDecimal.validate("1,000,000.00")).toBe(false);
28
- expect(onlyDecimal.validate("1000.000,00")).toBe(false);
29
- expect(onlyDecimal.validate("1000,000.00")).toBe(false);
30
- expect(onlyDecimal.validate("1.00.000,00")).toBe(false);
31
- expect(onlyDecimal.validate("1,00,000.00")).toBe(false);
32
-
33
- const moneyFormat = new NumberGroupingConstraint(".", ",", "#,##0.00");
34
- expect(moneyFormat.validate("1.000.000")).toBe(true);
35
- expect(moneyFormat.validate("1.00.00.00")).toBe(false);
36
- expect(moneyFormat.validate("1000000,00")).toBe(true);
37
- expect(moneyFormat.validate("1000000.00")).toBe(false);
38
- expect(moneyFormat.validate("1000.000,00")).toBe(false);
39
- expect(moneyFormat.validate("1000,000.00")).toBe(false);
40
- expect(moneyFormat.validate("1.000.000,00")).toBe(true);
41
- expect(moneyFormat.validate("1,000,000.00")).toBe(false);
42
- expect(moneyFormat.validate("1.00.000,00")).toBe(false);
43
- expect(moneyFormat.validate("1,00,000.00")).toBe(false);
44
-
45
- const constraintGroupingDot = new NumberGroupingConstraint(
46
- ".",
47
- ",",
48
- "##,##.##",
49
- );
50
- expect(constraintGroupingDot.validate("1000000")).toBe(true);
51
- expect(constraintGroupingDot.validate("1.00.00.00")).toBe(true);
52
- expect(constraintGroupingDot.validate("1,00,00,00.00")).toBe(false);
53
- expect(constraintGroupingDot.validate("1000000,00")).toBe(true);
54
- expect(constraintGroupingDot.validate("1000000.00")).toBe(false);
55
- expect(constraintGroupingDot.validate("1.000.000,00")).toBe(false);
56
- expect(constraintGroupingDot.validate("1,000,000.00")).toBe(false);
57
- expect(constraintGroupingDot.validate("1000.000,00")).toBe(false);
58
- expect(constraintGroupingDot.validate("1000,000.00")).toBe(false);
59
- expect(constraintGroupingDot.validate("1.00.000,00")).toBe(false);
60
- expect(constraintGroupingDot.validate("1,00,000.00")).toBe(false);
61
-
62
- const constraintGroupingComma = new NumberGroupingConstraint(
63
- ",",
64
- ".",
65
- "##,##.##",
66
- );
67
- expect(constraintGroupingComma.validate("1000000")).toBe(true);
68
- expect(constraintGroupingComma.validate("1.00.00.00")).toBe(true);
69
- expect(constraintGroupingComma.validate("1,00,00,00.00")).toBe(true);
70
- expect(constraintGroupingComma.validate("1000000,00")).toBe(false);
71
- expect(constraintGroupingComma.validate("1000000.00")).toBe(true);
72
- expect(constraintGroupingComma.validate("1.000.000,00")).toBe(false);
73
- expect(constraintGroupingComma.validate("1,000,000.00")).toBe(false);
74
- expect(constraintGroupingComma.validate("1000.000,00")).toBe(false);
75
- expect(constraintGroupingComma.validate("1000,000.00")).toBe(false);
76
- expect(constraintGroupingComma.validate("1.00.000,00")).toBe(false);
77
- expect(constraintGroupingComma.validate("1,00,000.00")).toBe(false);
78
-
79
- const constraintNoDecimal = new NumberGroupingConstraint("", "", "0");
80
-
81
- expect(constraintNoDecimal.validate("1000000")).toBe(true);
82
- expect(constraintNoDecimal.validate("1.000.000")).toBe(true);
83
- expect(constraintNoDecimal.validate("1.000.000,00")).toBe(true);
84
- });
85
- });
@@ -1,21 +0,0 @@
1
- import PasswordConfirmConstraint from "../PasswordConfirmConstraint";
2
-
3
- describe("passwordConfirmConstraint", () => {
4
- it("passwordConfirmConstraint checks", () => {
5
- const constraint = new PasswordConfirmConstraint("12345", "Other password");
6
-
7
- expect(constraint).toBeInstanceOf(PasswordConfirmConstraint);
8
- expect(constraint.hasValidation()).toBe(true);
9
-
10
- expect(constraint.id).toBe("Constraint.Password.ConfirmMismatch");
11
- expect(constraint.otherPasswordLabel).toBe("Other password");
12
- expect(constraint.otherPasswordValue).toBe("12345");
13
- expect(typeof constraint.defaultMessage).toBe("string");
14
- expect(constraint.parameters).toStrictEqual({
15
- other: "Other password",
16
- });
17
-
18
- expect(constraint.validate("98765")).toBeFalsy();
19
- expect(constraint.validate("12345")).toBeTruthy();
20
- });
21
- });
@@ -1,14 +0,0 @@
1
- import PasswordLowerAndUpperCaseConstraint from "../PasswordLowerAndUpperCaseConstraint";
2
-
3
- describe("password constraints", () => {
4
- it("passwordLowerAndUpperCaseConstraint", () => {
5
- const constraint = new PasswordLowerAndUpperCaseConstraint();
6
-
7
- expect(constraint.hasValidation()).toBe(true);
8
- expect(constraint.validate("aB")).toBeTruthy();
9
- expect(constraint.validate("")).toBeFalsy();
10
- expect(constraint.validate("a")).toBeFalsy();
11
- expect(constraint.validate("B")).toBeFalsy();
12
- expect(constraint.validate("1")).toBeFalsy();
13
- });
14
- });
@@ -1,11 +0,0 @@
1
- import PasswordMinNumericCharactersConstraint from "../PasswordMinNumericCharactersConstraint";
2
-
3
- describe("password constraints", () => {
4
- it("passwordMinNumericCharactersConstraint", () => {
5
- const constraint = new PasswordMinNumericCharactersConstraint(1);
6
-
7
- expect(constraint.hasValidation()).toBe(true);
8
- expect(constraint.validate("ABCD12345")).toBeTruthy();
9
- expect(constraint.validate("ABCD")).toBeFalsy();
10
- });
11
- });
@@ -1,11 +0,0 @@
1
- import PasswordMinSpecialCharactersConstraint from "../PasswordMinSpecialCharactersConstraint";
2
-
3
- describe("password constraints", () => {
4
- it("passwordMinSpecialCharactersConstraint", () => {
5
- const constraint = new PasswordMinSpecialCharactersConstraint(1);
6
-
7
- expect(constraint.hasValidation()).toBe(true);
8
- expect(constraint.validate("Ab&")).toBeTruthy();
9
- expect(constraint.validate("Ab")).toBeFalsy();
10
- });
11
- });
@@ -1,22 +0,0 @@
1
- import PasswordThreeConsecutiveCharactersNotAllowedConstraint from "../PasswordThreeConsecutiveCharactersNotAllowedConstraint";
2
-
3
- describe("password constraints", () => {
4
- it("passwordThreeConsecutiveCharactersNotAllowedConstraint", () => {
5
- const constraint =
6
- new PasswordThreeConsecutiveCharactersNotAllowedConstraint(1);
7
-
8
- expect(constraint.hasValidation()).toBe(true);
9
- expect(constraint.validate("ABACDEFGH")).toBeTruthy();
10
- expect(constraint.validate("ABAAABBCCDDEEFFGGHHAA")).toBeFalsy();
11
- expect(constraint.validate("")).toBeTruthy();
12
- });
13
-
14
- it("passwordThreeConsecutiveCharactersNotAllowedConstraint 3 concecutive chars", () => {
15
- const constraint =
16
- new PasswordThreeConsecutiveCharactersNotAllowedConstraint(3);
17
-
18
- expect(constraint.validate("AAABBACDEFGH")).toBeTruthy();
19
- expect(constraint.validate("ABAAAABBCCDDEEFFGGHHAA")).toBeFalsy();
20
- expect(constraint.validate("")).toBeTruthy();
21
- });
22
- });
@@ -1,42 +0,0 @@
1
- import RegexConstraint from "../RegexConstraint";
2
-
3
- describe("regexConstraint", () => {
4
- it("regex checks", () => {
5
- const constraint = new RegexConstraint({
6
- regex: "^[a-z0-9_-]{6,18}$",
7
- messageKey: "Password_regex_validation",
8
- });
9
-
10
- expect(constraint).toBeInstanceOf(RegexConstraint);
11
- expect(constraint.hasValidation()).toBe(true);
12
-
13
- expect(constraint.validate("myp4ssw0rd")).toBeTruthy();
14
- expect(constraint.validate("mypa$$w0rd")).toBeFalsy();
15
- });
16
-
17
- it("zipcode", () => {
18
- const constraint = new RegexConstraint({
19
- messageKey: "Constraint.ZipCode.InvalidFormat",
20
- defaultMessage: "Must be a valid Dutch ZIP code, e.g. 1234 AB",
21
- regex: "[1-9]{1}[0-9]{3}[\\s]?[a-zA-Z]{2}",
22
- });
23
-
24
- expect(constraint.validate("AAAA AB")).toBeFalsy();
25
- expect(constraint.validate("1234 AB")).toBeTruthy();
26
- expect(constraint.validate("1234AB")).toBeTruthy();
27
- });
28
-
29
- it("email", () => {
30
- const constraint = new RegexConstraint({
31
- messageKey: "Constraint.Email.InvalidFormat",
32
- defaultMessage: "Must be a valid e-mail address",
33
- regex: new RegExp(
34
- '^(([^<>()\\[\\]\\\\.,;:\\s@"]+(\\.[^<>()\\[\\]\\\\.,;:\\s@"]+)*)|(".+"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$',
35
- "gi",
36
- ),
37
- });
38
-
39
- expect(constraint.validate("invalid_email")).toBeFalsy();
40
- expect(constraint.validate("first.last@example.com")).toBeTruthy();
41
- });
42
- });
@@ -1,102 +0,0 @@
1
- import StringLengthConstraint from "../StringLengthConstraint";
2
-
3
- describe("stringLengthConstraint", () => {
4
- it("min Length", () => {
5
- const constraint = new StringLengthConstraint(5);
6
-
7
- expect(constraint).toBeInstanceOf(StringLengthConstraint);
8
- expect(constraint.hasValidation()).toBe(true);
9
- expect(constraint.id).toBe("Constraint.InvalidLengthTooShort");
10
- expect(constraint.validate("abcd")).toBeFalsy();
11
- expect(constraint.validate("abcde")).toBeTruthy();
12
- expect(constraint.validate("abcdef")).toBeTruthy();
13
- expect(constraint.defaultMessage).toBe(
14
- "The length of the value must be larger than ${min-length}",
15
- );
16
- expect(constraint.parameters).toStrictEqual({ "min-length": 5 });
17
-
18
- expect(() => {
19
- constraint.isLongEnough(123);
20
- }).toThrow(TypeError);
21
-
22
- expect(() => {
23
- new StringLengthConstraint(null, null).isLongEnough("test");
24
- }).toThrow(Error);
25
-
26
- expect(constraint.isMandatoryConstraint).toBe(false);
27
- });
28
-
29
- it("max Length", () => {
30
- const constraint = new StringLengthConstraint(null, 5);
31
-
32
- expect(constraint).toBeInstanceOf(StringLengthConstraint);
33
- expect(constraint.hasValidation()).toBe(true);
34
- expect(constraint.id).toBe("Constraint.InvalidLengthTooLong");
35
- expect(constraint.validate("abcd")).toBeTruthy();
36
- expect(constraint.validate("abcde")).toBeTruthy();
37
- expect(constraint.validate("abcdef")).toBeFalsy();
38
- expect(constraint.defaultMessage).toBe(
39
- "The length of the value must be smaller than ${max-length}",
40
- );
41
- expect(constraint.parameters).toStrictEqual({ "max-length": 5 });
42
-
43
- expect(() => {
44
- constraint.isSmallEnough(123);
45
- }).toThrow(TypeError);
46
-
47
- expect(() => {
48
- new StringLengthConstraint(null, null).isSmallEnough("test");
49
- }).toThrow(Error);
50
- });
51
-
52
- it("exact Length", () => {
53
- const constraint = new StringLengthConstraint(5, 5);
54
-
55
- expect(constraint).toBeInstanceOf(StringLengthConstraint);
56
- expect(constraint.hasValidation()).toBe(true);
57
- expect(constraint.id).toBe("Constraint.InvalidLengthExact");
58
- expect(constraint.validate("abcd")).toBeFalsy();
59
- expect(constraint.validate("abcde")).toBeTruthy();
60
- expect(constraint.validate("abcdef")).toBeFalsy();
61
- expect(constraint.defaultMessage).toBe(
62
- "Length must be precisely ${length} characters",
63
- );
64
- expect(constraint.parameters).toStrictEqual({
65
- length: 5,
66
- });
67
-
68
- expect(() => {
69
- constraint.isExactLength(123);
70
- }).toThrow(TypeError);
71
-
72
- expect(() => {
73
- new StringLengthConstraint(null, null).isExactLength("test");
74
- }).toThrow(Error);
75
- });
76
-
77
- it("between Length", () => {
78
- const constraint = new StringLengthConstraint(4, 6);
79
-
80
- expect(constraint).toBeInstanceOf(StringLengthConstraint);
81
- expect(constraint.hasValidation()).toBe(true);
82
- expect(constraint.id).toBe("Constraint.InvalidLengthBetween");
83
- expect(constraint.validate("abc")).toBeFalsy();
84
- expect(constraint.validate("abcde")).toBeTruthy();
85
- expect(constraint.validate("abcdefg")).toBeFalsy();
86
- expect(constraint.defaultMessage).toBe(
87
- "Length must be between ${min-length} and ${max-length} characters",
88
- );
89
- expect(constraint.parameters).toStrictEqual({
90
- "min-length": 4,
91
- "max-length": 6,
92
- });
93
-
94
- expect(() => {
95
- constraint.isBetween(123);
96
- }).toThrow(TypeError);
97
-
98
- expect(() => {
99
- new StringLengthConstraint(null, null).isBetween("test");
100
- }).toThrow(Error);
101
- });
102
- });
@@ -1,15 +0,0 @@
1
- import XMLConstraint from "../XMLConstraint";
2
-
3
- describe("xMLConstraint", () => {
4
- it("xML checks", () => {
5
- const constraint = new XMLConstraint();
6
-
7
- expect(constraint).toBeInstanceOf(XMLConstraint);
8
-
9
- expect(constraint.hasValidation()).toBe(true);
10
- expect(constraint.isValidXML("<invalid>text<invalid>")).toBeFalsy();
11
- expect(constraint.isValidXML("<valid>text</valid>")).toBeTruthy();
12
- expect(constraint.isValidXML("{ isJson: true }")).toBeFalsy();
13
- expect(constraint.isValidXML()).toBeFalsy();
14
- });
15
- });
@@ -1,74 +0,0 @@
1
- // @flow
2
- /* eslint-disable no-unused-vars */
3
-
4
- import { IllegalStateException } from "../../../exceptions";
5
-
6
- import type { ILayoutHintRule, AttributeType } from "../../types";
7
- import type AttributeCollection from "../AttributeCollection";
8
- import type AttributeModel from "../AttributeModel";
9
-
10
- /**
11
- * Abstract class for layout hint rules
12
- * @abstract
13
- */
14
- class BaseLayoutHintRule implements ILayoutHintRule {
15
- /**
16
- * Indicates if the rule implements the isApplicableForHint method
17
- * @type {boolean}
18
- * @default false
19
- */
20
- static checkHintApplicability: boolean = false;
21
-
22
- /**
23
- * Indicates if the rule instance is applicable for a specific attribute<br>
24
- */
25
- static isApplicableForAttribute(attribute: AttributeType): boolean {
26
- return true;
27
- }
28
-
29
- /**
30
- * Indicates if the rule instance is applicable for a specific hint<br>
31
- * Is required when checkHintApplicability is true
32
- * @abstract
33
- */
34
- static isApplicableForHint(hint: string): boolean {
35
- throw new IllegalStateException(
36
- `Missing isApplicableForHint implementation on layout hint rule`,
37
- );
38
- }
39
-
40
- /**
41
- * Initialize the rule when isApplicableForAttribute is true and checkHintApplicability is false
42
- * @abstract
43
- */
44
- static initAttribute(attribute: AttributeType): ILayoutHintRule {
45
- throw new IllegalStateException(
46
- `Missing initAttribute implementation on layout hint rule`,
47
- );
48
- }
49
-
50
- /**
51
- * Initialize the rule when isApplicableForAttribute and isApplicableForHint are both true,
52
- * it receives the hint. Allows a rule to be instantiated multiple times for an attribute,
53
- * but once for each hint entry
54
- * @abstract
55
- */
56
- static initHint(hint: string): ILayoutHintRule {
57
- throw new IllegalStateException(
58
- `Missing initHint implementation on layout hint rule`,
59
- );
60
- }
61
-
62
- /**
63
- * Abstract method, implements process of layout hint rule,
64
- * use this to enhance the applicable attribute or the attribute collection
65
- * @abstract
66
- */
67
- process(attribute: AttributeModel, attributes: AttributeCollection): void {
68
- throw new IllegalStateException(
69
- `Missing process implementation on layout hint rule`,
70
- );
71
- }
72
- }
73
-
74
- export default BaseLayoutHintRule;
@@ -1,246 +0,0 @@
1
- // @flow
2
- import BaseLayoutHintRule from "./BaseLayoutHintRule";
3
-
4
- import {
5
- DEPENDENT_ATTRIBUTE_CONTROL,
6
- DEPENDENT_ATTRIBUTE,
7
- } from "../../../constants";
8
-
9
- import ChoiceAttributeModel from "../ChoiceAttributeModel";
10
- import BooleanAttributeModel from "../BooleanAttributeModel";
11
-
12
- import { ConfigurationException } from "../../../exceptions";
13
-
14
- import type AttributeCollection from "../AttributeCollection";
15
- import type AttributeModel from "../AttributeModel";
16
-
17
- const EQUALS = "equals";
18
- const INCLUDES = "includes";
19
- const NOT_EQUALS = "notEquals";
20
- const NOT_INCLUDES = "notIncludes";
21
- const NOT_IS_EMPTY = "notIsEmpty";
22
- const IS_EMPTY = "isEmpty";
23
-
24
- const SHOW = "show";
25
- const HIDE = "hide";
26
-
27
- /**
28
- * Depending attributes hint logic
29
- */
30
- class DependentAttribute extends BaseLayoutHintRule {
31
- _action: string;
32
- _control: string;
33
- _operator: string;
34
- _options: Array<string>;
35
-
36
- /**
37
- */
38
- static checkHintApplicability: boolean = true;
39
-
40
- /**
41
- */
42
- static isApplicableForHint(hint: string): boolean {
43
- const regex = new RegExp(
44
- `^${DEPENDENT_ATTRIBUTE}\\s?(${SHOW}|${HIDE})`,
45
- "i",
46
- );
47
-
48
- return regex.test(hint);
49
- }
50
-
51
- /**
52
- * Used on initHint to create an instance of this rule
53
- */
54
- static getRuleInstance(): DependentAttribute {
55
- return new DependentAttribute();
56
- }
57
-
58
- /**
59
- */
60
- static initHint(hint: string): any {
61
- const rule = this.getRuleInstance();
62
-
63
- const OPERATORS = `${EQUALS}|${INCLUDES}|${NOT_EQUALS}|${NOT_INCLUDES}|${NOT_IS_EMPTY}|${IS_EMPTY}`;
64
- const regex = new RegExp(
65
- `${DEPENDENT_ATTRIBUTE}\\s?(\\S*)\\swhen ${DEPENDENT_ATTRIBUTE_CONTROL}:\\s?(.*?)\\s*(${OPERATORS})\\s(.*)`,
66
- "i",
67
- );
68
- const isEmpyNotIsEmptRegex = new RegExp(
69
- `${DEPENDENT_ATTRIBUTE}\\s?(\\S*)\\swhen ${DEPENDENT_ATTRIBUTE_CONTROL}:\\s?(.*?)\\s*(${OPERATORS})`,
70
- "i",
71
- );
72
-
73
- const result = hint.match(regex)
74
- ? hint.match(regex)
75
- : hint.match(isEmpyNotIsEmptRegex);
76
-
77
- if (result) {
78
- rule.action = result[1];
79
- rule.control = result[2];
80
- rule.operator = result[3];
81
- rule.options = !result[4] ? "" : result[4];
82
- } else {
83
- throw new ConfigurationException(
84
- `No dependent information found on layout hint: ${hint}`,
85
- );
86
- }
87
-
88
- return rule;
89
- }
90
-
91
- /**
92
- */
93
- get action(): string {
94
- return this._action;
95
- }
96
-
97
- /**
98
- */
99
- set action(action: string) {
100
- this._action = action;
101
- }
102
-
103
- /**
104
- */
105
- get control(): string {
106
- return this._control;
107
- }
108
-
109
- /**
110
- */
111
- set control(control: string) {
112
- this._control = control;
113
- }
114
-
115
- /**
116
- */
117
- get operator(): string {
118
- return this._operator;
119
- }
120
-
121
- /**
122
- */
123
- set operator(operator: string) {
124
- this._operator = operator;
125
- }
126
-
127
- /**
128
- */
129
- get options(): Array<string> {
130
- return this._options;
131
- }
132
-
133
- /**
134
- */
135
- set options(options: string): void {
136
- this._options = options.split("|").map((option) => option.trim());
137
- }
138
-
139
- /**
140
- */
141
- processEqualsOptions(
142
- controlAttribute: ChoiceAttributeModel | BooleanAttributeModel,
143
- ): boolean {
144
- if (
145
- controlAttribute instanceof ChoiceAttributeModel ||
146
- controlAttribute instanceof BooleanAttributeModel
147
- ) {
148
- return this.options.every((option) =>
149
- controlAttribute.selected.includes(option),
150
- );
151
- }
152
-
153
- throw new ConfigurationException(
154
- "Dependent control in combination with equals operator must be a choice, string or number attribute",
155
- );
156
- }
157
-
158
- /**
159
- */
160
- processIncludesOptions(
161
- controlAttribute: ChoiceAttributeModel | BooleanAttributeModel,
162
- ): boolean {
163
- if (controlAttribute instanceof ChoiceAttributeModel) {
164
- return this.options.some((option) =>
165
- controlAttribute.selected.includes(option),
166
- );
167
- }
168
-
169
- throw new ConfigurationException(
170
- "Dependent control in combination with includes operator must be a choice attribute",
171
- );
172
- }
173
-
174
- /**
175
- */
176
- handleOperator(
177
- controlAttribute: ChoiceAttributeModel | BooleanAttributeModel,
178
- ): boolean {
179
- switch (this.operator) {
180
- case EQUALS:
181
- return this.processEqualsOptions(controlAttribute);
182
- case INCLUDES:
183
- return this.processIncludesOptions(controlAttribute);
184
- case NOT_EQUALS:
185
- return !this.processEqualsOptions(controlAttribute);
186
- case NOT_INCLUDES:
187
- return !this.processIncludesOptions(controlAttribute);
188
- case NOT_IS_EMPTY:
189
- return controlAttribute?.selected.length !== 0;
190
- case IS_EMPTY:
191
- return controlAttribute?.selected.length === 0;
192
- default:
193
- throw new ConfigurationException(
194
- `Unsupported operator for dependent question: ${this.operator}`,
195
- );
196
- }
197
- }
198
-
199
- /**
200
- */
201
- getControlAttribute(
202
- attributes: AttributeCollection,
203
- ): ChoiceAttributeModel | BooleanAttributeModel | null {
204
- const attribute = attributes.getAttributeByLayoutHint(
205
- `${DEPENDENT_ATTRIBUTE_CONTROL}:${this.control}`,
206
- `${DEPENDENT_ATTRIBUTE_CONTROL}: ${this.control}`,
207
- );
208
-
209
- if (
210
- attribute instanceof ChoiceAttributeModel ||
211
- attribute instanceof BooleanAttributeModel
212
- ) {
213
- return attribute;
214
- }
215
-
216
- return null;
217
- }
218
-
219
- /**
220
- */
221
- process(attribute: AttributeModel, attributes: AttributeCollection): void {
222
- const controlAttribute = this.getControlAttribute(attributes);
223
- if (!controlAttribute) {
224
- return;
225
- }
226
-
227
- controlAttribute.processLayoutHintRules(attributes);
228
- if (controlAttribute.isHidden) {
229
- attribute.hide();
230
- return;
231
- }
232
-
233
- const result = this.handleOperator(controlAttribute);
234
- if (this.action === SHOW) {
235
- attribute.isHidden = !result;
236
- } else if (this.action === HIDE) {
237
- attribute.isHidden = result;
238
- } else {
239
- throw new ConfigurationException(
240
- `Unsupported action ${this.action} for dependent question on attribute: ${attribute.label}`,
241
- );
242
- }
243
- }
244
- }
245
-
246
- export default DependentAttribute;