@beinformed/ui 1.57.2 → 1.57.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +12 -0
- package/esm/constants/Settings.js +14 -6
- package/esm/constants/Settings.js.map +1 -1
- package/esm/hooks/useAuthentication.js +3 -3
- package/esm/hooks/useAuthentication.js.map +1 -1
- package/esm/hooks/useModelCatalog.js.map +1 -1
- package/esm/hooks/useModularUIBasic.js +1 -1
- package/esm/hooks/useModularUIBasic.js.map +1 -1
- package/esm/hooks/useModularUIModel.js.map +1 -1
- package/esm/models/actions/ActionCollection.js +2 -3
- package/esm/models/actions/ActionCollection.js.map +1 -1
- package/esm/models/actions/ActionModel.js +13 -23
- package/esm/models/actions/ActionModel.js.map +1 -1
- package/esm/models/application/ApplicationModel.js +1 -1
- package/esm/models/application/ApplicationModel.js.map +1 -1
- package/esm/models/attributes/AttributeCollection.js +6 -3
- package/esm/models/attributes/AttributeCollection.js.map +1 -1
- package/esm/models/attributes/AttributeModel.js +3 -3
- package/esm/models/attributes/AttributeModel.js.map +1 -1
- package/esm/models/attributes/AttributeSetModel.js +7 -4
- package/esm/models/attributes/AttributeSetModel.js.map +1 -1
- package/esm/models/attributes/BooleanAttributeModel.js +6 -3
- package/esm/models/attributes/BooleanAttributeModel.js.map +1 -1
- package/esm/models/attributes/ChoiceAttributeModel.js +6 -3
- package/esm/models/attributes/ChoiceAttributeModel.js.map +1 -1
- package/esm/models/attributes/ChoiceAttributeOptionCollection.js +18 -14
- package/esm/models/attributes/ChoiceAttributeOptionCollection.js.map +1 -1
- package/esm/models/attributes/ChoiceAttributeOptionModel.js +17 -10
- package/esm/models/attributes/ChoiceAttributeOptionModel.js.map +1 -1
- package/esm/models/attributes/CompositeAttributeChildCollection.js +7 -7
- package/esm/models/attributes/CompositeAttributeChildCollection.js.map +1 -1
- package/esm/models/attributes/CompositeAttributeModel.js +3 -3
- package/esm/models/attributes/CompositeAttributeModel.js.map +1 -1
- package/esm/models/attributes/DatetimeAttributeModel.js +2 -2
- package/esm/models/attributes/DatetimeAttributeModel.js.map +1 -1
- package/esm/models/attributes/StringAttributeModel.js +2 -2
- package/esm/models/attributes/StringAttributeModel.js.map +1 -1
- package/esm/models/attributes/_createAttribute.js +2 -2
- package/esm/models/attributes/_createAttribute.js.map +1 -1
- package/esm/models/base/BaseModel.js +27 -1
- package/esm/models/base/BaseModel.js.map +1 -1
- package/esm/models/base/ResourceModel.js +3 -23
- package/esm/models/base/ResourceModel.js.map +1 -1
- package/esm/models/caseview/CaseViewModel.js +1 -1
- package/esm/models/caseview/CaseViewModel.js.map +1 -1
- package/esm/models/concepts/ConceptDetailModel.js +2 -2
- package/esm/models/concepts/ConceptDetailModel.js.map +1 -1
- package/esm/models/concepts/ConceptIndexModel.js +2 -2
- package/esm/models/concepts/ConceptIndexModel.js.map +1 -1
- package/esm/models/concepts/ConceptLinkModel.js +4 -10
- package/esm/models/concepts/ConceptLinkModel.js.map +1 -1
- package/esm/models/concepts/ConceptRelationCollection.js +11 -4
- package/esm/models/concepts/ConceptRelationCollection.js.map +1 -1
- package/esm/models/concepts/ConceptRelationModel.js +8 -1
- package/esm/models/concepts/ConceptRelationModel.js.map +1 -1
- package/esm/models/concepts/SourceReferenceCollection.js +2 -4
- package/esm/models/concepts/SourceReferenceCollection.js.map +1 -1
- package/esm/models/concepts/SourceReferenceModel.js +9 -10
- package/esm/models/concepts/SourceReferenceModel.js.map +1 -1
- package/esm/models/content/ContentIndexModel.js +2 -2
- package/esm/models/content/ContentIndexModel.js.map +1 -1
- package/esm/models/content/ContentLinkModel.js +4 -11
- package/esm/models/content/ContentLinkModel.js.map +1 -1
- package/esm/models/content/ContentModel.js +2 -2
- package/esm/models/content/ContentModel.js.map +1 -1
- package/esm/models/content/ContentTOCModel.js +7 -7
- package/esm/models/content/ContentTOCModel.js.map +1 -1
- package/esm/models/content/SectionModel.js +6 -12
- package/esm/models/content/SectionModel.js.map +1 -1
- package/esm/models/detail/DetailModel.js +9 -3
- package/esm/models/detail/DetailModel.js.map +1 -1
- package/esm/models/error/ErrorResponse.js +8 -10
- package/esm/models/error/ErrorResponse.js.map +1 -1
- package/esm/models/filters/AssignmentFilterModel.js +2 -2
- package/esm/models/filters/AssignmentFilterModel.js.map +1 -1
- package/esm/models/filters/BaseFilterModel.js +3 -3
- package/esm/models/filters/BaseFilterModel.js.map +1 -1
- package/esm/models/filters/ConceptIndexFilterModel.js +2 -3
- package/esm/models/filters/ConceptIndexFilterModel.js.map +1 -1
- package/esm/models/filters/FilterCollection.js +8 -7
- package/esm/models/filters/FilterCollection.js.map +1 -1
- package/esm/models/filters/StringFilterModel.js +2 -2
- package/esm/models/filters/StringFilterModel.js.map +1 -1
- package/esm/models/form/FormModel.js +4 -4
- package/esm/models/form/FormModel.js.map +1 -1
- package/esm/models/form/FormObjectModel.js +7 -4
- package/esm/models/form/FormObjectModel.js.map +1 -1
- package/esm/models/grouping/GroupingModel.js +10 -7
- package/esm/models/grouping/GroupingModel.js.map +1 -1
- package/esm/models/href/Href.js +9 -8
- package/esm/models/href/Href.js.map +1 -1
- package/esm/models/links/LinkCollection.js +2 -3
- package/esm/models/links/LinkCollection.js.map +1 -1
- package/esm/models/links/LinkModel.js +7 -7
- package/esm/models/links/LinkModel.js.map +1 -1
- package/esm/models/list/ListDetailModel.js +1 -1
- package/esm/models/list/ListDetailModel.js.map +1 -1
- package/esm/models/list/ListItemCollection.js +1 -1
- package/esm/models/list/ListItemCollection.js.map +1 -1
- package/esm/models/list/ListItemModel.js +3 -3
- package/esm/models/list/ListItemModel.js.map +1 -1
- package/esm/models/list/ListModel.js +3 -3
- package/esm/models/list/ListModel.js.map +1 -1
- package/esm/models/lookup/LookupOptionCollection.js +5 -2
- package/esm/models/lookup/LookupOptionCollection.js.map +1 -1
- package/esm/models/lookup/LookupOptionsModel.js +2 -2
- package/esm/models/lookup/LookupOptionsModel.js.map +1 -1
- package/esm/models/panels/GroupingPanelModel.js +1 -1
- package/esm/models/panels/GroupingPanelModel.js.map +1 -1
- package/esm/models/tab/TabModel.js +2 -2
- package/esm/models/tab/TabModel.js.map +1 -1
- package/esm/models/taskgroup/TaskGroupModel.js +4 -5
- package/esm/models/taskgroup/TaskGroupModel.js.map +1 -1
- package/esm/models/types.js.map +1 -1
- package/esm/models/user/UserProfileModel.js +4 -1
- package/esm/models/user/UserProfileModel.js.map +1 -1
- package/esm/modularui/CaptchaRequest.js +3 -3
- package/esm/modularui/CaptchaRequest.js.map +1 -1
- package/esm/modularui/ModularUIRequest.js +8 -5
- package/esm/modularui/ModularUIRequest.js.map +1 -1
- package/esm/modularui/ModularUIResponse.js +12 -3
- package/esm/modularui/ModularUIResponse.js.map +1 -1
- package/esm/modularui/UploadRequest.js +3 -3
- package/esm/modularui/UploadRequest.js.map +1 -1
- package/esm/react-client/client.js +3 -3
- package/esm/react-client/client.js.map +1 -1
- package/esm/react-server/renderSSRComplete.js +2 -2
- package/esm/react-server/renderSSRComplete.js.map +1 -1
- package/esm/react-server/renderSSRMinimal.js +2 -2
- package/esm/react-server/renderSSRMinimal.js.map +1 -1
- package/esm/redux/_modularui/ModularUIActions.js +8 -2
- package/esm/redux/_modularui/ModularUIActions.js.map +1 -1
- package/esm/redux/_modularui/ModularUIUtils.js +8 -11
- package/esm/redux/_modularui/ModularUIUtils.js.map +1 -1
- package/esm/utils/browser/Cookies.js +3 -3
- package/esm/utils/browser/Cookies.js.map +1 -1
- package/esm/utils/helpers/createHref.js +23 -3
- package/esm/utils/helpers/createHref.js.map +1 -1
- package/esm/utils/helpers/repositoryResource.js +2 -2
- package/esm/utils/helpers/repositoryResource.js.map +1 -1
- package/lib/constants/Settings.js +18 -8
- package/lib/constants/Settings.js.flow +16 -6
- package/lib/constants/Settings.js.map +1 -1
- package/lib/hooks/useAuthentication.js +2 -2
- package/lib/hooks/useAuthentication.js.flow +3 -3
- package/lib/hooks/useAuthentication.js.map +1 -1
- package/lib/hooks/useModelCatalog.js.flow +7 -6
- package/lib/hooks/useModelCatalog.js.map +1 -1
- package/lib/hooks/useModularUIBasic.js +1 -1
- package/lib/hooks/useModularUIBasic.js.flow +1 -1
- package/lib/hooks/useModularUIBasic.js.map +1 -1
- package/lib/hooks/useModularUIModel.js.flow +16 -11
- package/lib/hooks/useModularUIModel.js.map +1 -1
- package/lib/models/actions/ActionCollection.js +2 -2
- package/lib/models/actions/ActionCollection.js.flow +3 -8
- package/lib/models/actions/ActionCollection.js.map +1 -1
- package/lib/models/actions/ActionModel.js +12 -22
- package/lib/models/actions/ActionModel.js.flow +7 -24
- package/lib/models/actions/ActionModel.js.map +1 -1
- package/lib/models/application/ApplicationModel.js +1 -1
- package/lib/models/application/ApplicationModel.js.flow +1 -2
- package/lib/models/application/ApplicationModel.js.map +1 -1
- package/lib/models/attributes/AttributeCollection.js +6 -3
- package/lib/models/attributes/AttributeCollection.js.flow +12 -4
- package/lib/models/attributes/AttributeCollection.js.map +1 -1
- package/lib/models/attributes/AttributeModel.js +3 -3
- package/lib/models/attributes/AttributeModel.js.flow +8 -2
- package/lib/models/attributes/AttributeModel.js.map +1 -1
- package/lib/models/attributes/AttributeSetModel.js +7 -3
- package/lib/models/attributes/AttributeSetModel.js.flow +11 -3
- package/lib/models/attributes/AttributeSetModel.js.map +1 -1
- package/lib/models/attributes/BooleanAttributeModel.js +6 -3
- package/lib/models/attributes/BooleanAttributeModel.js.flow +8 -4
- package/lib/models/attributes/BooleanAttributeModel.js.map +1 -1
- package/lib/models/attributes/ChoiceAttributeModel.js +6 -3
- package/lib/models/attributes/ChoiceAttributeModel.js.flow +13 -4
- package/lib/models/attributes/ChoiceAttributeModel.js.map +1 -1
- package/lib/models/attributes/ChoiceAttributeOptionCollection.js +18 -13
- package/lib/models/attributes/ChoiceAttributeOptionCollection.js.flow +30 -28
- package/lib/models/attributes/ChoiceAttributeOptionCollection.js.map +1 -1
- package/lib/models/attributes/ChoiceAttributeOptionModel.js +17 -10
- package/lib/models/attributes/ChoiceAttributeOptionModel.js.flow +30 -11
- package/lib/models/attributes/ChoiceAttributeOptionModel.js.map +1 -1
- package/lib/models/attributes/CompositeAttributeChildCollection.js +7 -7
- package/lib/models/attributes/CompositeAttributeChildCollection.js.flow +8 -1
- package/lib/models/attributes/CompositeAttributeChildCollection.js.map +1 -1
- package/lib/models/attributes/CompositeAttributeModel.js +3 -3
- package/lib/models/attributes/CompositeAttributeModel.js.flow +8 -3
- package/lib/models/attributes/CompositeAttributeModel.js.map +1 -1
- package/lib/models/attributes/DatetimeAttributeModel.js +2 -2
- package/lib/models/attributes/DatetimeAttributeModel.js.flow +7 -2
- package/lib/models/attributes/DatetimeAttributeModel.js.map +1 -1
- package/lib/models/attributes/StringAttributeModel.js +2 -2
- package/lib/models/attributes/StringAttributeModel.js.flow +7 -3
- package/lib/models/attributes/StringAttributeModel.js.map +1 -1
- package/lib/models/attributes/__tests__/ChoiceAttributeOptionModel.spec.js.flow +1 -1
- package/lib/models/attributes/_createAttribute.js +2 -2
- package/lib/models/attributes/_createAttribute.js.flow +3 -2
- package/lib/models/attributes/_createAttribute.js.map +1 -1
- package/lib/models/base/BaseModel.js +27 -1
- package/lib/models/base/BaseModel.js.flow +31 -1
- package/lib/models/base/BaseModel.js.map +1 -1
- package/lib/models/base/ResourceModel.js +3 -22
- package/lib/models/base/ResourceModel.js.flow +6 -23
- package/lib/models/base/ResourceModel.js.map +1 -1
- package/lib/models/base/__tests__/BaseModel.spec.js.flow +4 -0
- package/lib/models/caseview/CaseViewModel.js +1 -1
- package/lib/models/caseview/CaseViewModel.js.flow +1 -2
- package/lib/models/caseview/CaseViewModel.js.map +1 -1
- package/lib/models/concepts/ConceptDetailModel.js +2 -2
- package/lib/models/concepts/ConceptDetailModel.js.flow +2 -2
- package/lib/models/concepts/ConceptDetailModel.js.map +1 -1
- package/lib/models/concepts/ConceptIndexModel.js +2 -2
- package/lib/models/concepts/ConceptIndexModel.js.flow +9 -6
- package/lib/models/concepts/ConceptIndexModel.js.map +1 -1
- package/lib/models/concepts/ConceptLinkModel.js +4 -10
- package/lib/models/concepts/ConceptLinkModel.js.flow +15 -12
- package/lib/models/concepts/ConceptLinkModel.js.map +1 -1
- package/lib/models/concepts/ConceptRelationCollection.js +11 -4
- package/lib/models/concepts/ConceptRelationCollection.js.flow +17 -3
- package/lib/models/concepts/ConceptRelationCollection.js.map +1 -1
- package/lib/models/concepts/ConceptRelationModel.js +8 -1
- package/lib/models/concepts/ConceptRelationModel.js.flow +18 -2
- package/lib/models/concepts/ConceptRelationModel.js.map +1 -1
- package/lib/models/concepts/SourceReferenceCollection.js +2 -3
- package/lib/models/concepts/SourceReferenceCollection.js.flow +3 -8
- package/lib/models/concepts/SourceReferenceCollection.js.map +1 -1
- package/lib/models/concepts/SourceReferenceModel.js +8 -8
- package/lib/models/concepts/SourceReferenceModel.js.flow +10 -11
- package/lib/models/concepts/SourceReferenceModel.js.map +1 -1
- package/lib/models/content/ContentIndexModel.js +2 -2
- package/lib/models/content/ContentIndexModel.js.flow +10 -5
- package/lib/models/content/ContentIndexModel.js.map +1 -1
- package/lib/models/content/ContentLinkModel.js +4 -10
- package/lib/models/content/ContentLinkModel.js.flow +10 -13
- package/lib/models/content/ContentLinkModel.js.map +1 -1
- package/lib/models/content/ContentModel.js +2 -2
- package/lib/models/content/ContentModel.js.flow +6 -1
- package/lib/models/content/ContentModel.js.map +1 -1
- package/lib/models/content/ContentTOCModel.js +7 -7
- package/lib/models/content/ContentTOCModel.js.flow +19 -11
- package/lib/models/content/ContentTOCModel.js.map +1 -1
- package/lib/models/content/SectionModel.js +6 -11
- package/lib/models/content/SectionModel.js.flow +9 -21
- package/lib/models/content/SectionModel.js.map +1 -1
- package/lib/models/detail/DetailModel.js +9 -3
- package/lib/models/detail/DetailModel.js.flow +3 -4
- package/lib/models/detail/DetailModel.js.map +1 -1
- package/lib/models/error/ErrorResponse.js +7 -9
- package/lib/models/error/ErrorResponse.js.flow +9 -20
- package/lib/models/error/ErrorResponse.js.map +1 -1
- package/lib/models/filters/AssignmentFilterModel.js +2 -2
- package/lib/models/filters/AssignmentFilterModel.js.flow +7 -3
- package/lib/models/filters/AssignmentFilterModel.js.map +1 -1
- package/lib/models/filters/BaseFilterModel.js +3 -3
- package/lib/models/filters/BaseFilterModel.js.flow +16 -7
- package/lib/models/filters/BaseFilterModel.js.map +1 -1
- package/lib/models/filters/ConceptIndexFilterModel.js +2 -2
- package/lib/models/filters/ConceptIndexFilterModel.js.flow +8 -2
- package/lib/models/filters/ConceptIndexFilterModel.js.map +1 -1
- package/lib/models/filters/FilterCollection.js +8 -7
- package/lib/models/filters/FilterCollection.js.flow +13 -7
- package/lib/models/filters/FilterCollection.js.map +1 -1
- package/lib/models/filters/StringFilterModel.js +2 -2
- package/lib/models/filters/StringFilterModel.js.flow +7 -3
- package/lib/models/filters/StringFilterModel.js.map +1 -1
- package/lib/models/form/FormModel.js +4 -4
- package/lib/models/form/FormModel.js.flow +8 -2
- package/lib/models/form/FormModel.js.map +1 -1
- package/lib/models/form/FormObjectModel.js +7 -4
- package/lib/models/form/FormObjectModel.js.flow +17 -4
- package/lib/models/form/FormObjectModel.js.map +1 -1
- package/lib/models/grouping/GroupingModel.js +10 -7
- package/lib/models/grouping/GroupingModel.js.flow +21 -5
- package/lib/models/grouping/GroupingModel.js.map +1 -1
- package/lib/models/href/Href.js +8 -7
- package/lib/models/href/Href.js.flow +17 -10
- package/lib/models/href/Href.js.map +1 -1
- package/lib/models/href/__tests__/Href.spec.js.flow +5 -8
- package/lib/models/links/LinkCollection.js +2 -3
- package/lib/models/links/LinkCollection.js.flow +3 -3
- package/lib/models/links/LinkCollection.js.map +1 -1
- package/lib/models/links/LinkModel.js +7 -7
- package/lib/models/links/LinkModel.js.flow +8 -15
- package/lib/models/links/LinkModel.js.map +1 -1
- package/lib/models/list/ListDetailModel.js +1 -1
- package/lib/models/list/ListDetailModel.js.flow +6 -1
- package/lib/models/list/ListDetailModel.js.map +1 -1
- package/lib/models/list/ListItemCollection.js +1 -1
- package/lib/models/list/ListItemCollection.js.flow +1 -2
- package/lib/models/list/ListItemCollection.js.map +1 -1
- package/lib/models/list/ListItemModel.js +3 -3
- package/lib/models/list/ListItemModel.js.flow +4 -4
- package/lib/models/list/ListItemModel.js.map +1 -1
- package/lib/models/list/ListModel.js +3 -3
- package/lib/models/list/ListModel.js.flow +12 -8
- package/lib/models/list/ListModel.js.map +1 -1
- package/lib/models/lookup/LookupOptionCollection.js +5 -1
- package/lib/models/lookup/LookupOptionCollection.js.flow +17 -6
- package/lib/models/lookup/LookupOptionCollection.js.map +1 -1
- package/lib/models/lookup/LookupOptionsModel.js +2 -2
- package/lib/models/lookup/LookupOptionsModel.js.flow +2 -0
- package/lib/models/lookup/LookupOptionsModel.js.map +1 -1
- package/lib/models/panels/GroupingPanelModel.js +1 -1
- package/lib/models/panels/GroupingPanelModel.js.flow +1 -2
- package/lib/models/panels/GroupingPanelModel.js.map +1 -1
- package/lib/models/tab/TabModel.js +2 -2
- package/lib/models/tab/TabModel.js.flow +2 -4
- package/lib/models/tab/TabModel.js.map +1 -1
- package/lib/models/taskgroup/TaskGroupModel.js +4 -4
- package/lib/models/taskgroup/TaskGroupModel.js.flow +5 -6
- package/lib/models/taskgroup/TaskGroupModel.js.map +1 -1
- package/lib/models/types.js.flow +5 -0
- package/lib/models/types.js.map +1 -1
- package/lib/models/user/UserProfileModel.js +4 -1
- package/lib/models/user/UserProfileModel.js.flow +1 -0
- package/lib/models/user/UserProfileModel.js.map +1 -1
- package/lib/modularui/CaptchaRequest.js +2 -2
- package/lib/modularui/CaptchaRequest.js.flow +7 -3
- package/lib/modularui/CaptchaRequest.js.map +1 -1
- package/lib/modularui/ModularUIRequest.js +7 -4
- package/lib/modularui/ModularUIRequest.js.flow +8 -5
- package/lib/modularui/ModularUIRequest.js.map +1 -1
- package/lib/modularui/ModularUIResponse.js +11 -2
- package/lib/modularui/ModularUIResponse.js.flow +13 -3
- package/lib/modularui/ModularUIResponse.js.map +1 -1
- package/lib/modularui/UploadRequest.js +2 -2
- package/lib/modularui/UploadRequest.js.flow +7 -3
- package/lib/modularui/UploadRequest.js.map +1 -1
- package/lib/react-client/client.js +2 -2
- package/lib/react-client/client.js.flow +7 -3
- package/lib/react-client/client.js.map +1 -1
- package/lib/react-server/renderSSRComplete.js +1 -1
- package/lib/react-server/renderSSRComplete.js.flow +2 -2
- package/lib/react-server/renderSSRComplete.js.map +1 -1
- package/lib/react-server/renderSSRMinimal.js +1 -1
- package/lib/react-server/renderSSRMinimal.js.flow +2 -2
- package/lib/react-server/renderSSRMinimal.js.map +1 -1
- package/lib/redux/_modularui/ModularUIActions.js +8 -2
- package/lib/redux/_modularui/ModularUIActions.js.flow +8 -7
- package/lib/redux/_modularui/ModularUIActions.js.map +1 -1
- package/lib/redux/_modularui/ModularUIUtils.js +8 -11
- package/lib/redux/_modularui/ModularUIUtils.js.flow +13 -14
- package/lib/redux/_modularui/ModularUIUtils.js.map +1 -1
- package/lib/utils/browser/Cookies.js +2 -2
- package/lib/utils/browser/Cookies.js.flow +3 -3
- package/lib/utils/browser/Cookies.js.map +1 -1
- package/lib/utils/helpers/__tests__/createHref.spec.js.flow +13 -8
- package/lib/utils/helpers/createHref.js +23 -3
- package/lib/utils/helpers/createHref.js.flow +37 -8
- package/lib/utils/helpers/createHref.js.map +1 -1
- package/lib/utils/helpers/repositoryResource.js +1 -1
- package/lib/utils/helpers/repositoryResource.js.flow +2 -2
- package/lib/utils/helpers/repositoryResource.js.map +1 -1
- package/package.json +4 -4
- package/src/constants/Settings.js +16 -6
- package/src/hooks/useAuthentication.js +3 -3
- package/src/hooks/useModelCatalog.js +7 -6
- package/src/hooks/useModularUIBasic.js +1 -1
- package/src/hooks/useModularUIModel.js +16 -11
- package/src/models/actions/ActionCollection.js +3 -8
- package/src/models/actions/ActionModel.js +7 -24
- package/src/models/application/ApplicationModel.js +1 -2
- package/src/models/attributes/AttributeCollection.js +12 -4
- package/src/models/attributes/AttributeModel.js +8 -2
- package/src/models/attributes/AttributeSetModel.js +11 -3
- package/src/models/attributes/BooleanAttributeModel.js +8 -4
- package/src/models/attributes/ChoiceAttributeModel.js +13 -4
- package/src/models/attributes/ChoiceAttributeOptionCollection.js +30 -28
- package/src/models/attributes/ChoiceAttributeOptionModel.js +30 -11
- package/src/models/attributes/CompositeAttributeChildCollection.js +8 -1
- package/src/models/attributes/CompositeAttributeModel.js +8 -3
- package/src/models/attributes/DatetimeAttributeModel.js +7 -2
- package/src/models/attributes/StringAttributeModel.js +7 -3
- package/src/models/attributes/__tests__/ChoiceAttributeOptionModel.spec.js +1 -1
- package/src/models/attributes/_createAttribute.js +3 -2
- package/src/models/base/BaseModel.js +31 -1
- package/src/models/base/ResourceModel.js +6 -23
- package/src/models/base/__tests__/BaseModel.spec.js +4 -0
- package/src/models/caseview/CaseViewModel.js +1 -2
- package/src/models/concepts/ConceptDetailModel.js +2 -2
- package/src/models/concepts/ConceptIndexModel.js +9 -6
- package/src/models/concepts/ConceptLinkModel.js +15 -12
- package/src/models/concepts/ConceptRelationCollection.js +17 -3
- package/src/models/concepts/ConceptRelationModel.js +18 -2
- package/src/models/concepts/SourceReferenceCollection.js +3 -8
- package/src/models/concepts/SourceReferenceModel.js +10 -11
- package/src/models/content/ContentIndexModel.js +10 -5
- package/src/models/content/ContentLinkModel.js +10 -13
- package/src/models/content/ContentModel.js +6 -1
- package/src/models/content/ContentTOCModel.js +19 -11
- package/src/models/content/SectionModel.js +9 -21
- package/src/models/detail/DetailModel.js +3 -4
- package/src/models/error/ErrorResponse.js +9 -20
- package/src/models/filters/AssignmentFilterModel.js +7 -3
- package/src/models/filters/BaseFilterModel.js +16 -7
- package/src/models/filters/ConceptIndexFilterModel.js +8 -2
- package/src/models/filters/FilterCollection.js +13 -7
- package/src/models/filters/StringFilterModel.js +7 -3
- package/src/models/form/FormModel.js +8 -2
- package/src/models/form/FormObjectModel.js +17 -4
- package/src/models/grouping/GroupingModel.js +21 -5
- package/src/models/href/Href.js +17 -10
- package/src/models/href/__tests__/Href.spec.js +5 -8
- package/src/models/links/LinkCollection.js +3 -3
- package/src/models/links/LinkModel.js +8 -15
- package/src/models/list/ListDetailModel.js +6 -1
- package/src/models/list/ListItemCollection.js +1 -2
- package/src/models/list/ListItemModel.js +4 -4
- package/src/models/list/ListModel.js +12 -8
- package/src/models/lookup/LookupOptionCollection.js +17 -6
- package/src/models/lookup/LookupOptionsModel.js +2 -0
- package/src/models/panels/GroupingPanelModel.js +1 -2
- package/src/models/tab/TabModel.js +2 -4
- package/src/models/taskgroup/TaskGroupModel.js +5 -6
- package/src/models/types.js +5 -0
- package/src/models/user/UserProfileModel.js +1 -0
- package/src/modularui/CaptchaRequest.js +7 -3
- package/src/modularui/ModularUIRequest.js +8 -5
- package/src/modularui/ModularUIResponse.js +13 -3
- package/src/modularui/UploadRequest.js +7 -3
- package/src/react-client/client.js +7 -3
- package/src/react-server/renderSSRComplete.js +2 -2
- package/src/react-server/renderSSRMinimal.js +2 -2
- package/src/redux/_modularui/ModularUIActions.js +8 -7
- package/src/redux/_modularui/ModularUIUtils.js +13 -14
- package/src/utils/browser/Cookies.js +3 -3
- package/src/utils/helpers/__tests__/createHref.spec.js +13 -8
- package/src/utils/helpers/createHref.js +37 -8
- package/src/utils/helpers/repositoryResource.js +2 -2
|
@@ -3,7 +3,8 @@ import Href from "../href/Href";
|
|
|
3
3
|
|
|
4
4
|
import type { MessageParameters } from "../../i18n/types";
|
|
5
5
|
import LayoutHintCollection from "../layouthint/LayoutHintCollection";
|
|
6
|
-
import {
|
|
6
|
+
import { getBasePathModularUI } from "../../constants";
|
|
7
|
+
import type { ModelOptions } from "../types";
|
|
7
8
|
|
|
8
9
|
/**
|
|
9
10
|
*/
|
|
@@ -34,23 +35,16 @@ export default class ErrorResponse {
|
|
|
34
35
|
_error: Object;
|
|
35
36
|
_connectKey: ?string;
|
|
36
37
|
|
|
37
|
-
|
|
38
|
-
_contextPath: string = getBasePath();
|
|
38
|
+
_modelOptions: ?ModelOptions;
|
|
39
39
|
|
|
40
40
|
/**
|
|
41
41
|
* Construct ErrorResponse
|
|
42
42
|
*/
|
|
43
|
-
constructor(
|
|
44
|
-
data: Object,
|
|
45
|
-
connectKey?: string,
|
|
46
|
-
origin?: string,
|
|
47
|
-
contextPath?: string,
|
|
48
|
-
) {
|
|
43
|
+
constructor(data: Object, connectKey?: string, modelOptions?: ModelOptions) {
|
|
49
44
|
this._error = data;
|
|
50
45
|
this._connectKey = connectKey;
|
|
51
46
|
|
|
52
|
-
this.
|
|
53
|
-
this._contextPath = contextPath || getBasePath();
|
|
47
|
+
this._modelOptions = modelOptions;
|
|
54
48
|
}
|
|
55
49
|
|
|
56
50
|
/**
|
|
@@ -68,13 +62,13 @@ export default class ErrorResponse {
|
|
|
68
62
|
/**
|
|
69
63
|
*/
|
|
70
64
|
get origin(): string {
|
|
71
|
-
return this.
|
|
65
|
+
return this._modelOptions?.origin || "";
|
|
72
66
|
}
|
|
73
67
|
|
|
74
68
|
/**
|
|
75
69
|
*/
|
|
76
70
|
get contextPath(): string {
|
|
77
|
-
return this.
|
|
71
|
+
return this._modelOptions?.contextPath || getBasePathModularUI();
|
|
78
72
|
}
|
|
79
73
|
|
|
80
74
|
/**
|
|
@@ -186,12 +180,7 @@ export default class ErrorResponse {
|
|
|
186
180
|
*/
|
|
187
181
|
get redirectHref(): Href {
|
|
188
182
|
if (this.response.redirect?.href) {
|
|
189
|
-
return new Href(
|
|
190
|
-
this.response.redirect?.href,
|
|
191
|
-
"",
|
|
192
|
-
this.origin,
|
|
193
|
-
this.contextPath,
|
|
194
|
-
);
|
|
183
|
+
return new Href(this.response.redirect?.href, "", this._modelOptions);
|
|
195
184
|
}
|
|
196
185
|
return new Href();
|
|
197
186
|
}
|
|
@@ -320,7 +309,7 @@ export default class ErrorResponse {
|
|
|
320
309
|
*/
|
|
321
310
|
get changePasswordHref(): ?Href {
|
|
322
311
|
return this.properties.redirect
|
|
323
|
-
? new Href(this.properties.redirect, "", this.
|
|
312
|
+
? new Href(this.properties.redirect, "", this._modelOptions)
|
|
324
313
|
: null;
|
|
325
314
|
}
|
|
326
315
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// @flow
|
|
2
2
|
import BaseFilterModel from "../filters/BaseFilterModel";
|
|
3
3
|
|
|
4
|
-
import type { AttributeType } from "../types";
|
|
4
|
+
import type { AttributeType, ModelOptions } from "../types";
|
|
5
5
|
import { IllegalStateException } from "../../exceptions";
|
|
6
6
|
/**
|
|
7
7
|
* Assignment filter consists of two filters: assignment type and user filter
|
|
@@ -14,8 +14,12 @@ export default class AssignmentFilterModel extends BaseFilterModel {
|
|
|
14
14
|
/**
|
|
15
15
|
* Construct an assignment filter
|
|
16
16
|
*/
|
|
17
|
-
constructor(
|
|
18
|
-
|
|
17
|
+
constructor(
|
|
18
|
+
data: Object,
|
|
19
|
+
contributions: Object,
|
|
20
|
+
modelOptions?: ModelOptions,
|
|
21
|
+
) {
|
|
22
|
+
super(data, contributions, modelOptions);
|
|
19
23
|
|
|
20
24
|
this._assignmenttype = this.createAssignmentTypeModel();
|
|
21
25
|
this._user = this.createUserModel();
|
|
@@ -3,7 +3,7 @@ import BaseModel from "../base/BaseModel";
|
|
|
3
3
|
import createAttribute from "../attributes/_createAttribute";
|
|
4
4
|
import { PARAMETER_SEPARATOR } from "../../constants/Constants";
|
|
5
5
|
|
|
6
|
-
import type { AttributeType, FilterType } from "../types";
|
|
6
|
+
import type { AttributeType, FilterType, ModelOptions } from "../types";
|
|
7
7
|
import { IllegalStateException } from "../../exceptions";
|
|
8
8
|
|
|
9
9
|
/**
|
|
@@ -16,8 +16,12 @@ export default class BaseFilterModel extends BaseModel {
|
|
|
16
16
|
|
|
17
17
|
/**
|
|
18
18
|
*/
|
|
19
|
-
constructor(
|
|
20
|
-
|
|
19
|
+
constructor(
|
|
20
|
+
data: Object,
|
|
21
|
+
contributions: Object,
|
|
22
|
+
modelOptions?: ModelOptions,
|
|
23
|
+
) {
|
|
24
|
+
super(data, contributions, modelOptions);
|
|
21
25
|
|
|
22
26
|
this._attribute = this.createAttribute(
|
|
23
27
|
this.type,
|
|
@@ -53,10 +57,15 @@ export default class BaseFilterModel extends BaseModel {
|
|
|
53
57
|
return null;
|
|
54
58
|
}
|
|
55
59
|
|
|
56
|
-
return createAttribute(
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
+
return createAttribute(
|
|
61
|
+
param,
|
|
62
|
+
data,
|
|
63
|
+
{
|
|
64
|
+
...contributions,
|
|
65
|
+
type: type,
|
|
66
|
+
},
|
|
67
|
+
this.modelOptions,
|
|
68
|
+
);
|
|
60
69
|
}
|
|
61
70
|
|
|
62
71
|
/**
|
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
import BaseFilterModel from "../filters/BaseFilterModel";
|
|
3
3
|
import ChoiceAttributeModel from "../attributes/ChoiceAttributeModel";
|
|
4
4
|
|
|
5
|
+
import type { ModelOptions } from "../types";
|
|
6
|
+
|
|
5
7
|
/**
|
|
6
8
|
* The concept index model is a special filter used to index all first concept label letters in de modelcatalog.
|
|
7
9
|
*/
|
|
@@ -9,8 +11,12 @@ export default class ConceptIndexFilterModel extends BaseFilterModel {
|
|
|
9
11
|
/**
|
|
10
12
|
* Construct a filter
|
|
11
13
|
*/
|
|
12
|
-
constructor(
|
|
13
|
-
|
|
14
|
+
constructor(
|
|
15
|
+
data: Object,
|
|
16
|
+
contributions: Object,
|
|
17
|
+
modelOptions?: ModelOptions,
|
|
18
|
+
) {
|
|
19
|
+
super(data, contributions, modelOptions);
|
|
14
20
|
|
|
15
21
|
if (data.options) {
|
|
16
22
|
const selectedValues = data.options
|
|
@@ -8,7 +8,7 @@ import ConceptIndexFilterModel from "../filters/ConceptIndexFilterModel";
|
|
|
8
8
|
import CompositeAttributeModel from "../attributes/CompositeAttributeModel";
|
|
9
9
|
import FilterModel from "../filters/FilterModel";
|
|
10
10
|
|
|
11
|
-
import type { AttributeType, FilterType } from "../types";
|
|
11
|
+
import type { AttributeType, FilterType, ModelOptions } from "../types";
|
|
12
12
|
|
|
13
13
|
/**
|
|
14
14
|
* Contains a collection of filters
|
|
@@ -17,7 +17,11 @@ export default class FilterCollection extends BaseCollection<FilterType> {
|
|
|
17
17
|
/**
|
|
18
18
|
* Construct a collection of filters
|
|
19
19
|
*/
|
|
20
|
-
constructor(
|
|
20
|
+
constructor(
|
|
21
|
+
data: Object = {},
|
|
22
|
+
contributions: Object = {},
|
|
23
|
+
modelOptions?: ModelOptions,
|
|
24
|
+
) {
|
|
21
25
|
super();
|
|
22
26
|
|
|
23
27
|
if (data && contributions && Array.isArray(contributions.filter)) {
|
|
@@ -35,6 +39,7 @@ export default class FilterCollection extends BaseCollection<FilterType> {
|
|
|
35
39
|
dynamicschema: contributions.dynamicschema,
|
|
36
40
|
},
|
|
37
41
|
filterContributionByKey,
|
|
42
|
+
modelOptions,
|
|
38
43
|
);
|
|
39
44
|
|
|
40
45
|
if (contributions.listkey) {
|
|
@@ -61,25 +66,26 @@ export default class FilterCollection extends BaseCollection<FilterType> {
|
|
|
61
66
|
filterKey: string,
|
|
62
67
|
data: Object,
|
|
63
68
|
contributions: Object,
|
|
69
|
+
modelOptions?: ModelOptions,
|
|
64
70
|
): FilterType {
|
|
65
71
|
const type = contributions.type || "stringfilter";
|
|
66
72
|
if (type === "choicefilter" && filterKey === "index") {
|
|
67
|
-
return new ConceptIndexFilterModel(data, contributions);
|
|
73
|
+
return new ConceptIndexFilterModel(data, contributions, modelOptions);
|
|
68
74
|
}
|
|
69
75
|
|
|
70
76
|
if (type.includes("rangefilter")) {
|
|
71
|
-
return new RangeFilterModel(data, contributions);
|
|
77
|
+
return new RangeFilterModel(data, contributions, modelOptions);
|
|
72
78
|
}
|
|
73
79
|
|
|
74
80
|
if (type === "assignmentfilter") {
|
|
75
|
-
return new AssignmentFilterModel(data, contributions);
|
|
81
|
+
return new AssignmentFilterModel(data, contributions, modelOptions);
|
|
76
82
|
}
|
|
77
83
|
|
|
78
84
|
if (type === "stringfilter") {
|
|
79
|
-
return new StringFilterModel(data, contributions);
|
|
85
|
+
return new StringFilterModel(data, contributions, modelOptions);
|
|
80
86
|
}
|
|
81
87
|
|
|
82
|
-
return new FilterModel(data, contributions);
|
|
88
|
+
return new FilterModel(data, contributions, modelOptions);
|
|
83
89
|
}
|
|
84
90
|
|
|
85
91
|
/**
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// @flow
|
|
2
2
|
|
|
3
|
-
import type { AttributeType, FilterType } from "../types";
|
|
3
|
+
import type { AttributeType, FilterType, ModelOptions } from "../types";
|
|
4
4
|
import FilterModel from "./FilterModel";
|
|
5
5
|
|
|
6
6
|
/**
|
|
@@ -13,8 +13,12 @@ export default class StringFilterModel extends FilterModel {
|
|
|
13
13
|
|
|
14
14
|
/**
|
|
15
15
|
*/
|
|
16
|
-
constructor(
|
|
17
|
-
|
|
16
|
+
constructor(
|
|
17
|
+
data: Object,
|
|
18
|
+
contributions: Object,
|
|
19
|
+
modelOptions?: ModelOptions,
|
|
20
|
+
) {
|
|
21
|
+
super(data, contributions, modelOptions);
|
|
18
22
|
|
|
19
23
|
this.update(this.attribute, data.value ?? "");
|
|
20
24
|
|
|
@@ -268,7 +268,11 @@ class FormModel extends ResourceModel {
|
|
|
268
268
|
const objectId = missingAnchors?.[0]?.objectid ?? "";
|
|
269
269
|
const contributions = this.contributions.objects?.[objectId];
|
|
270
270
|
if (contributions) {
|
|
271
|
-
return new FormObjectModel(
|
|
271
|
+
return new FormObjectModel(
|
|
272
|
+
missingAnchors[0],
|
|
273
|
+
contributions,
|
|
274
|
+
this.modelOptions,
|
|
275
|
+
);
|
|
272
276
|
}
|
|
273
277
|
}
|
|
274
278
|
|
|
@@ -410,6 +414,7 @@ class FormModel extends ResourceModel {
|
|
|
410
414
|
new FormObjectModel(
|
|
411
415
|
endResult,
|
|
412
416
|
this.contributions.objects[endResult.objectid],
|
|
417
|
+
this.modelOptions,
|
|
413
418
|
),
|
|
414
419
|
);
|
|
415
420
|
}
|
|
@@ -605,7 +610,7 @@ class FormModel extends ResourceModel {
|
|
|
605
610
|
*/
|
|
606
611
|
get successRedirect(): Href | null {
|
|
607
612
|
return this.isFinished && this.success
|
|
608
|
-
? new Href(this.success.redirect, "", this.
|
|
613
|
+
? new Href(this.success.redirect, "", this.modelOptions)
|
|
609
614
|
: null;
|
|
610
615
|
}
|
|
611
616
|
|
|
@@ -640,6 +645,7 @@ class FormModel extends ResourceModel {
|
|
|
640
645
|
resultDataKey,
|
|
641
646
|
successData[resultDataKey],
|
|
642
647
|
this.contributions.resultdata[resultDataKey],
|
|
648
|
+
this.modelOptions,
|
|
643
649
|
);
|
|
644
650
|
}
|
|
645
651
|
|
|
@@ -8,9 +8,16 @@ import ContentConfiguration from "../contentconfiguration/ContentConfiguration";
|
|
|
8
8
|
import ErrorCollection from "../error/ErrorCollection";
|
|
9
9
|
import { IllegalArgumentException } from "../../exceptions";
|
|
10
10
|
|
|
11
|
-
import type {
|
|
12
|
-
|
|
11
|
+
import type {
|
|
12
|
+
AttributeType,
|
|
13
|
+
ModularUIModel,
|
|
14
|
+
FormErrorAnchor,
|
|
15
|
+
ModelOptions,
|
|
16
|
+
} from "../types";
|
|
17
|
+
|
|
13
18
|
import LayoutHintCollection from "../layouthint/LayoutHintCollection";
|
|
19
|
+
|
|
20
|
+
import type LinkModel from "../links/LinkModel";
|
|
14
21
|
import type { MessageParameters } from "../../i18n";
|
|
15
22
|
import type ErrorResponse from "../error/ErrorResponse";
|
|
16
23
|
|
|
@@ -27,13 +34,18 @@ export default class FormObjectModel extends BaseModel {
|
|
|
27
34
|
/**
|
|
28
35
|
* Construct FormObjectModel
|
|
29
36
|
*/
|
|
30
|
-
constructor(
|
|
31
|
-
|
|
37
|
+
constructor(
|
|
38
|
+
object: Object,
|
|
39
|
+
objectContributions: Object,
|
|
40
|
+
modelOptions?: ModelOptions,
|
|
41
|
+
) {
|
|
42
|
+
super(object, objectContributions, modelOptions);
|
|
32
43
|
|
|
33
44
|
if (object && this.getElements().length > 0) {
|
|
34
45
|
this._attributeCollection = new AttributeCollection(
|
|
35
46
|
this.getElements(),
|
|
36
47
|
this.getApplicableAttributeContributions(),
|
|
48
|
+
{ ...modelOptions, isReadonly: false },
|
|
37
49
|
);
|
|
38
50
|
} else {
|
|
39
51
|
this._attributeCollection = new AttributeCollection();
|
|
@@ -65,6 +77,7 @@ export default class FormObjectModel extends BaseModel {
|
|
|
65
77
|
return new FormObjectModel(
|
|
66
78
|
formObjectModel.data,
|
|
67
79
|
formObjectModel.contributions,
|
|
80
|
+
formObjectModel.modelOptions,
|
|
68
81
|
);
|
|
69
82
|
}
|
|
70
83
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// @flow
|
|
2
2
|
import AttributeCollection from "../attributes/AttributeCollection";
|
|
3
|
-
import type { AttributeType } from "../types";
|
|
3
|
+
import type { AttributeType, ModelOptions } from "../types";
|
|
4
4
|
|
|
5
5
|
/**
|
|
6
6
|
* Group information model
|
|
@@ -14,19 +14,26 @@ export class GroupModel {
|
|
|
14
14
|
|
|
15
15
|
/**
|
|
16
16
|
*/
|
|
17
|
-
constructor(
|
|
17
|
+
constructor(
|
|
18
|
+
group: Object,
|
|
19
|
+
context: Object,
|
|
20
|
+
contributions: Array<Object>,
|
|
21
|
+
modelOptions?: ModelOptions,
|
|
22
|
+
) {
|
|
18
23
|
this._group = group;
|
|
19
24
|
this._context = context;
|
|
20
25
|
|
|
21
26
|
this._attributeCollection = new AttributeCollection(
|
|
22
27
|
group,
|
|
23
28
|
context.attributes,
|
|
29
|
+
{ ...modelOptions, isReadonly: true },
|
|
24
30
|
);
|
|
25
31
|
|
|
26
32
|
if (group.grouping) {
|
|
27
33
|
this._grouping = new GroupingModel(
|
|
28
34
|
{ ...group.grouping, dynamicschema: group.dynamicschema },
|
|
29
35
|
contributions,
|
|
36
|
+
modelOptions,
|
|
30
37
|
);
|
|
31
38
|
}
|
|
32
39
|
}
|
|
@@ -113,17 +120,25 @@ export default class GroupingModel {
|
|
|
113
120
|
|
|
114
121
|
/**
|
|
115
122
|
*/
|
|
116
|
-
constructor(
|
|
123
|
+
constructor(
|
|
124
|
+
data: Object,
|
|
125
|
+
contexts: Array<Context>,
|
|
126
|
+
modelOptions?: ModelOptions,
|
|
127
|
+
) {
|
|
117
128
|
this._prefix = data && data.prefix ? data.prefix : null;
|
|
118
129
|
|
|
119
130
|
if (data?.group) {
|
|
120
|
-
this._groups = this.createGroup(data, contexts);
|
|
131
|
+
this._groups = this.createGroup(data, contexts, modelOptions);
|
|
121
132
|
}
|
|
122
133
|
}
|
|
123
134
|
|
|
124
135
|
/**
|
|
125
136
|
*/
|
|
126
|
-
createGroup(
|
|
137
|
+
createGroup(
|
|
138
|
+
data: Object,
|
|
139
|
+
contributions: Array<Context>,
|
|
140
|
+
modelOptions?: ModelOptions,
|
|
141
|
+
): Array<Object> {
|
|
127
142
|
const context = this.getContextFromContributionsByPrefix(
|
|
128
143
|
contributions,
|
|
129
144
|
this._prefix,
|
|
@@ -138,6 +153,7 @@ export default class GroupingModel {
|
|
|
138
153
|
},
|
|
139
154
|
context,
|
|
140
155
|
contributions,
|
|
156
|
+
modelOptions,
|
|
141
157
|
);
|
|
142
158
|
});
|
|
143
159
|
}
|
package/src/models/href/Href.js
CHANGED
|
@@ -1,10 +1,15 @@
|
|
|
1
1
|
// @flow
|
|
2
|
-
import {
|
|
2
|
+
import {
|
|
3
|
+
getBasePathModularUI,
|
|
4
|
+
HTTP_METHODS,
|
|
5
|
+
CONTENT_PATH,
|
|
6
|
+
} from "../../constants";
|
|
3
7
|
|
|
4
8
|
import Parameter from "../parameter/Parameter";
|
|
5
9
|
import { IllegalArgumentException } from "../../exceptions";
|
|
6
10
|
|
|
7
11
|
import type { LocationShape } from "react-router";
|
|
12
|
+
import type { ModelOptions } from "../types";
|
|
8
13
|
|
|
9
14
|
type HrefObject = {
|
|
10
15
|
_path: string,
|
|
@@ -30,7 +35,7 @@ class Href {
|
|
|
30
35
|
_state: any = null;
|
|
31
36
|
_referenceHash: ?number;
|
|
32
37
|
_origin: string = "";
|
|
33
|
-
_contextPath: string =
|
|
38
|
+
_contextPath: string = getBasePathModularUI();
|
|
34
39
|
|
|
35
40
|
/**
|
|
36
41
|
* Create a Href
|
|
@@ -38,8 +43,7 @@ class Href {
|
|
|
38
43
|
constructor(
|
|
39
44
|
href?: HrefInput,
|
|
40
45
|
resourcetype?: string,
|
|
41
|
-
|
|
42
|
-
contextPath?: string,
|
|
46
|
+
modelOptions?: ?ModelOptions,
|
|
43
47
|
) {
|
|
44
48
|
this.resourcetype = resourcetype ?? "";
|
|
45
49
|
|
|
@@ -51,12 +55,12 @@ class Href {
|
|
|
51
55
|
this.setFromLocationOrObject(href);
|
|
52
56
|
}
|
|
53
57
|
|
|
54
|
-
if (typeof origin === "string") {
|
|
55
|
-
this.origin = origin;
|
|
58
|
+
if (typeof modelOptions?.origin === "string") {
|
|
59
|
+
this.origin = modelOptions.origin;
|
|
56
60
|
}
|
|
57
61
|
|
|
58
|
-
if (typeof contextPath === "string") {
|
|
59
|
-
this.contextPath = contextPath;
|
|
62
|
+
if (typeof modelOptions?.contextPath === "string") {
|
|
63
|
+
this.contextPath = modelOptions.contextPath;
|
|
60
64
|
}
|
|
61
65
|
}
|
|
62
66
|
|
|
@@ -478,7 +482,7 @@ class Href {
|
|
|
478
482
|
/**
|
|
479
483
|
* Checks if the given Href equals this Href
|
|
480
484
|
*/
|
|
481
|
-
equals(href: Href | string): boolean {
|
|
485
|
+
equals(href: Href | string | null): boolean {
|
|
482
486
|
if (href instanceof Href) {
|
|
483
487
|
return this.path === href.path;
|
|
484
488
|
}
|
|
@@ -516,7 +520,9 @@ class Href {
|
|
|
516
520
|
* Indicates if the link is a content link
|
|
517
521
|
*/
|
|
518
522
|
get isContent(): boolean {
|
|
519
|
-
return this.absolutepath.startsWith(
|
|
523
|
+
return this.absolutepath.startsWith(
|
|
524
|
+
`${getBasePathModularUI()}${CONTENT_PATH}`,
|
|
525
|
+
);
|
|
520
526
|
}
|
|
521
527
|
|
|
522
528
|
/**
|
|
@@ -546,6 +552,7 @@ class Href {
|
|
|
546
552
|
search: this.querystring.length > 0 ? `?${this.querystring}` : "",
|
|
547
553
|
hash: this.hash.length > 0 ? `#${this.hash}` : "",
|
|
548
554
|
state: {
|
|
555
|
+
origin: this.origin,
|
|
549
556
|
contextPath: this.contextPath,
|
|
550
557
|
...this.state,
|
|
551
558
|
},
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { getBasePathModularUI } from "../../../constants";
|
|
2
2
|
import Href from "../Href";
|
|
3
3
|
|
|
4
4
|
describe("href spec", () => {
|
|
@@ -142,7 +142,7 @@ describe("href spec", () => {
|
|
|
142
142
|
});
|
|
143
143
|
|
|
144
144
|
it("a tab can have the same uri as the contextPath", () => {
|
|
145
|
-
expect(
|
|
145
|
+
expect(getBasePathModularUI()).toBe("/BeInformed");
|
|
146
146
|
|
|
147
147
|
const tabHref = new Href("/BeInformed");
|
|
148
148
|
|
|
@@ -152,6 +152,7 @@ describe("href spec", () => {
|
|
|
152
152
|
pathname: "/BeInformed",
|
|
153
153
|
search: "",
|
|
154
154
|
state: {
|
|
155
|
+
origin: "",
|
|
155
156
|
contextPath: "/BeInformed",
|
|
156
157
|
},
|
|
157
158
|
});
|
|
@@ -163,9 +164,7 @@ describe("href spec", () => {
|
|
|
163
164
|
hash: "",
|
|
164
165
|
pathname: "/BeInformed/list",
|
|
165
166
|
search: "",
|
|
166
|
-
state: {
|
|
167
|
-
contextPath: "/BeInformed",
|
|
168
|
-
},
|
|
167
|
+
state: { origin: "", contextPath: "/BeInformed" },
|
|
169
168
|
});
|
|
170
169
|
|
|
171
170
|
const listHrefFromHref = new Href(listHref);
|
|
@@ -174,9 +173,7 @@ describe("href spec", () => {
|
|
|
174
173
|
hash: "",
|
|
175
174
|
pathname: "/BeInformed/list",
|
|
176
175
|
search: "",
|
|
177
|
-
state: {
|
|
178
|
-
contextPath: "/BeInformed",
|
|
179
|
-
},
|
|
176
|
+
state: { origin: "", contextPath: "/BeInformed" },
|
|
180
177
|
});
|
|
181
178
|
});
|
|
182
179
|
});
|
|
@@ -4,6 +4,7 @@ import normalizeLinkJSON from "./normalizeLinkJSON";
|
|
|
4
4
|
import LinkModel from "./LinkModel";
|
|
5
5
|
|
|
6
6
|
import type Href from "../href/Href";
|
|
7
|
+
import type { ModelOptions } from "../types";
|
|
7
8
|
|
|
8
9
|
/**
|
|
9
10
|
* Collection of links
|
|
@@ -17,15 +18,14 @@ export default class LinkCollection extends BaseCollection<LinkModel> {
|
|
|
17
18
|
constructor(
|
|
18
19
|
linkData: Object = {},
|
|
19
20
|
linkContributions: Object = {},
|
|
20
|
-
|
|
21
|
-
contextPath?: string,
|
|
21
|
+
modelOptions?: ModelOptions,
|
|
22
22
|
) {
|
|
23
23
|
super();
|
|
24
24
|
|
|
25
25
|
// There can be links in data and/or contributions (e.g. concept link is available through contributions)
|
|
26
26
|
this.collection = normalizeLinkJSON(linkData, linkContributions).map(
|
|
27
27
|
({ data, contributions }) =>
|
|
28
|
-
new LinkModel(data, contributions,
|
|
28
|
+
new LinkModel(data, contributions, modelOptions),
|
|
29
29
|
);
|
|
30
30
|
}
|
|
31
31
|
|
|
@@ -7,7 +7,7 @@ import Href from "../href/Href";
|
|
|
7
7
|
import LinkCollection from "../links/LinkCollection";
|
|
8
8
|
import { INITIAL_FILTER } from "../../constants/LayoutHints";
|
|
9
9
|
|
|
10
|
-
import type { ModularUIModel } from "../types";
|
|
10
|
+
import type { ModelOptions, ModularUIModel } from "../types";
|
|
11
11
|
import Parameter from "../parameter/Parameter";
|
|
12
12
|
|
|
13
13
|
/**
|
|
@@ -30,12 +30,11 @@ class LinkModel extends BaseModel {
|
|
|
30
30
|
constructor(
|
|
31
31
|
data: Object,
|
|
32
32
|
contributions: Object,
|
|
33
|
-
|
|
34
|
-
contextPath?: string,
|
|
33
|
+
modelOptions?: ModelOptions,
|
|
35
34
|
) {
|
|
36
|
-
super(data, contributions);
|
|
35
|
+
super(data, contributions, modelOptions);
|
|
37
36
|
|
|
38
|
-
this.createHref(
|
|
37
|
+
this.createHref(modelOptions);
|
|
39
38
|
|
|
40
39
|
this._isCacheable = false;
|
|
41
40
|
}
|
|
@@ -47,23 +46,17 @@ class LinkModel extends BaseModel {
|
|
|
47
46
|
name: string,
|
|
48
47
|
href: string | Href,
|
|
49
48
|
label: string,
|
|
50
|
-
|
|
51
|
-
contextPath?: string,
|
|
49
|
+
modelOptions?: ModelOptions,
|
|
52
50
|
): LinkModel {
|
|
53
51
|
const data = { name, href };
|
|
54
52
|
const contributions = { label };
|
|
55
|
-
return new LinkModel(data, contributions,
|
|
53
|
+
return new LinkModel(data, contributions, modelOptions);
|
|
56
54
|
}
|
|
57
55
|
|
|
58
56
|
/**
|
|
59
57
|
*/
|
|
60
|
-
createHref(
|
|
61
|
-
const href = new Href(
|
|
62
|
-
this.data.href,
|
|
63
|
-
this.resourcetype,
|
|
64
|
-
origin,
|
|
65
|
-
contextPath,
|
|
66
|
-
);
|
|
58
|
+
createHref(modelOptions: ?ModelOptions) {
|
|
59
|
+
const href = new Href(this.data.href, this.resourcetype, modelOptions);
|
|
67
60
|
this.handleInitialFilters(href);
|
|
68
61
|
|
|
69
62
|
this.href = href;
|
|
@@ -278,7 +278,12 @@ export default class ListDetailModel extends DetailModel {
|
|
|
278
278
|
*/
|
|
279
279
|
addAttributes(key: string, eventData: Object, eventContributions: Object) {
|
|
280
280
|
this._eventdata.push(
|
|
281
|
-
new AttributeSetModel(
|
|
281
|
+
new AttributeSetModel(
|
|
282
|
+
key,
|
|
283
|
+
eventData,
|
|
284
|
+
eventContributions,
|
|
285
|
+
this.modelOptions,
|
|
286
|
+
),
|
|
282
287
|
);
|
|
283
288
|
}
|
|
284
289
|
|
|
@@ -9,6 +9,7 @@ import { CASEVIEW_LINK } from "../../constants/LayoutHints";
|
|
|
9
9
|
import type ChoiceAttributeOptionModel from "../attributes/ChoiceAttributeOptionModel";
|
|
10
10
|
import type ActionCollection from "../actions/ActionCollection";
|
|
11
11
|
import type LinkCollection from "../links/LinkCollection";
|
|
12
|
+
import type { ModelOptions } from "../types";
|
|
12
13
|
|
|
13
14
|
/**
|
|
14
15
|
* List Item
|
|
@@ -20,15 +21,14 @@ export default class ListItemModel extends DetailModel {
|
|
|
20
21
|
key: string,
|
|
21
22
|
data: Object,
|
|
22
23
|
contributions: Object,
|
|
23
|
-
|
|
24
|
-
contextPath?: string,
|
|
24
|
+
modelOptions?: ModelOptions,
|
|
25
25
|
): ListItemModel {
|
|
26
26
|
const listitemInput = new ModularUIResponse();
|
|
27
27
|
listitemInput.key = key;
|
|
28
28
|
listitemInput.data = data;
|
|
29
29
|
listitemInput.contributions = contributions;
|
|
30
|
-
listitemInput.origin = origin;
|
|
31
|
-
listitemInput.contextPath = contextPath;
|
|
30
|
+
listitemInput.origin = modelOptions?.origin;
|
|
31
|
+
listitemInput.contextPath = modelOptions?.contextPath;
|
|
32
32
|
|
|
33
33
|
return new ListItemModel(listitemInput);
|
|
34
34
|
}
|