@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
|
@@ -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
|
});
|
|
@@ -27,8 +27,7 @@ class LinkCollection extends _BaseCollection.default {
|
|
|
27
27
|
var _context;
|
|
28
28
|
let linkData = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
29
29
|
let linkContributions = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
30
|
-
let
|
|
31
|
-
let contextPath = arguments.length > 3 ? arguments[3] : undefined;
|
|
30
|
+
let modelOptions = arguments.length > 2 ? arguments[2] : undefined;
|
|
32
31
|
super();
|
|
33
32
|
|
|
34
33
|
// There can be links in data and/or contributions (e.g. concept link is available through contributions)
|
|
@@ -37,7 +36,7 @@ class LinkCollection extends _BaseCollection.default {
|
|
|
37
36
|
data,
|
|
38
37
|
contributions
|
|
39
38
|
} = _ref;
|
|
40
|
-
return new _LinkModel.default(data, contributions,
|
|
39
|
+
return new _LinkModel.default(data, contributions, modelOptions);
|
|
41
40
|
});
|
|
42
41
|
}
|
|
43
42
|
|
|
@@ -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
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LinkCollection.js","names":["_BaseCollection","_interopRequireDefault","require","_normalizeLinkJSON","_LinkModel","LinkCollection","BaseCollection","constructor","_context","linkData","arguments","length","undefined","linkContributions","
|
|
1
|
+
{"version":3,"file":"LinkCollection.js","names":["_BaseCollection","_interopRequireDefault","require","_normalizeLinkJSON","_LinkModel","LinkCollection","BaseCollection","constructor","_context","linkData","arguments","length","undefined","linkContributions","modelOptions","collection","_map","default","normalizeLinkJSON","call","_ref","data","contributions","LinkModel","links","getLinkByKey","key","_context2","_find","link","hasLinkByKey","all","some","getLinkByHref","href","_context3","equals","hasLinkByHref","getLinksByGroup","_context4","_len","args","Array","_key","findGroups","groupLinks","_filter","_includes","group","linkCollection","getLinkByResourceType","resourceType","_context5","resourcetype","getLinksByLayoutHint","hint","_context6","newCollection","layouthint","has","hasLinksByLayoutHint","toHrefArray","_context7","hasLink","l","update","newLink","_context8","_context9","_context10","oldIndex","_findIndex","_slice","routePath","_context11","path","join","exports"],"sources":["../../../src/models/links/LinkCollection.js"],"sourcesContent":["// @flow\nimport BaseCollection from \"../base/BaseCollection\";\nimport normalizeLinkJSON from \"./normalizeLinkJSON\";\nimport LinkModel from \"./LinkModel\";\n\nimport type Href from \"../href/Href\";\nimport type { ModelOptions } from \"../types\";\n\n/**\n * Collection of links\n *\n * @see {LinkModel}\n */\nexport default class LinkCollection extends BaseCollection<LinkModel> {\n /**\n * Constructs the link collection\n */\n constructor(\n linkData: Object = {},\n linkContributions: Object = {},\n modelOptions?: ModelOptions,\n ) {\n super();\n\n // There can be links in data and/or contributions (e.g. concept link is available through contributions)\n this.collection = normalizeLinkJSON(linkData, linkContributions).map(\n ({ data, contributions }) =>\n new LinkModel(data, contributions, modelOptions),\n );\n }\n\n /**\n * Getting links\n */\n get links(): Array<LinkModel> {\n return this.collection;\n }\n\n /**\n * Set Link collection\n */\n set links(links: Array<LinkModel>) {\n this.collection = links;\n }\n\n /**\n * Get a link by it's key, handy for getting the self link\n */\n getLinkByKey(key: string): LinkModel | null {\n return this.links.find((link) => link.key === key) || null;\n }\n\n /**\n * Indicate if a link by key exists\n */\n hasLinkByKey(key: string): boolean {\n return this.all.some((link) => link.key === key);\n }\n\n /**\n * Get a link by it's Href\n */\n getLinkByHref(href: Href | string): LinkModel | null {\n return this.links.find((link) => link.href.equals(href)) || null;\n }\n\n /**\n * Indicate if a link by href exists\n */\n hasLinkByHref(href: Href | string): boolean {\n return this.all.some((link) => link.href.equals(href));\n }\n\n /**\n * Getting the links by group key. For instance getting all 'tab' links of the web application.\n */\n getLinksByGroup(...args: Array<string>): LinkCollection {\n const findGroups = args.length > 0 ? [...args] : [];\n const groupLinks = this.links.filter((link) =>\n findGroups.includes(link.group),\n );\n\n const linkCollection = new LinkCollection();\n\n linkCollection.links = groupLinks;\n\n return linkCollection;\n }\n\n /**\n * Retrieve links by resource type\n */\n getLinkByResourceType(resourceType: string): LinkCollection {\n const linkCollection = new LinkCollection();\n\n linkCollection.collection = this.links.filter(\n (link) => link.resourcetype === resourceType,\n );\n\n return linkCollection;\n }\n\n /**\n * Retrieve links including a layout hint\n */\n getLinksByLayoutHint(hint: string): LinkCollection {\n const newCollection = new LinkCollection();\n\n newCollection.collection = this.all.filter((link) =>\n link.layouthint.has(hint),\n );\n\n return newCollection;\n }\n\n /**\n * Indicates if a link with layout hint exists\n */\n hasLinksByLayoutHint(hint: string): boolean {\n return this.all.some((link) => link.layouthint.has(hint));\n }\n\n /**\n * Get all href of links in collection in an array of Href's\n */\n toHrefArray(): Array<Href> {\n return this.links.map((link) => link.href);\n }\n\n /**\n * Check if link exists in collection\n */\n hasLink(link: LinkModel): boolean {\n return this.some((l) => l.href.equals(link.href));\n }\n\n /**\n * Updates the collection with a new link, when the link to update does not exist, it is added to the collection\n */\n update(newLink: LinkModel): LinkCollection {\n const oldIndex = this.links.findIndex((link) => link.key === newLink.key);\n\n if (oldIndex === -1) {\n this.collection = [...this.collection, newLink];\n\n return this;\n }\n\n this.collection = [\n ...this.links.slice(0, oldIndex),\n newLink,\n ...this.links.slice(oldIndex + 1),\n ];\n\n return this;\n }\n\n /**\n * Use as path regex for react router routes\n */\n get routePath(): string {\n if (this.length === 0) {\n return \"__NON_EXISTING_ROUTE__\";\n }\n\n const path = this.collection.map((link) => link.href.path).join(\"|\");\n return this.length > 1 ? `(${path})` : path;\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -28,20 +28,20 @@ class LinkModel extends _BaseModel.default {
|
|
|
28
28
|
/**
|
|
29
29
|
* Create a Link
|
|
30
30
|
*/
|
|
31
|
-
constructor(data, contributions,
|
|
32
|
-
super(data, contributions);
|
|
31
|
+
constructor(data, contributions, modelOptions) {
|
|
32
|
+
super(data, contributions, modelOptions);
|
|
33
33
|
(0, _defineProperty2.default)(this, "_href", void 0);
|
|
34
34
|
(0, _defineProperty2.default)(this, "_isCacheable", void 0);
|
|
35
35
|
(0, _defineProperty2.default)(this, "_icon", void 0);
|
|
36
36
|
(0, _defineProperty2.default)(this, "_targetModel", void 0);
|
|
37
|
-
this.createHref(
|
|
37
|
+
this.createHref(modelOptions);
|
|
38
38
|
this._isCacheable = false;
|
|
39
39
|
}
|
|
40
40
|
|
|
41
41
|
/**
|
|
42
42
|
* Create a simple Link Model
|
|
43
43
|
*/
|
|
44
|
-
static create(name, href, label,
|
|
44
|
+
static create(name, href, label, modelOptions) {
|
|
45
45
|
const data = {
|
|
46
46
|
name,
|
|
47
47
|
href
|
|
@@ -49,13 +49,13 @@ class LinkModel extends _BaseModel.default {
|
|
|
49
49
|
const contributions = {
|
|
50
50
|
label
|
|
51
51
|
};
|
|
52
|
-
return new LinkModel(data, contributions,
|
|
52
|
+
return new LinkModel(data, contributions, modelOptions);
|
|
53
53
|
}
|
|
54
54
|
|
|
55
55
|
/**
|
|
56
56
|
*/
|
|
57
|
-
createHref(
|
|
58
|
-
const href = new _Href.default(this.data.href, this.resourcetype,
|
|
57
|
+
createHref(modelOptions) {
|
|
58
|
+
const href = new _Href.default(this.data.href, this.resourcetype, modelOptions);
|
|
59
59
|
this.handleInitialFilters(href);
|
|
60
60
|
this.href = href;
|
|
61
61
|
}
|
|
@@ -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;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LinkModel.js","names":["_objects","require","_ProcessStatusSettingsModel","_interopRequireDefault","_BaseModel","_Href","_LinkCollection","_LayoutHints","_Parameter","LinkModel","BaseModel","constructor","data","contributions","origin","contextPath","_defineProperty2","default","createHref","_isCacheable","create","name","href","label","Href","resourcetype","handleInitialFilters","layouthint","has","INITIAL_FILTER","_context","filters","_filter","call","hint","_startsWith","forEach","param","substr","length","p","Parameter","fromString","value","push","_keys","key","join","addParameter","group","getContribution","_href","links","components","LinkCollection","isActive","link","_context2","icon","_icon","targetModel","_targetModel","isCacheable","filterName","hasProcessStatusSettings","processStatus","ProcessStatusSettingsModel","getData","_default","exports"],"sources":["../../../src/models/links/LinkModel.js"],"sourcesContent":["// @flow\nimport { has } from \"../../utils/helpers/objects\";\n\nimport ProcessStatusSettingsModel from \"../process/ProcessStatusSettingsModel\";\nimport BaseModel from \"../base/BaseModel\";\nimport Href from \"../href/Href\";\nimport LinkCollection from \"../links/LinkCollection\";\nimport { INITIAL_FILTER } from \"../../constants/LayoutHints\";\n\nimport type { ModularUIModel } from \"../types\";\nimport Parameter from \"../parameter/Parameter\";\n\n/**\n * Defines a Link. For instance below example of a link to the tab 'books'\n * <br/>\n * \"Books\": {\n * \"href\": \"/books\",\n * \"profile\": \"/profiles/tab\"\n * }\n */\nclass LinkModel extends BaseModel {\n _href: Href;\n _isCacheable: boolean;\n _icon: string;\n _targetModel: ?Class<ModularUIModel>;\n\n /**\n * Create a Link\n */\n constructor(\n data: Object,\n contributions: Object,\n origin?: string,\n contextPath?: string,\n ) {\n super(data, contributions);\n\n this.createHref(origin, contextPath);\n\n this._isCacheable = false;\n }\n\n /**\n * Create a simple Link Model\n */\n static create(\n name: string,\n href: string | Href,\n label: string,\n origin?: string,\n contextPath?: string,\n ): LinkModel {\n const data = { name, href };\n const contributions = { label };\n return new LinkModel(data, contributions, origin, contextPath);\n }\n\n /**\n */\n createHref(origin?: string, contextPath?: string) {\n const href = new Href(\n this.data.href,\n this.resourcetype,\n origin,\n contextPath,\n );\n this.handleInitialFilters(href);\n\n this.href = href;\n }\n\n /**\n * Handle initial filter hints\n * @param href\n */\n handleInitialFilters(href: Href) {\n if (this.layouthint.has(INITIAL_FILTER)) {\n const filters: { [string]: Array<string> } = {};\n this.layouthint\n .filter((hint) => hint.startsWith(INITIAL_FILTER))\n .forEach((hint) => {\n const param = hint.substr(INITIAL_FILTER.length);\n const p = Parameter.fromString(param);\n\n if (p != null) {\n if (!filters[p.name]) {\n filters[p.name] = [];\n }\n\n if (p.value != null) {\n filters[p.name].push(p.value);\n }\n }\n });\n\n Object.keys(filters).forEach((key) => {\n const value = filters[key].join(\",\");\n href.addParameter(key, value);\n });\n }\n }\n\n /**\n * Getting link group\n */\n get group(): string {\n return this.getContribution(\"group\", this.data.group);\n }\n\n /**\n * Getting the key/name of this link\n */\n get key(): string {\n return this.data.name;\n }\n\n /**\n * Retrieve the href of the link\n */\n get href(): Href {\n return this._href;\n }\n\n /**\n * Set the href of the Link\n */\n set href(href: Href) {\n this._href = href;\n }\n\n /**\n * Getting the label of the link\n */\n get label(): string {\n return this.getContribution(\"label\", this.key);\n }\n\n /**\n * Getting the type of the link\n */\n get resourcetype(): string {\n return this.getContribution(\"resourcetype\", \"\");\n }\n\n /**\n */\n get links(): LinkCollection {\n if (this.data.components) {\n return new LinkCollection(\n { components: this.data.components },\n { components: this.contributions.components },\n );\n }\n\n return new LinkCollection();\n }\n\n /**\n * Check if the href startswith the URI of the given href\n */\n isActive(link: ?LinkModel): boolean {\n if (link) {\n return link.href.startsWith(this.href);\n }\n\n return false;\n }\n\n /**\n * Setter for icon of LinkModel\n */\n set icon(icon: string) {\n this._icon = icon;\n }\n\n /**\n * Retrieve icon of LinkModel\n */\n get icon(): string {\n return this._icon;\n }\n\n /**\n */\n get targetModel(): ?Class<ModularUIModel> {\n return this._targetModel;\n }\n\n /**\n */\n set targetModel(targetModel: Class<ModularUIModel>) {\n this._targetModel = targetModel;\n }\n\n /**\n */\n get isCacheable(): boolean {\n return this._isCacheable;\n }\n\n /**\n */\n set isCacheable(isCacheable: boolean) {\n this._isCacheable = isCacheable;\n }\n\n /**\n */\n get filterName(): string {\n return this.data.filter.name;\n }\n\n /**\n */\n get hasProcessStatusSettings(): boolean {\n return (\n has(this.data, \"processStatus\") &&\n has(this.contributions, \"processStatus\")\n );\n }\n\n /**\n */\n get processStatus(): ProcessStatusSettingsModel | null {\n if (this.hasProcessStatusSettings) {\n return new ProcessStatusSettingsModel(\n this.getData(\"processStatus\", {}),\n this.getContribution(\"processStatus\", {}),\n );\n }\n\n return null;\n }\n}\n\nexport default LinkModel;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"LinkModel.js","names":["_objects","require","_ProcessStatusSettingsModel","_interopRequireDefault","_BaseModel","_Href","_LinkCollection","_LayoutHints","_Parameter","LinkModel","BaseModel","constructor","data","contributions","modelOptions","_defineProperty2","default","createHref","_isCacheable","create","name","href","label","Href","resourcetype","handleInitialFilters","layouthint","has","INITIAL_FILTER","_context","filters","_filter","call","hint","_startsWith","forEach","param","substr","length","p","Parameter","fromString","value","push","_keys","key","join","addParameter","group","getContribution","_href","links","components","LinkCollection","isActive","link","_context2","icon","_icon","targetModel","_targetModel","isCacheable","filterName","hasProcessStatusSettings","processStatus","ProcessStatusSettingsModel","getData","_default","exports"],"sources":["../../../src/models/links/LinkModel.js"],"sourcesContent":["// @flow\nimport { has } from \"../../utils/helpers/objects\";\n\nimport ProcessStatusSettingsModel from \"../process/ProcessStatusSettingsModel\";\nimport BaseModel from \"../base/BaseModel\";\nimport Href from \"../href/Href\";\nimport LinkCollection from \"../links/LinkCollection\";\nimport { INITIAL_FILTER } from \"../../constants/LayoutHints\";\n\nimport type { ModelOptions, ModularUIModel } from \"../types\";\nimport Parameter from \"../parameter/Parameter\";\n\n/**\n * Defines a Link. For instance below example of a link to the tab 'books'\n * <br/>\n * \"Books\": {\n * \"href\": \"/books\",\n * \"profile\": \"/profiles/tab\"\n * }\n */\nclass LinkModel extends BaseModel {\n _href: Href;\n _isCacheable: boolean;\n _icon: string;\n _targetModel: ?Class<ModularUIModel>;\n\n /**\n * Create a Link\n */\n constructor(\n data: Object,\n contributions: Object,\n modelOptions?: ModelOptions,\n ) {\n super(data, contributions, modelOptions);\n\n this.createHref(modelOptions);\n\n this._isCacheable = false;\n }\n\n /**\n * Create a simple Link Model\n */\n static create(\n name: string,\n href: string | Href,\n label: string,\n modelOptions?: ModelOptions,\n ): LinkModel {\n const data = { name, href };\n const contributions = { label };\n return new LinkModel(data, contributions, modelOptions);\n }\n\n /**\n */\n createHref(modelOptions: ?ModelOptions) {\n const href = new Href(this.data.href, this.resourcetype, modelOptions);\n this.handleInitialFilters(href);\n\n this.href = href;\n }\n\n /**\n * Handle initial filter hints\n * @param href\n */\n handleInitialFilters(href: Href) {\n if (this.layouthint.has(INITIAL_FILTER)) {\n const filters: { [string]: Array<string> } = {};\n this.layouthint\n .filter((hint) => hint.startsWith(INITIAL_FILTER))\n .forEach((hint) => {\n const param = hint.substr(INITIAL_FILTER.length);\n const p = Parameter.fromString(param);\n\n if (p != null) {\n if (!filters[p.name]) {\n filters[p.name] = [];\n }\n\n if (p.value != null) {\n filters[p.name].push(p.value);\n }\n }\n });\n\n Object.keys(filters).forEach((key) => {\n const value = filters[key].join(\",\");\n href.addParameter(key, value);\n });\n }\n }\n\n /**\n * Getting link group\n */\n get group(): string {\n return this.getContribution(\"group\", this.data.group);\n }\n\n /**\n * Getting the key/name of this link\n */\n get key(): string {\n return this.data.name;\n }\n\n /**\n * Retrieve the href of the link\n */\n get href(): Href {\n return this._href;\n }\n\n /**\n * Set the href of the Link\n */\n set href(href: Href) {\n this._href = href;\n }\n\n /**\n * Getting the label of the link\n */\n get label(): string {\n return this.getContribution(\"label\", this.key);\n }\n\n /**\n * Getting the type of the link\n */\n get resourcetype(): string {\n return this.getContribution(\"resourcetype\", \"\");\n }\n\n /**\n */\n get links(): LinkCollection {\n if (this.data.components) {\n return new LinkCollection(\n { components: this.data.components },\n { components: this.contributions.components },\n );\n }\n\n return new LinkCollection();\n }\n\n /**\n * Check if the href startswith the URI of the given href\n */\n isActive(link: ?LinkModel): boolean {\n if (link) {\n return link.href.startsWith(this.href);\n }\n\n return false;\n }\n\n /**\n * Setter for icon of LinkModel\n */\n set icon(icon: string) {\n this._icon = icon;\n }\n\n /**\n * Retrieve icon of LinkModel\n */\n get icon(): string {\n return this._icon;\n }\n\n /**\n */\n get targetModel(): ?Class<ModularUIModel> {\n return this._targetModel;\n }\n\n /**\n */\n set targetModel(targetModel: Class<ModularUIModel>) {\n this._targetModel = targetModel;\n }\n\n /**\n */\n get isCacheable(): boolean {\n return this._isCacheable;\n }\n\n /**\n */\n set isCacheable(isCacheable: boolean) {\n this._isCacheable = isCacheable;\n }\n\n /**\n */\n get filterName(): string {\n return this.data.filter.name;\n }\n\n /**\n */\n get hasProcessStatusSettings(): boolean {\n return (\n has(this.data, \"processStatus\") &&\n has(this.contributions, \"processStatus\")\n );\n }\n\n /**\n */\n get processStatus(): ProcessStatusSettingsModel | null {\n if (this.hasProcessStatusSettings) {\n return new ProcessStatusSettingsModel(\n this.getData(\"processStatus\", {}),\n this.getContribution(\"processStatus\", {}),\n );\n }\n\n return null;\n }\n}\n\nexport default LinkModel;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -227,7 +227,7 @@ class ListDetailModel extends _DetailModel.default {
|
|
|
227
227
|
/**
|
|
228
228
|
*/
|
|
229
229
|
addAttributes(key, eventData, eventContributions) {
|
|
230
|
-
this._eventdata.push(new _AttributeSetModel.default(key, eventData, eventContributions));
|
|
230
|
+
this._eventdata.push(new _AttributeSetModel.default(key, eventData, eventContributions, this.modelOptions));
|
|
231
231
|
}
|
|
232
232
|
|
|
233
233
|
/**
|
|
@@ -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
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ListDetailModel.js","names":["_objects","require","_ActionCollection","_interopRequireDefault","_DetailModel","_ContentConfiguration","_AttributeSetModel","_createAttribute","_CompositeAttributeModel","ListDetailModel","DetailModel","constructor","modularUIResponse","_defineProperty2","default","_actionCollection","ActionCollection","_contentConfiguration","ContentConfiguration","contributions","content","setResultSection","setEventData","getInitialChildModelLinks","listitemPanels","listitem","links","getLinksByGroup","all","hasResults","results","push","givenAnswers","setChildModels","models","errors","_attributeCollection","type","modelName","isApplicableModel","data","resourcetype","_endsWith","call","_listitem","actionCollection","panelLinks","contentConfiguration","configuration","introtext","_content","text","message","Array","isArray","texts","has","setResults","setGivenAnswers","resultsData","resultSection","resultsContributions","_context","children","_filter","child","childKey","_keys","createAttribute","key","dynamicschema","CompositeAttributeModel","isResult","indicateContentConfiguration","_results","_context2","givenAnswersData","givenAnswersContributions","filteredContributions","_givenAnswers","hasEventData","eventdata","addAttributes","eventData","eventContributions","_eventdata","AttributeSetModel","forEach","eventDataContribution","eventDataData","i","exports"],"sources":["../../../src/models/list/ListDetailModel.js"],"sourcesContent":["// @flow\nimport { has } from \"../../utils/helpers/objects\";\n\nimport ActionCollection from \"../actions/ActionCollection\";\nimport DetailModel from \"../detail/DetailModel\";\nimport ContentConfiguration from \"../contentconfiguration/ContentConfiguration\";\nimport AttributeSetModel from \"../attributes/AttributeSetModel\";\n\nimport createAttribute from \"../attributes/_createAttribute\";\nimport CompositeAttributeModel from \"../attributes/CompositeAttributeModel\";\n\nimport type { ModularUIModel } from \"../types\";\nimport type { ModularUIResponse } from \"../../modularui\";\nimport type LinkCollection from \"../links/LinkCollection\";\nimport type ListItemModel from \"../list/ListItemModel\";\nimport type LinkModel from \"../links/LinkModel\";\nimport type ErrorResponse from \"../error/ErrorResponse\";\n\n/**\n * Detail of a list item\n */\nexport default class ListDetailModel extends DetailModel {\n _contentConfiguration: ContentConfiguration;\n _listitem: ListItemModel;\n _givenAnswers: ?CompositeAttributeModel;\n _results: ?CompositeAttributeModel;\n _eventdata: Array<AttributeSetModel>;\n\n /**\n * Construct\n */\n constructor(modularUIResponse: ModularUIResponse) {\n super(modularUIResponse);\n\n this._actionCollection = new ActionCollection();\n\n this._contentConfiguration = new ContentConfiguration(\n this.contributions ? this.contributions.content : {},\n );\n\n this.setResultSection();\n this.setEventData();\n }\n\n /**\n * Add links to expand on initialization of this model\n */\n getInitialChildModelLinks(): Array<LinkModel> {\n const listitemPanels = this.listitem\n ? this.listitem.links.getLinksByGroup(\"panel\").all\n : [];\n\n const links = [...super.getInitialChildModelLinks(), ...listitemPanels];\n\n if (this.hasResults) {\n if (this.results) {\n links.push(...this.results.getInitialChildModelLinks());\n }\n if (this.givenAnswers) {\n links.push(...this.givenAnswers.getInitialChildModelLinks());\n }\n }\n\n return links;\n }\n\n /**\n */\n setChildModels(models: Array<ModularUIModel>, errors: Array<ErrorResponse>) {\n this._attributeCollection.setChildModels(models, errors);\n\n if (this.results) {\n this.results.setChildModels(models, errors);\n }\n\n if (this.givenAnswers) {\n this.givenAnswers.setChildModels(models, errors);\n }\n }\n\n /**\n */\n get type(): string {\n return \"ListDetail\";\n }\n\n /**\n */\n static get modelName(): string {\n return \"ListDetailModel\";\n }\n\n /**\n */\n static isApplicableModel(data: ModularUIResponse): boolean {\n const resourcetype = data.contributions?.resourcetype ?? \"unknown\";\n\n return (\n resourcetype.endsWith(\"ListPanelDetail\") ||\n resourcetype.endsWith(\"ListDetail\") ||\n resourcetype === \"DatastoreRelatedDatastorePanelDetail\" ||\n resourcetype === \"CaseRelatedDataStorePanelDetail\"\n );\n }\n\n /**\n * Set listitem of this listdetail and transfer listitem actions to listdetail actions\n */\n set listitem(listitem: ListItemModel) {\n this._listitem = listitem;\n\n // transfer listitem actions to _actions\n this._actionCollection = listitem.actionCollection;\n }\n\n /**\n * Get listitem\n */\n get listitem(): ListItemModel {\n return this._listitem;\n }\n\n /**\n * Getting panel links\n */\n get panelLinks(): LinkCollection {\n return this.listitem.links.getLinksByGroup(\"panel\");\n }\n\n /**\n * Getting the contentConfiguration\n */\n get contentConfiguration(): ContentConfiguration {\n return this._contentConfiguration;\n }\n\n /**\n */\n set contentConfiguration(configuration: ContentConfiguration) {\n this._contentConfiguration = configuration;\n }\n\n /**\n * Getting the introduction text configured on the case view\n */\n get introtext(): string {\n if (this.data._content) {\n return this.data._content.text.message;\n }\n\n if (this.contributions.text) {\n return this.contributions.text.message ?? this.contributions.text;\n }\n\n if (Array.isArray(this.contributions.texts)) {\n return this.contributions.texts[0].text;\n }\n\n return \"\";\n }\n\n /**\n */\n setResultSection() {\n if (\n has(this.contributions, \"resultSection\") &&\n has(this.data, \"resultSection\")\n ) {\n this.setResults();\n this.setGivenAnswers();\n }\n }\n\n /**\n */\n setResults() {\n if (\n has(this.data, \"resultSection.results\") &&\n has(this.contributions, \"resultSection.results\")\n ) {\n const resultsData = this.data.resultSection.results;\n const resultsContributions = this.contributions.resultSection.results;\n if (resultsContributions.type === \"composite\") {\n resultsContributions.children = resultsContributions.children.filter(\n (child) => {\n const childKey = Object.keys(child)[0];\n return childKey in resultsData;\n },\n );\n }\n\n const results = createAttribute(\n \"results\",\n {\n key: \"results\",\n dynamicschema: this.data.dynamicschema,\n content: this.data.content?.results,\n ...this.data.resultSection,\n },\n resultsContributions,\n );\n\n if (results instanceof CompositeAttributeModel) {\n results.isResult = true;\n results.indicateContentConfiguration(this.contentConfiguration);\n this._results = results;\n }\n }\n }\n\n /**\n */\n setGivenAnswers() {\n if (\n has(this.data, \"resultSection.givenAnswers\") &&\n has(this.contributions, \"resultSection.givenAnswers\")\n ) {\n const givenAnswersData = this.data.resultSection.givenAnswers;\n const givenAnswersContributions =\n this.contributions.resultSection.givenAnswers;\n\n const filteredContributions = {\n ...givenAnswersContributions,\n children: givenAnswersContributions.children.filter((child) => {\n const childKey = Object.keys(child)[0];\n return childKey in givenAnswersData;\n }),\n };\n\n const givenAnswers = createAttribute(\n \"givenAnswers\",\n {\n key: \"givenAnswers\",\n dynamicschema: this.data.dynamicschema,\n content: this.data.content?.givenAnswers,\n ...this.data.resultSection,\n },\n filteredContributions,\n );\n\n if (givenAnswers instanceof CompositeAttributeModel) {\n givenAnswers.isResult = true;\n this._givenAnswers = givenAnswers;\n }\n }\n }\n\n /**\n */\n get givenAnswers(): ?CompositeAttributeModel {\n return this._givenAnswers;\n }\n\n /**\n */\n get hasResults(): boolean {\n return has(this.contributions, \"resultSection\");\n }\n\n /**\n */\n get results(): ?CompositeAttributeModel {\n return this._results;\n }\n\n /**\n */\n get hasEventData(): boolean {\n return (\n has(this.contributions, \"eventdata\") &&\n has(this.data, \"eventdata\") &&\n this.data.eventdata != null &&\n this.contributions.eventdata != null\n );\n }\n\n /**\n */\n addAttributes(key: string, eventData: Object, eventContributions: Object) {\n this._eventdata.push(\n new AttributeSetModel(key, eventData, eventContributions),\n );\n }\n\n /**\n */\n setEventData() {\n if (this.hasEventData) {\n this._eventdata = [];\n\n this.contributions.eventdata.forEach((eventDataContribution) => {\n const [key] = Object.keys(eventDataContribution);\n if (key in this.data.eventdata) {\n if (Array.isArray(this.data.eventdata[key])) {\n this.data.eventdata[key].forEach((eventDataData, i) => {\n this.addAttributes(\n `${key}-${i + 1}`,\n {\n ...eventDataData,\n dynamicschema: this.data.dynamicschema,\n },\n eventDataContribution[key],\n );\n });\n } else {\n this.addAttributes(\n key,\n {\n ...this.data.eventdata[key],\n dynamicschema: this.data.dynamicschema,\n },\n eventDataContribution[key],\n );\n }\n }\n });\n }\n }\n\n /**\n */\n get eventdata(): Array<AttributeSetModel> {\n return this._eventdata;\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"ListDetailModel.js","names":["_objects","require","_ActionCollection","_interopRequireDefault","_DetailModel","_ContentConfiguration","_AttributeSetModel","_createAttribute","_CompositeAttributeModel","ListDetailModel","DetailModel","constructor","modularUIResponse","_defineProperty2","default","_actionCollection","ActionCollection","_contentConfiguration","ContentConfiguration","contributions","content","setResultSection","setEventData","getInitialChildModelLinks","listitemPanels","listitem","links","getLinksByGroup","all","hasResults","results","push","givenAnswers","setChildModels","models","errors","_attributeCollection","type","modelName","isApplicableModel","data","resourcetype","_endsWith","call","_listitem","actionCollection","panelLinks","contentConfiguration","configuration","introtext","_content","text","message","Array","isArray","texts","has","setResults","setGivenAnswers","resultsData","resultSection","resultsContributions","_context","children","_filter","child","childKey","_keys","createAttribute","key","dynamicschema","CompositeAttributeModel","isResult","indicateContentConfiguration","_results","_context2","givenAnswersData","givenAnswersContributions","filteredContributions","_givenAnswers","hasEventData","eventdata","addAttributes","eventData","eventContributions","_eventdata","AttributeSetModel","modelOptions","forEach","eventDataContribution","eventDataData","i","exports"],"sources":["../../../src/models/list/ListDetailModel.js"],"sourcesContent":["// @flow\nimport { has } from \"../../utils/helpers/objects\";\n\nimport ActionCollection from \"../actions/ActionCollection\";\nimport DetailModel from \"../detail/DetailModel\";\nimport ContentConfiguration from \"../contentconfiguration/ContentConfiguration\";\nimport AttributeSetModel from \"../attributes/AttributeSetModel\";\n\nimport createAttribute from \"../attributes/_createAttribute\";\nimport CompositeAttributeModel from \"../attributes/CompositeAttributeModel\";\n\nimport type { ModularUIModel } from \"../types\";\nimport type { ModularUIResponse } from \"../../modularui\";\nimport type LinkCollection from \"../links/LinkCollection\";\nimport type ListItemModel from \"../list/ListItemModel\";\nimport type LinkModel from \"../links/LinkModel\";\nimport type ErrorResponse from \"../error/ErrorResponse\";\n\n/**\n * Detail of a list item\n */\nexport default class ListDetailModel extends DetailModel {\n _contentConfiguration: ContentConfiguration;\n _listitem: ListItemModel;\n _givenAnswers: ?CompositeAttributeModel;\n _results: ?CompositeAttributeModel;\n _eventdata: Array<AttributeSetModel>;\n\n /**\n * Construct\n */\n constructor(modularUIResponse: ModularUIResponse) {\n super(modularUIResponse);\n\n this._actionCollection = new ActionCollection();\n\n this._contentConfiguration = new ContentConfiguration(\n this.contributions ? this.contributions.content : {},\n );\n\n this.setResultSection();\n this.setEventData();\n }\n\n /**\n * Add links to expand on initialization of this model\n */\n getInitialChildModelLinks(): Array<LinkModel> {\n const listitemPanels = this.listitem\n ? this.listitem.links.getLinksByGroup(\"panel\").all\n : [];\n\n const links = [...super.getInitialChildModelLinks(), ...listitemPanels];\n\n if (this.hasResults) {\n if (this.results) {\n links.push(...this.results.getInitialChildModelLinks());\n }\n if (this.givenAnswers) {\n links.push(...this.givenAnswers.getInitialChildModelLinks());\n }\n }\n\n return links;\n }\n\n /**\n */\n setChildModels(models: Array<ModularUIModel>, errors: Array<ErrorResponse>) {\n this._attributeCollection.setChildModels(models, errors);\n\n if (this.results) {\n this.results.setChildModels(models, errors);\n }\n\n if (this.givenAnswers) {\n this.givenAnswers.setChildModels(models, errors);\n }\n }\n\n /**\n */\n get type(): string {\n return \"ListDetail\";\n }\n\n /**\n */\n static get modelName(): string {\n return \"ListDetailModel\";\n }\n\n /**\n */\n static isApplicableModel(data: ModularUIResponse): boolean {\n const resourcetype = data.contributions?.resourcetype ?? \"unknown\";\n\n return (\n resourcetype.endsWith(\"ListPanelDetail\") ||\n resourcetype.endsWith(\"ListDetail\") ||\n resourcetype === \"DatastoreRelatedDatastorePanelDetail\" ||\n resourcetype === \"CaseRelatedDataStorePanelDetail\"\n );\n }\n\n /**\n * Set listitem of this listdetail and transfer listitem actions to listdetail actions\n */\n set listitem(listitem: ListItemModel) {\n this._listitem = listitem;\n\n // transfer listitem actions to _actions\n this._actionCollection = listitem.actionCollection;\n }\n\n /**\n * Get listitem\n */\n get listitem(): ListItemModel {\n return this._listitem;\n }\n\n /**\n * Getting panel links\n */\n get panelLinks(): LinkCollection {\n return this.listitem.links.getLinksByGroup(\"panel\");\n }\n\n /**\n * Getting the contentConfiguration\n */\n get contentConfiguration(): ContentConfiguration {\n return this._contentConfiguration;\n }\n\n /**\n */\n set contentConfiguration(configuration: ContentConfiguration) {\n this._contentConfiguration = configuration;\n }\n\n /**\n * Getting the introduction text configured on the case view\n */\n get introtext(): string {\n if (this.data._content) {\n return this.data._content.text.message;\n }\n\n if (this.contributions.text) {\n return this.contributions.text.message ?? this.contributions.text;\n }\n\n if (Array.isArray(this.contributions.texts)) {\n return this.contributions.texts[0].text;\n }\n\n return \"\";\n }\n\n /**\n */\n setResultSection() {\n if (\n has(this.contributions, \"resultSection\") &&\n has(this.data, \"resultSection\")\n ) {\n this.setResults();\n this.setGivenAnswers();\n }\n }\n\n /**\n */\n setResults() {\n if (\n has(this.data, \"resultSection.results\") &&\n has(this.contributions, \"resultSection.results\")\n ) {\n const resultsData = this.data.resultSection.results;\n const resultsContributions = this.contributions.resultSection.results;\n if (resultsContributions.type === \"composite\") {\n resultsContributions.children = resultsContributions.children.filter(\n (child) => {\n const childKey = Object.keys(child)[0];\n return childKey in resultsData;\n },\n );\n }\n\n const results = createAttribute(\n \"results\",\n {\n key: \"results\",\n dynamicschema: this.data.dynamicschema,\n content: this.data.content?.results,\n ...this.data.resultSection,\n },\n resultsContributions,\n );\n\n if (results instanceof CompositeAttributeModel) {\n results.isResult = true;\n results.indicateContentConfiguration(this.contentConfiguration);\n this._results = results;\n }\n }\n }\n\n /**\n */\n setGivenAnswers() {\n if (\n has(this.data, \"resultSection.givenAnswers\") &&\n has(this.contributions, \"resultSection.givenAnswers\")\n ) {\n const givenAnswersData = this.data.resultSection.givenAnswers;\n const givenAnswersContributions =\n this.contributions.resultSection.givenAnswers;\n\n const filteredContributions = {\n ...givenAnswersContributions,\n children: givenAnswersContributions.children.filter((child) => {\n const childKey = Object.keys(child)[0];\n return childKey in givenAnswersData;\n }),\n };\n\n const givenAnswers = createAttribute(\n \"givenAnswers\",\n {\n key: \"givenAnswers\",\n dynamicschema: this.data.dynamicschema,\n content: this.data.content?.givenAnswers,\n ...this.data.resultSection,\n },\n filteredContributions,\n );\n\n if (givenAnswers instanceof CompositeAttributeModel) {\n givenAnswers.isResult = true;\n this._givenAnswers = givenAnswers;\n }\n }\n }\n\n /**\n */\n get givenAnswers(): ?CompositeAttributeModel {\n return this._givenAnswers;\n }\n\n /**\n */\n get hasResults(): boolean {\n return has(this.contributions, \"resultSection\");\n }\n\n /**\n */\n get results(): ?CompositeAttributeModel {\n return this._results;\n }\n\n /**\n */\n get hasEventData(): boolean {\n return (\n has(this.contributions, \"eventdata\") &&\n has(this.data, \"eventdata\") &&\n this.data.eventdata != null &&\n this.contributions.eventdata != null\n );\n }\n\n /**\n */\n addAttributes(key: string, eventData: Object, eventContributions: Object) {\n this._eventdata.push(\n new AttributeSetModel(\n key,\n eventData,\n eventContributions,\n this.modelOptions,\n ),\n );\n }\n\n /**\n */\n setEventData() {\n if (this.hasEventData) {\n this._eventdata = [];\n\n this.contributions.eventdata.forEach((eventDataContribution) => {\n const [key] = Object.keys(eventDataContribution);\n if (key in this.data.eventdata) {\n if (Array.isArray(this.data.eventdata[key])) {\n this.data.eventdata[key].forEach((eventDataData, i) => {\n this.addAttributes(\n `${key}-${i + 1}`,\n {\n ...eventDataData,\n dynamicschema: this.data.dynamicschema,\n },\n eventDataContribution[key],\n );\n });\n } else {\n this.addAttributes(\n key,\n {\n ...this.data.eventdata[key],\n dynamicschema: this.data.dynamicschema,\n },\n eventDataContribution[key],\n );\n }\n }\n });\n }\n }\n\n /**\n */\n get eventdata(): Array<AttributeSetModel> {\n return this._eventdata;\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -32,7 +32,7 @@ class ListItemCollection extends _BaseCollection.default {
|
|
|
32
32
|
const listitemData = resultItem[key];
|
|
33
33
|
listitemData.dynamicschema = dynamicschema;
|
|
34
34
|
const listitemContributions = list.contributions.results[key];
|
|
35
|
-
return _ListItemModel.default.createFromListResult(key, listitemData, listitemContributions, list.
|
|
35
|
+
return _ListItemModel.default.createFromListResult(key, listitemData, listitemContributions, list.modelOptions);
|
|
36
36
|
});
|
|
37
37
|
return new ListItemCollection(collection);
|
|
38
38
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ListItemCollection.js","names":["_BaseCollection","_interopRequireDefault","require","_ActionCollection","_ListItemModel","_ConfigurationException","ListItemCollection","BaseCollection","createFromList","list","_embedded","getData","_context","Array","isArray","ConfigurationException","key","dynamicschema","collection","_map","default","results","call","resultItem","_keys","listitemData","listitemContributions","contributions","ListItemModel","createFromListResult","
|
|
1
|
+
{"version":3,"file":"ListItemCollection.js","names":["_BaseCollection","_interopRequireDefault","require","_ActionCollection","_ListItemModel","_ConfigurationException","ListItemCollection","BaseCollection","createFromList","list","_embedded","getData","_context","Array","isArray","ConfigurationException","key","dynamicschema","collection","_map","default","results","call","resultItem","_keys","listitemData","listitemContributions","contributions","ListItemModel","createFromListResult","modelOptions","additionalDetailRoutePath","_context2","isEmpty","allRoutes","all","listItem","join","_includes","actionCollection","actions","ActionCollection","forEach","push","_default","exports"],"sources":["../../../src/models/list/ListItemCollection.js"],"sourcesContent":["// @flow\nimport BaseCollection from \"../base/BaseCollection\";\nimport ActionCollection from \"../actions/ActionCollection\";\nimport ListItemModel from \"../list/ListItemModel\";\n\nimport ConfigurationException from \"../../exceptions/ConfigurationException\";\n\nimport type ListModel from \"../list/ListModel\";\n\n/**\n * Collection of list items\n */\nclass ListItemCollection extends BaseCollection<ListItemModel> {\n /**\n * Create a list item collection from the given list\n */\n static createFromList(list: ListModel): ListItemCollection {\n const _embedded = list.getData(\"_embedded\");\n if (_embedded != null) {\n if (Array.isArray(_embedded)) {\n throw new ConfigurationException(\n `One record panel with multiple tables is not supported, place all types in one panel for the panel with key ${list.key}`,\n );\n }\n\n const dynamicschema = list.getData(\"dynamicschema\");\n\n const collection = _embedded.results.map((resultItem) => {\n const [key] = Object.keys(resultItem);\n const listitemData = resultItem[key];\n listitemData.dynamicschema = dynamicschema;\n\n const listitemContributions = list.contributions.results[key];\n\n return ListItemModel.createFromListResult(\n key,\n listitemData,\n listitemContributions,\n list.modelOptions,\n );\n });\n\n return new ListItemCollection(collection);\n }\n\n return new ListItemCollection();\n }\n\n /**\n */\n get additionalDetailRoutePath(): string {\n if (this.isEmpty) {\n return \"__NON_EXISTING_ROUTE__\";\n }\n\n const allRoutes = this.all\n .map((listItem) => listItem.additionalDetailRoutePath)\n .join(\"|\");\n\n if (allRoutes.includes(\"|\")) {\n return `(${allRoutes})`;\n }\n\n return allRoutes;\n }\n\n /**\n */\n get actionCollection(): ActionCollection {\n const actions = new ActionCollection();\n\n this.all.forEach((listItem) => {\n actions.collection.push(...listItem.actionCollection.all);\n });\n\n return actions;\n }\n}\n\nexport default ListItemCollection;\n"],"mappings":";;;;;;;;;;AACA,IAAAA,eAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,iBAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,cAAA,GAAAH,sBAAA,CAAAC,OAAA;AAEA,IAAAG,uBAAA,GAAAJ,sBAAA,CAAAC,OAAA;AAIA;AACA;AACA;AACA,MAAMI,kBAAkB,SAASC,uBAAc,CAAgB;EAC7D;AACF;AACA;EACE,OAAOC,cAAcA,CAACC,IAAe,EAAsB;IACzD,MAAMC,SAAS,GAAGD,IAAI,CAACE,OAAO,CAAC,WAAW,CAAC;IAC3C,IAAID,SAAS,IAAI,IAAI,EAAE;MAAA,IAAAE,QAAA;MACrB,IAAIC,KAAK,CAACC,OAAO,CAACJ,SAAS,CAAC,EAAE;QAC5B,MAAM,IAAIK,+BAAsB,CAC9B,+GAA+GN,IAAI,CAACO,GAAG,EACzH,CAAC;MACH;MAEA,MAAMC,aAAa,GAAGR,IAAI,CAACE,OAAO,CAAC,eAAe,CAAC;MAEnD,MAAMO,UAAU,GAAG,IAAAC,IAAA,CAAAC,OAAA,EAAAR,QAAA,GAAAF,SAAS,CAACW,OAAO,EAAAC,IAAA,CAAAV,QAAA,EAAMW,UAAU,IAAK;QACvD,MAAM,CAACP,GAAG,CAAC,GAAG,IAAAQ,KAAA,CAAAJ,OAAA,EAAYG,UAAU,CAAC;QACrC,MAAME,YAAY,GAAGF,UAAU,CAACP,GAAG,CAAC;QACpCS,YAAY,CAACR,aAAa,GAAGA,aAAa;QAE1C,MAAMS,qBAAqB,GAAGjB,IAAI,CAACkB,aAAa,CAACN,OAAO,CAACL,GAAG,CAAC;QAE7D,OAAOY,sBAAa,CAACC,oBAAoB,CACvCb,GAAG,EACHS,YAAY,EACZC,qBAAqB,EACrBjB,IAAI,CAACqB,YACP,CAAC;MACH,CAAC,CAAC;MAEF,OAAO,IAAIxB,kBAAkB,CAACY,UAAU,CAAC;IAC3C;IAEA,OAAO,IAAIZ,kBAAkB,CAAC,CAAC;EACjC;;EAEA;AACF;EACE,IAAIyB,yBAAyBA,CAAA,EAAW;IAAA,IAAAC,SAAA;IACtC,IAAI,IAAI,CAACC,OAAO,EAAE;MAChB,OAAO,wBAAwB;IACjC;IAEA,MAAMC,SAAS,GAAG,IAAAf,IAAA,CAAAC,OAAA,EAAAY,SAAA,OAAI,CAACG,GAAG,EAAAb,IAAA,CAAAU,SAAA,EAClBI,QAAQ,IAAKA,QAAQ,CAACL,yBAAyB,CAAC,CACrDM,IAAI,CAAC,GAAG,CAAC;IAEZ,IAAI,IAAAC,SAAA,CAAAlB,OAAA,EAAAc,SAAS,EAAAZ,IAAA,CAATY,SAAS,EAAU,GAAG,CAAC,EAAE;MAC3B,OAAO,IAAIA,SAAS,GAAG;IACzB;IAEA,OAAOA,SAAS;EAClB;;EAEA;AACF;EACE,IAAIK,gBAAgBA,CAAA,EAAqB;IACvC,MAAMC,OAAO,GAAG,IAAIC,yBAAgB,CAAC,CAAC;IAEtC,IAAI,CAACN,GAAG,CAACO,OAAO,CAAEN,QAAQ,IAAK;MAC7BI,OAAO,CAACtB,UAAU,CAACyB,IAAI,CAAC,GAAGP,QAAQ,CAACG,gBAAgB,CAACJ,GAAG,CAAC;IAC3D,CAAC,CAAC;IAEF,OAAOK,OAAO;EAChB;AACF;AAAC,IAAAI,QAAA,GAAAC,OAAA,CAAAzB,OAAA,GAEcd,kBAAkB","ignoreList":[]}
|
|
@@ -16,13 +16,13 @@ var _LayoutHints = require("../../constants/LayoutHints");
|
|
|
16
16
|
class ListItemModel extends _DetailModel.default {
|
|
17
17
|
/**
|
|
18
18
|
*/
|
|
19
|
-
static createFromListResult(key, data, contributions,
|
|
19
|
+
static createFromListResult(key, data, contributions, modelOptions) {
|
|
20
20
|
const listitemInput = new _ModularUIResponse.default();
|
|
21
21
|
listitemInput.key = key;
|
|
22
22
|
listitemInput.data = data;
|
|
23
23
|
listitemInput.contributions = contributions;
|
|
24
|
-
listitemInput.origin = origin;
|
|
25
|
-
listitemInput.contextPath = contextPath;
|
|
24
|
+
listitemInput.origin = modelOptions?.origin;
|
|
25
|
+
listitemInput.contextPath = modelOptions?.contextPath;
|
|
26
26
|
return new ListItemModel(listitemInput);
|
|
27
27
|
}
|
|
28
28
|
|
|
@@ -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
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ListItemModel.js","names":["_DetailModel","_interopRequireDefault","require","_Href","_ModularUIResponse","_LayoutHints","ListItemModel","DetailModel","createFromListResult","key","data","contributions","
|
|
1
|
+
{"version":3,"file":"ListItemModel.js","names":["_DetailModel","_interopRequireDefault","require","_Href","_ModularUIResponse","_LayoutHints","ListItemModel","DetailModel","createFromListResult","key","data","contributions","modelOptions","listitemInput","ModularUIResponse","origin","contextPath","createFromChoiceAttributeOption","option","code","item","attributeCollection","selfhref","selflink","links","getLinkByKey","Href","href","caseviewHref","caseviewLinkAttribute","getAttributeByLayoutHint","CASEVIEW_LINK","caseviewLinkKey","name","caseviewLink","panelLinks","getLinksByGroup","hasPanelLinks","length","getActionsByType","actionType","actionCollection","additionalDetailRoutePath","additionalDetailLinks","_map","default","call","link","path","join","exports"],"sources":["../../../src/models/list/ListItemModel.js"],"sourcesContent":["// @flow\nimport DetailModel from \"../detail/DetailModel\";\nimport Href from \"../href/Href\";\n\nimport ModularUIResponse from \"../../modularui/ModularUIResponse\";\n\nimport { CASEVIEW_LINK } from \"../../constants/LayoutHints\";\n\nimport type ChoiceAttributeOptionModel from \"../attributes/ChoiceAttributeOptionModel\";\nimport type ActionCollection from \"../actions/ActionCollection\";\nimport type LinkCollection from \"../links/LinkCollection\";\nimport type { ModelOptions } from \"../types\";\n\n/**\n * List Item\n */\nexport default class ListItemModel extends DetailModel {\n /**\n */\n static createFromListResult(\n key: string,\n data: Object,\n contributions: Object,\n modelOptions?: ModelOptions,\n ): ListItemModel {\n const listitemInput = new ModularUIResponse();\n listitemInput.key = key;\n listitemInput.data = data;\n listitemInput.contributions = contributions;\n listitemInput.origin = modelOptions?.origin;\n listitemInput.contextPath = modelOptions?.contextPath;\n\n return new ListItemModel(listitemInput);\n }\n\n /**\n */\n static createFromChoiceAttributeOption(\n option: ChoiceAttributeOptionModel,\n ): ListItemModel {\n const listitemInput = new ModularUIResponse();\n listitemInput.key = option.code;\n\n const item = new ListItemModel(listitemInput);\n item.attributeCollection = option.attributeCollection;\n\n return item;\n }\n\n /**\n */\n get selfhref(): Href {\n const selflink = this.links.getLinkByKey(\"self\");\n\n if (selflink === null) {\n return new Href(\"#\");\n }\n\n return selflink.href;\n }\n\n /**\n */\n get caseviewHref(): Href {\n const caseviewLinkAttribute =\n this.attributeCollection.getAttributeByLayoutHint(CASEVIEW_LINK);\n if (caseviewLinkAttribute) {\n const caseviewLinkKey = caseviewLinkAttribute.name;\n const caseviewLink = this.links.getLinkByKey(caseviewLinkKey);\n\n if (caseviewLink) {\n return caseviewLink.href;\n }\n }\n\n return this.selfhref;\n }\n\n /**\n * Getting panel links\n */\n get panelLinks(): LinkCollection {\n return this.links.getLinksByGroup(\"panel\");\n }\n\n /**\n * Check if list item has panel links\n */\n hasPanelLinks(): boolean {\n return this.panelLinks.length > -1;\n }\n\n /**\n * Retrieve all actions by type\n */\n getActionsByType(actionType: string): ActionCollection {\n return this.actionCollection.getActionsByType(actionType);\n }\n\n /**\n */\n get additionalDetailRoutePath(): string {\n const additionalDetailLinks = this.panelLinks;\n\n if (additionalDetailLinks.length === 0) {\n return \"__NON_EXISTING_ROUTE__\";\n }\n\n return additionalDetailLinks.map((link) => link.href.path).join(\"|\");\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -160,7 +160,7 @@ class ListModel extends _ResourceModel.default {
|
|
|
160
160
|
return new _GroupingModel.default({
|
|
161
161
|
...this.data.grouping,
|
|
162
162
|
dynamicschema: this.data.dynamicschema
|
|
163
|
-
}, this.contributions.contexts);
|
|
163
|
+
}, this.contributions.contexts, this.modelOptions);
|
|
164
164
|
}
|
|
165
165
|
|
|
166
166
|
/**
|
|
@@ -256,7 +256,7 @@ class ListModel extends _ResourceModel.default {
|
|
|
256
256
|
filter: (0, _filter.default)(this.contributions),
|
|
257
257
|
contexts: this.contributions.contexts,
|
|
258
258
|
dynamicschema: this.data.dynamicschema
|
|
259
|
-
});
|
|
259
|
+
}, this.modelOptions);
|
|
260
260
|
}
|
|
261
261
|
|
|
262
262
|
/**
|
|
@@ -279,7 +279,7 @@ class ListModel extends _ResourceModel.default {
|
|
|
279
279
|
/**
|
|
280
280
|
*/
|
|
281
281
|
setActionCollection() {
|
|
282
|
-
return new _ActionCollection.default(this.data.actions, this.contributions.actions, this.
|
|
282
|
+
return new _ActionCollection.default(this.data.actions, this.contributions.actions, this.modelOptions);
|
|
283
283
|
}
|
|
284
284
|
|
|
285
285
|
/**
|
|
@@ -180,6 +180,7 @@ export default class ListModel extends ResourceModel {
|
|
|
180
180
|
return new GroupingModel(
|
|
181
181
|
{ ...this.data.grouping, dynamicschema: this.data.dynamicschema },
|
|
182
182
|
this.contributions.contexts,
|
|
183
|
+
this.modelOptions,
|
|
183
184
|
);
|
|
184
185
|
}
|
|
185
186
|
|
|
@@ -285,12 +286,16 @@ export default class ListModel extends ResourceModel {
|
|
|
285
286
|
/**
|
|
286
287
|
*/
|
|
287
288
|
setFilters(): FilterCollection {
|
|
288
|
-
return new FilterCollection(
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
289
|
+
return new FilterCollection(
|
|
290
|
+
this.data.filter,
|
|
291
|
+
{
|
|
292
|
+
listkey: this.key,
|
|
293
|
+
filter: this.contributions.filter,
|
|
294
|
+
contexts: this.contributions.contexts,
|
|
295
|
+
dynamicschema: this.data.dynamicschema,
|
|
296
|
+
},
|
|
297
|
+
this.modelOptions,
|
|
298
|
+
);
|
|
294
299
|
}
|
|
295
300
|
|
|
296
301
|
/**
|
|
@@ -316,8 +321,7 @@ export default class ListModel extends ResourceModel {
|
|
|
316
321
|
return new ActionCollection(
|
|
317
322
|
this.data.actions,
|
|
318
323
|
this.contributions.actions,
|
|
319
|
-
this.
|
|
320
|
-
this.contextPath,
|
|
324
|
+
this.modelOptions,
|
|
321
325
|
);
|
|
322
326
|
}
|
|
323
327
|
|