@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 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ContentLinkModel.js","names":["_BaseModel","_interopRequireDefault","require","_Href","_LinkModel","_ContentTypeModel","_Constants","_LinkCollection","_constants","ContentLinkModel","BaseModel","constructor","data","entryDate","arguments","length","undefined","origin","contextPath","_defineProperty2","default","getBasePath","_entryDate","_origin","_contextPath","getInitialChildModelLinks","contentTypeLink","isCacheable","setChildModels","models","href","contentTypeModel","_find","call","model","selfhref","equalsWithParameters","type","contentType","_contentType","ContentTypeModel","key","getData","label","sourceLabel","createEncodedHref","startURI","selfHref","Href","_links","self","path","section","sourceId","substring","lastIndexOf","encodeURIComponent","encodedHref","addParameter","TIMEVERSION_FILTER_NAME","links","LinkCollection","Array","isArray","selflink","getLinkByKey","Error","subSectionID","hash","contentTypeHref","items","_items","exports"],"sources":["../../../src/models/content/ContentLinkModel.js"],"sourcesContent":["// @flow\nimport BaseModel from \"../base/BaseModel\";\nimport Href from \"../href/Href\";\nimport LinkModel from \"../links/LinkModel\";\nimport ContentTypeModel from \"./ContentTypeModel\";\nimport { TIMEVERSION_FILTER_NAME } from \"../../constants/Constants\";\n\nimport LinkCollection from \"../links/LinkCollection\";\n\nimport type { ModularUIModel, IModelWithChildModels } from \"../types\";\nimport { getBasePath } from \"../../constants\";\n\n/**\n * Link to a concept\n */\nexport default class ContentLinkModel\n extends BaseModel\n implements IModelWithChildModels\n{\n _links: ?LinkCollection;\n _entryDate: ?ISO_DATE;\n _contentType: ContentTypeModel | null = null;\n _items: Array<ContentLinkModel>;\n _origin: string = \"\";\n _contextPath: string = getBasePath();\n\n /**\n */\n constructor(\n data: Object,\n entryDate: ?ISO_DATE = null,\n origin?: string,\n contextPath?: string,\n ) {\n super(data, {});\n\n this._entryDate = entryDate;\n this._origin = origin || \"\";\n this._contextPath = contextPath || getBasePath();\n }\n\n /**\n */\n // $FlowFixMe[method-unbinding]\n getInitialChildModelLinks(): Array<LinkModel> {\n if (this.contentTypeLink) {\n this.contentTypeLink.isCacheable = true;\n return [this.contentTypeLink];\n }\n\n return [];\n }\n\n /**\n */\n // $FlowFixMe[method-unbinding]\n setChildModels(models: Array<ModularUIModel>) {\n if (this.contentTypeLink) {\n const href = this.contentTypeLink.href;\n const contentTypeModel = models.find((model) =>\n model.selfhref.equalsWithParameters(href),\n );\n\n if (contentTypeModel?.type === \"ContentType\") {\n this.contentType = contentTypeModel;\n }\n }\n }\n\n /**\n * Retrieve content type\n */\n get contentType(): ?ContentTypeModel | null {\n return this._contentType;\n }\n\n /**\n * Set concept type\n */\n set contentType(contentType: ?ModularUIModel) {\n this._contentType =\n contentType instanceof ContentTypeModel ? contentType : null;\n }\n\n /**\n */\n set entryDate(entryDate: ISO_DATE) {\n this._entryDate = entryDate;\n }\n\n /**\n * Retrieve key\n */\n get key(): string {\n return this.getData(\"_id\", \"\");\n }\n\n /**\n * Retrieve label\n */\n get label(): string {\n return this.getData(\"label\", \"\");\n }\n\n /**\n * Retrieve the label of the source a link to a section belongs to\n */\n get sourceLabel(): string | null {\n return this.getData(\"sourceLabel\");\n }\n\n /**\n */\n createEncodedHref(): Href {\n const startURI = \"/content/\";\n const selfHref = new Href(\n this.data._links.self.href,\n this._origin,\n this._contextPath,\n );\n const href = selfHref.path;\n\n const section = this.data.section;\n const sourceId = section\n ? href.substring(startURI.length, href.lastIndexOf(\"/\"))\n : href.substring(startURI.length);\n\n if (section) {\n selfHref.path = `${startURI}${encodeURIComponent(sourceId)}/${encodeURIComponent(section)}`;\n } else {\n selfHref.path = `${startURI}${encodeURIComponent(sourceId)}`;\n }\n\n return selfHref;\n }\n\n /**\n * Encode the content-identifier of the path to the content resource.\n * This makes it a single uri part, which can be used on routes to make nested routes\n */\n get encodedHref(): Href {\n const href = this.createEncodedHref();\n\n if (this._entryDate !== null) {\n return href.addParameter(TIMEVERSION_FILTER_NAME, this._entryDate);\n }\n\n return href;\n }\n\n /**\n * Getting the links of the resource\n */\n get links(): LinkCollection {\n if (!this._links) {\n this._links = new LinkCollection(\n Array.isArray(this.data._links)\n ? this.data._links[0]\n : this.data._links,\n null,\n this._origin,\n this._contextPath,\n );\n }\n\n return this._links;\n }\n\n /**\n * Get self link of model\n */\n get selflink(): LinkModel {\n const selflink = this.links.getLinkByKey(\"self\");\n\n if (selflink === null) {\n throw new Error(\n `Could not find self link for ${\n this.key === null ? \"unknown\" : this.key\n }`,\n );\n }\n\n return selflink;\n }\n\n /**\n * Self href of concept\n */\n get selfhref(): Href {\n if (this._entryDate !== null) {\n return this.selflink.href.addParameter(\n TIMEVERSION_FILTER_NAME,\n this._entryDate,\n );\n }\n\n return this.selflink.href;\n }\n\n /**\n */\n get subSectionID(): string {\n return this.selfhref.hash;\n }\n\n /**\n */\n get contentTypeLink(): LinkModel | null {\n return this.links.getLinkByKey(\"contenttype\");\n }\n\n /**\n * Concept type href of concept\n */\n get contentTypeHref(): Href | null {\n if (this.contentTypeLink) {\n return this.contentTypeLink.href;\n }\n\n return null;\n }\n\n /**\n * Children of link model in TOC\n */\n set items(items: Array<ContentLinkModel>) {\n this._items = items;\n }\n\n /**\n */\n get items(): Array<ContentLinkModel> {\n return this._items;\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"ContentLinkModel.js","names":["_BaseModel","_interopRequireDefault","require","_Href","_LinkModel","_ContentTypeModel","_Constants","_LinkCollection","ContentLinkModel","BaseModel","constructor","data","entryDate","arguments","length","undefined","modelOptions","_defineProperty2","default","_entryDate","getInitialChildModelLinks","contentTypeLink","isCacheable","setChildModels","models","href","contentTypeModel","_find","call","model","selfhref","equalsWithParameters","type","contentType","_contentType","ContentTypeModel","key","getData","label","sourceLabel","createEncodedHref","startURI","selfHref","Href","_links","self","path","section","sourceId","substring","lastIndexOf","encodeURIComponent","encodedHref","addParameter","TIMEVERSION_FILTER_NAME","links","LinkCollection","Array","isArray","selflink","getLinkByKey","Error","subSectionID","hash","contentTypeHref","items","_items","exports"],"sources":["../../../src/models/content/ContentLinkModel.js"],"sourcesContent":["// @flow\nimport BaseModel from \"../base/BaseModel\";\nimport Href from \"../href/Href\";\nimport LinkModel from \"../links/LinkModel\";\nimport ContentTypeModel from \"./ContentTypeModel\";\nimport { TIMEVERSION_FILTER_NAME } from \"../../constants/Constants\";\n\nimport LinkCollection from \"../links/LinkCollection\";\n\nimport type {\n ModularUIModel,\n IModelWithChildModels,\n ModelOptions,\n} from \"../types\";\n\n/**\n * Link to a concept\n */\nexport default class ContentLinkModel\n extends BaseModel\n implements IModelWithChildModels\n{\n _links: ?LinkCollection;\n _entryDate: ?ISO_DATE;\n _contentType: ContentTypeModel | null = null;\n _items: Array<ContentLinkModel>;\n\n /**\n */\n constructor(\n data: Object,\n entryDate: ?ISO_DATE = null,\n modelOptions?: ModelOptions,\n ) {\n super(data, {}, modelOptions);\n\n this._entryDate = entryDate;\n }\n\n /**\n */\n // $FlowFixMe[method-unbinding]\n getInitialChildModelLinks(): Array<LinkModel> {\n if (this.contentTypeLink) {\n this.contentTypeLink.isCacheable = true;\n return [this.contentTypeLink];\n }\n\n return [];\n }\n\n /**\n */\n // $FlowFixMe[method-unbinding]\n setChildModels(models: Array<ModularUIModel>) {\n if (this.contentTypeLink) {\n const href = this.contentTypeLink.href;\n const contentTypeModel = models.find((model) =>\n model.selfhref.equalsWithParameters(href),\n );\n\n if (contentTypeModel?.type === \"ContentType\") {\n this.contentType = contentTypeModel;\n }\n }\n }\n\n /**\n * Retrieve content type\n */\n get contentType(): ?ContentTypeModel | null {\n return this._contentType;\n }\n\n /**\n * Set concept type\n */\n set contentType(contentType: ?ModularUIModel) {\n this._contentType =\n contentType instanceof ContentTypeModel ? contentType : null;\n }\n\n /**\n */\n set entryDate(entryDate: ISO_DATE) {\n this._entryDate = entryDate;\n }\n\n /**\n * Retrieve key\n */\n get key(): string {\n return this.getData(\"_id\", \"\");\n }\n\n /**\n * Retrieve label\n */\n get label(): string {\n return this.getData(\"label\", \"\");\n }\n\n /**\n * Retrieve the label of the source a link to a section belongs to\n */\n get sourceLabel(): string | null {\n return this.getData(\"sourceLabel\");\n }\n\n /**\n */\n createEncodedHref(): Href {\n const startURI = \"/content/\";\n const selfHref = new Href(\n this.data._links.self.href,\n \"\",\n this.modelOptions,\n );\n const href = selfHref.path;\n\n const section = this.data.section;\n const sourceId = section\n ? href.substring(startURI.length, href.lastIndexOf(\"/\"))\n : href.substring(startURI.length);\n\n if (section) {\n selfHref.path = `${startURI}${encodeURIComponent(sourceId)}/${encodeURIComponent(section)}`;\n } else {\n selfHref.path = `${startURI}${encodeURIComponent(sourceId)}`;\n }\n\n return selfHref;\n }\n\n /**\n * Encode the content-identifier of the path to the content resource.\n * This makes it a single uri part, which can be used on routes to make nested routes\n */\n get encodedHref(): Href {\n const href = this.createEncodedHref();\n\n if (this._entryDate !== null) {\n return href.addParameter(TIMEVERSION_FILTER_NAME, this._entryDate);\n }\n\n return href;\n }\n\n /**\n * Getting the links of the resource\n */\n get links(): LinkCollection {\n if (!this._links) {\n this._links = new LinkCollection(\n Array.isArray(this.data._links)\n ? this.data._links[0]\n : this.data._links,\n null,\n this.modelOptions,\n );\n }\n\n return this._links;\n }\n\n /**\n * Get self link of model\n */\n get selflink(): LinkModel {\n const selflink = this.links.getLinkByKey(\"self\");\n\n if (selflink === null) {\n throw new Error(\n `Could not find self link for ${\n this.key === null ? \"unknown\" : this.key\n }`,\n );\n }\n\n return selflink;\n }\n\n /**\n * Self href of concept\n */\n get selfhref(): Href {\n if (this._entryDate !== null) {\n return this.selflink.href.addParameter(\n TIMEVERSION_FILTER_NAME,\n this._entryDate,\n );\n }\n\n return this.selflink.href;\n }\n\n /**\n */\n get subSectionID(): string {\n return this.selfhref.hash;\n }\n\n /**\n */\n get contentTypeLink(): LinkModel | null {\n return this.links.getLinkByKey(\"contenttype\");\n }\n\n /**\n * Concept type href of concept\n */\n get contentTypeHref(): Href | null {\n if (this.contentTypeLink) {\n return this.contentTypeLink.href;\n }\n\n return null;\n }\n\n /**\n * Children of link model in TOC\n */\n set items(items: Array<ContentLinkModel>) {\n this._items = items;\n }\n\n /**\n */\n get items(): Array<ContentLinkModel> {\n return this._items;\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -25,7 +25,7 @@ class ContentModel extends _ResourceModel.default {
|
|
|
25
25
|
(0, _defineProperty2.default)(this, "_section", void 0);
|
|
26
26
|
(0, _defineProperty2.default)(this, "_contentType", null);
|
|
27
27
|
(0, _defineProperty2.default)(this, "_filterCollection", void 0);
|
|
28
|
-
this._section = new _SectionModel.default(this.data, this.entryDate);
|
|
28
|
+
this._section = new _SectionModel.default(this.data, this.entryDate, this.modelOptions);
|
|
29
29
|
}
|
|
30
30
|
|
|
31
31
|
/**
|
|
@@ -83,7 +83,7 @@ class ContentModel extends _ResourceModel.default {
|
|
|
83
83
|
entryDate: (0, _filter.default)(this.data).entryDate
|
|
84
84
|
}, {
|
|
85
85
|
filter: (0, _filter.default)(this.contributions)
|
|
86
|
-
});
|
|
86
|
+
}, this.modelOptions);
|
|
87
87
|
}
|
|
88
88
|
return this._filterCollection;
|
|
89
89
|
}
|
|
@@ -26,7 +26,11 @@ export default class ContentModel extends ResourceModel {
|
|
|
26
26
|
constructor(response: ModularUIResponse) {
|
|
27
27
|
super(response);
|
|
28
28
|
|
|
29
|
-
this._section = new SectionModel(
|
|
29
|
+
this._section = new SectionModel(
|
|
30
|
+
this.data,
|
|
31
|
+
this.entryDate,
|
|
32
|
+
this.modelOptions,
|
|
33
|
+
);
|
|
30
34
|
}
|
|
31
35
|
|
|
32
36
|
/**
|
|
@@ -92,6 +96,7 @@ export default class ContentModel extends ResourceModel {
|
|
|
92
96
|
{
|
|
93
97
|
filter: this.contributions.filter,
|
|
94
98
|
},
|
|
99
|
+
this.modelOptions,
|
|
95
100
|
);
|
|
96
101
|
}
|
|
97
102
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ContentModel.js","names":["_ModularUIResponse","_interopRequireDefault","require","_ResourceModel","_FilterCollection","_ContentLinkModel","_SubSectionModel","_ContentTypeModel","_Constants","_SectionModel","ContentModel","ResourceModel","constructor","response","_defineProperty2","default","_section","SectionModel","data","entryDate","type","modelName","isApplicableModel","contributions","resourcetype","getInitialChildModelLinks","contentTypeLink","links","getLinkByKey","setChildModels","models","contentType","_find","call","model","section","id","_id","filterCollection","_filterCollection","_filter","FilterCollection","filter","entryDateFilter","getFilterByAttributeKey","TIMEVERSION_FILTER_NAME","attribute","value","_contentType","ContentTypeModel","label","number","body","childSectionLinks","selfContentLink","childSections","sections","subSections","relatedConceptsHrefs","hrefs","relatedConceptsHref","push","forEach","subSection","relatedConceptsLink","href","addParameter","setReferenceHash","referenceHash","exports"],"sources":["../../../src/models/content/ContentModel.js"],"sourcesContent":["// @flow\nimport ModularUIResponse from \"../../modularui/ModularUIResponse\";\n\nimport ResourceModel from \"../base/ResourceModel\";\nimport FilterCollection from \"../filters/FilterCollection\";\nimport ContentLinkModel from \"./ContentLinkModel\";\nimport SubSectionModel from \"./SubSectionModel\";\n\nimport ContentTypeModel from \"./ContentTypeModel\";\n\nimport { TIMEVERSION_FILTER_NAME } from \"../../constants/Constants\";\n\nimport type { ModularUIModel } from \"../types\";\nimport type LinkModel from \"../links/LinkModel\";\nimport type Href from \"../href/Href\";\nimport SectionModel from \"./SectionModel\";\n\n/**\n * Content detail model\n */\nexport default class ContentModel extends ResourceModel {\n _section: SectionModel;\n _contentType: ContentTypeModel | null = null;\n _filterCollection: FilterCollection;\n\n constructor(response: ModularUIResponse) {\n super(response);\n\n this._section = new SectionModel(this.data
|
|
1
|
+
{"version":3,"file":"ContentModel.js","names":["_ModularUIResponse","_interopRequireDefault","require","_ResourceModel","_FilterCollection","_ContentLinkModel","_SubSectionModel","_ContentTypeModel","_Constants","_SectionModel","ContentModel","ResourceModel","constructor","response","_defineProperty2","default","_section","SectionModel","data","entryDate","modelOptions","type","modelName","isApplicableModel","contributions","resourcetype","getInitialChildModelLinks","contentTypeLink","links","getLinkByKey","setChildModels","models","contentType","_find","call","model","section","id","_id","filterCollection","_filterCollection","_filter","FilterCollection","filter","entryDateFilter","getFilterByAttributeKey","TIMEVERSION_FILTER_NAME","attribute","value","_contentType","ContentTypeModel","label","number","body","childSectionLinks","selfContentLink","childSections","sections","subSections","relatedConceptsHrefs","hrefs","relatedConceptsHref","push","forEach","subSection","relatedConceptsLink","href","addParameter","setReferenceHash","referenceHash","exports"],"sources":["../../../src/models/content/ContentModel.js"],"sourcesContent":["// @flow\nimport ModularUIResponse from \"../../modularui/ModularUIResponse\";\n\nimport ResourceModel from \"../base/ResourceModel\";\nimport FilterCollection from \"../filters/FilterCollection\";\nimport ContentLinkModel from \"./ContentLinkModel\";\nimport SubSectionModel from \"./SubSectionModel\";\n\nimport ContentTypeModel from \"./ContentTypeModel\";\n\nimport { TIMEVERSION_FILTER_NAME } from \"../../constants/Constants\";\n\nimport type { ModularUIModel } from \"../types\";\nimport type LinkModel from \"../links/LinkModel\";\nimport type Href from \"../href/Href\";\nimport SectionModel from \"./SectionModel\";\n\n/**\n * Content detail model\n */\nexport default class ContentModel extends ResourceModel {\n _section: SectionModel;\n _contentType: ContentTypeModel | null = null;\n _filterCollection: FilterCollection;\n\n constructor(response: ModularUIResponse) {\n super(response);\n\n this._section = new SectionModel(\n this.data,\n this.entryDate,\n this.modelOptions,\n );\n }\n\n /**\n */\n get type(): string {\n return \"Content\";\n }\n\n /**\n */\n static get modelName(): string {\n return \"ContentModel\";\n }\n\n /**\n */\n static isApplicableModel(data: ModularUIResponse): boolean {\n return (\n data.contributions.resourcetype &&\n data.contributions.resourcetype === \"ContentDetail\"\n );\n }\n\n /**\n */\n getInitialChildModelLinks(): Array<LinkModel> {\n const contentTypeLink = this.links.getLinkByKey(\"contenttype\");\n\n if (contentTypeLink) {\n return [contentTypeLink];\n }\n\n return [];\n }\n\n /**\n */\n setChildModels(models: Array<ModularUIModel>) {\n this.contentType = models.find((model) => model.type === \"ContentType\");\n }\n\n /**\n */\n get section(): SectionModel {\n return this._section;\n }\n\n /**\n */\n get id(): string {\n return this.data._id;\n }\n\n /**\n * Retrieve available filters on concept toc\n */\n get filterCollection(): FilterCollection {\n if (!this._filterCollection && this.data.filter?.entryDate) {\n this._filterCollection = new FilterCollection(\n {\n entryDate: this.data.filter.entryDate,\n },\n {\n filter: this.contributions.filter,\n },\n this.modelOptions,\n );\n }\n\n return this._filterCollection;\n }\n\n /**\n * Retrieve entrydate of content toc\n */\n get entryDate(): ISO_DATE | null {\n const entryDateFilter = this.filterCollection?.getFilterByAttributeKey(\n TIMEVERSION_FILTER_NAME,\n );\n if (entryDateFilter && entryDateFilter.attribute) {\n return entryDateFilter.attribute.value;\n }\n\n return null;\n }\n\n /**\n * Get conceptType of concept\n */\n get contentType(): ContentTypeModel | null {\n return this._contentType;\n }\n\n /**\n * Set concept type\n */\n set contentType(contentType: ?ModularUIModel) {\n this._contentType =\n contentType instanceof ContentTypeModel ? contentType : null;\n }\n\n /**\n * Get content label\n */\n get label(): string {\n return this.section.label;\n }\n\n /**\n * Retrieve number of section\n */\n get number(): string | null {\n return this.section.number;\n }\n\n /**\n * Get content body\n */\n get body(): ?string {\n return this.section.body;\n }\n\n /**\n * Retrieve child section links\n */\n get childSectionLinks(): Array<ContentLinkModel> {\n return this.section.childSectionLinks;\n }\n\n /**\n */\n get selfContentLink(): ContentLinkModel {\n return this.section.selfContentLink;\n }\n\n /**\n * Get tree of child sections\n */\n get childSections(): Array<SectionModel> {\n return this.section.childSections;\n }\n\n /**\n * set resolved child sections\n */\n set childSections(sections: Array<SectionModel>) {\n this.section.childSections = sections || [];\n }\n\n /**\n * Get sub sections\n */\n get subSections(): Array<SubSectionModel> {\n return this.section.subSections;\n }\n\n /**\n */\n get relatedConceptsHrefs(): Array<Href> {\n const hrefs = [];\n if (this.relatedConceptsHref) {\n hrefs.push(this.relatedConceptsHref);\n }\n\n this.subSections.forEach((subSection) => {\n hrefs.push(...subSection.relatedConceptsHrefs);\n });\n\n return hrefs;\n }\n\n /**\n * Get related concepts link\n */\n get relatedConceptsHref(): Href | null {\n const relatedConceptsLink = this.links.getLinkByKey(\"relatedConcepts\");\n\n if (relatedConceptsLink) {\n const { href } = relatedConceptsLink;\n href.addParameter(\"entryDate\", this.entryDate);\n href.setReferenceHash(this.referenceHash);\n return href;\n }\n\n return null;\n }\n\n /**\n */\n get referenceHash(): number {\n return this.section.referenceHash;\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -20,13 +20,13 @@ var _Constants = require("../../constants/Constants");
|
|
|
20
20
|
/**
|
|
21
21
|
* Get content items recursively
|
|
22
22
|
*/
|
|
23
|
-
const getItems = (items, entryDate) => (0, _map.default)(items).call(items, item => {
|
|
23
|
+
const getItems = (items, entryDate, modelOptions) => (0, _map.default)(items).call(items, item => {
|
|
24
24
|
const link = new _ContentLinkModel.default({
|
|
25
25
|
...item,
|
|
26
26
|
section: item._id
|
|
27
|
-
}, entryDate);
|
|
27
|
+
}, entryDate, modelOptions);
|
|
28
28
|
if (item.items) {
|
|
29
|
-
link.items = getItems(item.items, entryDate);
|
|
29
|
+
link.items = getItems(item.items, entryDate, modelOptions);
|
|
30
30
|
}
|
|
31
31
|
return link;
|
|
32
32
|
});
|
|
@@ -101,14 +101,14 @@ class ContentTOCModel extends _ResourceModel.default {
|
|
|
101
101
|
/**
|
|
102
102
|
*/
|
|
103
103
|
get selfContentLink() {
|
|
104
|
-
return new _ContentLinkModel.default(this.data, this.entryDate);
|
|
104
|
+
return new _ContentLinkModel.default(this.data, this.entryDate, this.modelOptions);
|
|
105
105
|
}
|
|
106
106
|
|
|
107
107
|
/**
|
|
108
108
|
* Get sub items of toc
|
|
109
109
|
*/
|
|
110
110
|
get items() {
|
|
111
|
-
return this.data.items ? getItems(this.data.items, this.entryDate) : [];
|
|
111
|
+
return this.data.items ? getItems(this.data.items, this.entryDate, this.modelOptions) : [];
|
|
112
112
|
}
|
|
113
113
|
|
|
114
114
|
/**
|
|
@@ -117,7 +117,7 @@ class ContentTOCModel extends _ResourceModel.default {
|
|
|
117
117
|
get categories() {
|
|
118
118
|
if (this.data.categories) {
|
|
119
119
|
var _context;
|
|
120
|
-
return (0, _map.default)(_context = this.data.categories).call(_context, category => new _ContentLinkModel.default(category));
|
|
120
|
+
return (0, _map.default)(_context = this.data.categories).call(_context, category => new _ContentLinkModel.default(category, null, this.modelOptions));
|
|
121
121
|
}
|
|
122
122
|
return [];
|
|
123
123
|
}
|
|
@@ -146,7 +146,7 @@ class ContentTOCModel extends _ResourceModel.default {
|
|
|
146
146
|
const [key] = (0, _keys.default)(filter);
|
|
147
147
|
return (0, _objects.has)(this.data?.filter, key);
|
|
148
148
|
})
|
|
149
|
-
});
|
|
149
|
+
}, this.modelOptions);
|
|
150
150
|
}
|
|
151
151
|
return this._filterCollection;
|
|
152
152
|
}
|
|
@@ -9,7 +9,7 @@ import Href from "../href/Href";
|
|
|
9
9
|
|
|
10
10
|
import { TIMEVERSION_FILTER_NAME } from "../../constants/Constants";
|
|
11
11
|
|
|
12
|
-
import type { ModularUIModel } from "../types";
|
|
12
|
+
import type { ModelOptions, ModularUIModel } from "../types";
|
|
13
13
|
import type { ModularUIResponse } from "../../modularui";
|
|
14
14
|
import type LinkModel from "../links/LinkModel";
|
|
15
15
|
|
|
@@ -19,6 +19,7 @@ import type LinkModel from "../links/LinkModel";
|
|
|
19
19
|
const getItems = (
|
|
20
20
|
items: Array<Object>,
|
|
21
21
|
entryDate: ISO_DATE | null,
|
|
22
|
+
modelOptions?: ModelOptions,
|
|
22
23
|
): Array<ContentLinkModel> =>
|
|
23
24
|
items.map((item) => {
|
|
24
25
|
const link = new ContentLinkModel(
|
|
@@ -27,10 +28,11 @@ const getItems = (
|
|
|
27
28
|
section: item._id,
|
|
28
29
|
},
|
|
29
30
|
entryDate,
|
|
31
|
+
modelOptions,
|
|
30
32
|
);
|
|
31
33
|
|
|
32
34
|
if (item.items) {
|
|
33
|
-
link.items = getItems(item.items, entryDate);
|
|
35
|
+
link.items = getItems(item.items, entryDate, modelOptions);
|
|
34
36
|
}
|
|
35
37
|
|
|
36
38
|
return link;
|
|
@@ -111,14 +113,16 @@ export default class ContentTOCModel extends ResourceModel {
|
|
|
111
113
|
/**
|
|
112
114
|
*/
|
|
113
115
|
get selfContentLink(): ContentLinkModel {
|
|
114
|
-
return new ContentLinkModel(this.data, this.entryDate);
|
|
116
|
+
return new ContentLinkModel(this.data, this.entryDate, this.modelOptions);
|
|
115
117
|
}
|
|
116
118
|
|
|
117
119
|
/**
|
|
118
120
|
* Get sub items of toc
|
|
119
121
|
*/
|
|
120
122
|
get items(): Array<ContentLinkModel> {
|
|
121
|
-
return this.data.items
|
|
123
|
+
return this.data.items
|
|
124
|
+
? getItems(this.data.items, this.entryDate, this.modelOptions)
|
|
125
|
+
: [];
|
|
122
126
|
}
|
|
123
127
|
|
|
124
128
|
/**
|
|
@@ -127,7 +131,7 @@ export default class ContentTOCModel extends ResourceModel {
|
|
|
127
131
|
get categories(): Array<ContentLinkModel> {
|
|
128
132
|
if (this.data.categories) {
|
|
129
133
|
return this.data.categories.map(
|
|
130
|
-
(category) => new ContentLinkModel(category),
|
|
134
|
+
(category) => new ContentLinkModel(category, null, this.modelOptions),
|
|
131
135
|
);
|
|
132
136
|
}
|
|
133
137
|
|
|
@@ -153,12 +157,16 @@ export default class ContentTOCModel extends ResourceModel {
|
|
|
153
157
|
*/
|
|
154
158
|
get filterCollection(): FilterCollection {
|
|
155
159
|
if (!this._filterCollection) {
|
|
156
|
-
this._filterCollection = new FilterCollection(
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
160
|
+
this._filterCollection = new FilterCollection(
|
|
161
|
+
this.data.filter,
|
|
162
|
+
{
|
|
163
|
+
filter: this.contributions.filter.filter((filter) => {
|
|
164
|
+
const [key] = Object.keys(filter);
|
|
165
|
+
return has(this.data?.filter, key);
|
|
166
|
+
}),
|
|
167
|
+
},
|
|
168
|
+
this.modelOptions,
|
|
169
|
+
);
|
|
162
170
|
}
|
|
163
171
|
|
|
164
172
|
return this._filterCollection;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ContentTOCModel.js","names":["_objects","require","_ResourceModel","_interopRequireDefault","_FilterCollection","_ContentLinkModel","_ContentTypeModel","_Href","_Constants","getItems","items","entryDate","_map","default","call","item","link","ContentLinkModel","section","_id","ContentTOCModel","ResourceModel","constructor","arguments","_defineProperty2","type","modelName","isApplicableModel","data","contributions","resourcetype","getInitialChildModelLinks","contentTypeLink","links","getLinkByKey","setChildModels","models","contentType","_find","model","label","getData","selfhref","href","Href","selflink","filterCollection","forEach","filter","params","param","value","setParameter","name","removeParameter","selfContentLink","categories","_context","category","_contentType","ContentTypeModel","_filterCollection","_context2","FilterCollection","_filter","key","_keys","has","timeversionFilter","getFilterByAttributeKey","TIMEVERSION_FILTER_NAME","attribute","exports"],"sources":["../../../src/models/content/ContentTOCModel.js"],"sourcesContent":["// @flow\nimport { has } from \"../../utils/helpers/objects\";\n\nimport ResourceModel from \"../base/ResourceModel\";\nimport FilterCollection from \"../filters/FilterCollection\";\nimport ContentLinkModel from \"./ContentLinkModel\";\nimport ContentTypeModel from \"./ContentTypeModel\";\nimport Href from \"../href/Href\";\n\nimport { TIMEVERSION_FILTER_NAME } from \"../../constants/Constants\";\n\nimport type { ModularUIModel } from \"../types\";\nimport type { ModularUIResponse } from \"../../modularui\";\nimport type LinkModel from \"../links/LinkModel\";\n\n/**\n * Get content items recursively\n */\nconst getItems = (\n items: Array<Object>,\n entryDate: ISO_DATE | null,\n): Array<ContentLinkModel> =>\n items.map((item) => {\n const link = new ContentLinkModel(\n {\n ...item,\n section: item._id,\n },\n entryDate,\n );\n\n if (item.items) {\n link.items = getItems(item.items, entryDate);\n }\n\n return link;\n });\n\n/**\n * Content detail model\n */\nexport default class ContentTOCModel extends ResourceModel {\n _contentType: ContentTypeModel | null = null;\n _filterCollection: FilterCollection;\n\n /**\n */\n get type(): string {\n return \"ContentTOC\";\n }\n\n /**\n */\n static get modelName(): string {\n return \"ContentTOCModel\";\n }\n\n /**\n */\n static isApplicableModel(data: ModularUIResponse): boolean {\n return (\n data.contributions.resourcetype &&\n data.contributions.resourcetype === \"ContentTOC\"\n );\n }\n\n /**\n */\n getInitialChildModelLinks(): Array<LinkModel> {\n const contentTypeLink = this.links.getLinkByKey(\"contenttype\");\n\n if (contentTypeLink) {\n return [contentTypeLink];\n }\n\n return [];\n }\n\n /**\n */\n setChildModels(models: Array<ModularUIModel>) {\n this.contentType = models.find((model) => model.type === \"ContentType\");\n }\n\n /**\n * Get content label\n */\n get label(): string {\n return this.getData(\"label\", \"\");\n }\n\n /**\n * Getting the self link of this list\n */\n get selfhref(): Href {\n const href = new Href(this.selflink.href);\n\n this.filterCollection.forEach((filter) => {\n filter.params.forEach((param) => {\n if (param.value) {\n href.setParameter(param.name, param.value);\n } else {\n href.removeParameter(param.name);\n }\n });\n });\n\n return href;\n }\n\n /**\n */\n get selfContentLink(): ContentLinkModel {\n return new ContentLinkModel(this.data, this.entryDate);\n }\n\n /**\n * Get sub items of toc\n */\n get items(): Array<ContentLinkModel> {\n return this.data.items
|
|
1
|
+
{"version":3,"file":"ContentTOCModel.js","names":["_objects","require","_ResourceModel","_interopRequireDefault","_FilterCollection","_ContentLinkModel","_ContentTypeModel","_Href","_Constants","getItems","items","entryDate","modelOptions","_map","default","call","item","link","ContentLinkModel","section","_id","ContentTOCModel","ResourceModel","constructor","arguments","_defineProperty2","type","modelName","isApplicableModel","data","contributions","resourcetype","getInitialChildModelLinks","contentTypeLink","links","getLinkByKey","setChildModels","models","contentType","_find","model","label","getData","selfhref","href","Href","selflink","filterCollection","forEach","filter","params","param","value","setParameter","name","removeParameter","selfContentLink","categories","_context","category","_contentType","ContentTypeModel","_filterCollection","_context2","FilterCollection","_filter","key","_keys","has","timeversionFilter","getFilterByAttributeKey","TIMEVERSION_FILTER_NAME","attribute","exports"],"sources":["../../../src/models/content/ContentTOCModel.js"],"sourcesContent":["// @flow\nimport { has } from \"../../utils/helpers/objects\";\n\nimport ResourceModel from \"../base/ResourceModel\";\nimport FilterCollection from \"../filters/FilterCollection\";\nimport ContentLinkModel from \"./ContentLinkModel\";\nimport ContentTypeModel from \"./ContentTypeModel\";\nimport Href from \"../href/Href\";\n\nimport { TIMEVERSION_FILTER_NAME } from \"../../constants/Constants\";\n\nimport type { ModelOptions, ModularUIModel } from \"../types\";\nimport type { ModularUIResponse } from \"../../modularui\";\nimport type LinkModel from \"../links/LinkModel\";\n\n/**\n * Get content items recursively\n */\nconst getItems = (\n items: Array<Object>,\n entryDate: ISO_DATE | null,\n modelOptions?: ModelOptions,\n): Array<ContentLinkModel> =>\n items.map((item) => {\n const link = new ContentLinkModel(\n {\n ...item,\n section: item._id,\n },\n entryDate,\n modelOptions,\n );\n\n if (item.items) {\n link.items = getItems(item.items, entryDate, modelOptions);\n }\n\n return link;\n });\n\n/**\n * Content detail model\n */\nexport default class ContentTOCModel extends ResourceModel {\n _contentType: ContentTypeModel | null = null;\n _filterCollection: FilterCollection;\n\n /**\n */\n get type(): string {\n return \"ContentTOC\";\n }\n\n /**\n */\n static get modelName(): string {\n return \"ContentTOCModel\";\n }\n\n /**\n */\n static isApplicableModel(data: ModularUIResponse): boolean {\n return (\n data.contributions.resourcetype &&\n data.contributions.resourcetype === \"ContentTOC\"\n );\n }\n\n /**\n */\n getInitialChildModelLinks(): Array<LinkModel> {\n const contentTypeLink = this.links.getLinkByKey(\"contenttype\");\n\n if (contentTypeLink) {\n return [contentTypeLink];\n }\n\n return [];\n }\n\n /**\n */\n setChildModels(models: Array<ModularUIModel>) {\n this.contentType = models.find((model) => model.type === \"ContentType\");\n }\n\n /**\n * Get content label\n */\n get label(): string {\n return this.getData(\"label\", \"\");\n }\n\n /**\n * Getting the self link of this list\n */\n get selfhref(): Href {\n const href = new Href(this.selflink.href);\n\n this.filterCollection.forEach((filter) => {\n filter.params.forEach((param) => {\n if (param.value) {\n href.setParameter(param.name, param.value);\n } else {\n href.removeParameter(param.name);\n }\n });\n });\n\n return href;\n }\n\n /**\n */\n get selfContentLink(): ContentLinkModel {\n return new ContentLinkModel(this.data, this.entryDate, this.modelOptions);\n }\n\n /**\n * Get sub items of toc\n */\n get items(): Array<ContentLinkModel> {\n return this.data.items\n ? getItems(this.data.items, this.entryDate, this.modelOptions)\n : [];\n }\n\n /**\n * get categories of content\n */\n get categories(): Array<ContentLinkModel> {\n if (this.data.categories) {\n return this.data.categories.map(\n (category) => new ContentLinkModel(category, null, this.modelOptions),\n );\n }\n\n return [];\n }\n\n /**\n * Retrieve content type model\n */\n get contentType(): ContentTypeModel | null {\n return this._contentType;\n }\n\n /**\n */\n set contentType(contentType: ?ModularUIModel) {\n this._contentType =\n contentType instanceof ContentTypeModel ? contentType : null;\n }\n\n /**\n * Retrieve available filters on concept toc\n */\n get filterCollection(): FilterCollection {\n if (!this._filterCollection) {\n this._filterCollection = new FilterCollection(\n this.data.filter,\n {\n filter: this.contributions.filter.filter((filter) => {\n const [key] = Object.keys(filter);\n return has(this.data?.filter, key);\n }),\n },\n this.modelOptions,\n );\n }\n\n return this._filterCollection;\n }\n\n /**\n * Retrieve entrydate of content toc\n */\n get entryDate(): ISO_DATE | null {\n const timeversionFilter = this.filterCollection.getFilterByAttributeKey(\n TIMEVERSION_FILTER_NAME,\n );\n\n return timeversionFilter?.attribute?.value ?? null;\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -14,20 +14,15 @@ var _SubSectionModel = _interopRequireDefault(require("./SubSectionModel"));
|
|
|
14
14
|
var _createHash = require("../../utils/helpers/createHash");
|
|
15
15
|
var _LinkModel = _interopRequireDefault(require("../links/LinkModel"));
|
|
16
16
|
var _utils = require("../../utils");
|
|
17
|
-
var _constants = require("../../constants");
|
|
18
17
|
/**
|
|
19
18
|
*/
|
|
20
19
|
class SectionModel extends _BaseModel.default {
|
|
21
|
-
constructor(data, entryDate,
|
|
22
|
-
super(data, {});
|
|
20
|
+
constructor(data, entryDate, modelOptions) {
|
|
21
|
+
super(data, {}, modelOptions);
|
|
23
22
|
(0, _defineProperty2.default)(this, "_entryDate", void 0);
|
|
24
23
|
(0, _defineProperty2.default)(this, "_selflink", void 0);
|
|
25
24
|
(0, _defineProperty2.default)(this, "_childSections", void 0);
|
|
26
|
-
(0, _defineProperty2.default)(this, "_origin", "");
|
|
27
|
-
(0, _defineProperty2.default)(this, "_contextPath", (0, _constants.getBasePath)());
|
|
28
25
|
this._entryDate = entryDate;
|
|
29
|
-
this._origin = origin || "";
|
|
30
|
-
this._contextPath = contextPath || (0, _constants.getBasePath)();
|
|
31
26
|
}
|
|
32
27
|
|
|
33
28
|
/**
|
|
@@ -40,7 +35,7 @@ class SectionModel extends _BaseModel.default {
|
|
|
40
35
|
*/
|
|
41
36
|
get selflink() {
|
|
42
37
|
if (!this._selflink) {
|
|
43
|
-
this._selflink = new _LinkModel.default(this.data._links?.self, null, this.
|
|
38
|
+
this._selflink = new _LinkModel.default(this.data._links?.self, null, this.modelOptions);
|
|
44
39
|
}
|
|
45
40
|
return this._selflink;
|
|
46
41
|
}
|
|
@@ -113,7 +108,7 @@ class SectionModel extends _BaseModel.default {
|
|
|
113
108
|
label: childSection.label,
|
|
114
109
|
sourceLabel: childSection.sourceLabel,
|
|
115
110
|
_links: childSection._links
|
|
116
|
-
}, this.entryDate, this.
|
|
111
|
+
}, this.entryDate, this.modelOptions)) : [];
|
|
117
112
|
}
|
|
118
113
|
|
|
119
114
|
/**
|
|
@@ -125,7 +120,7 @@ class SectionModel extends _BaseModel.default {
|
|
|
125
120
|
label: this.data.label,
|
|
126
121
|
sourceLabel: this.data.sourceLabel,
|
|
127
122
|
_links: this.data._links
|
|
128
|
-
}, this.entryDate, this.
|
|
123
|
+
}, this.entryDate, this.modelOptions);
|
|
129
124
|
}
|
|
130
125
|
|
|
131
126
|
/**
|
|
@@ -134,7 +129,7 @@ class SectionModel extends _BaseModel.default {
|
|
|
134
129
|
get childSections() {
|
|
135
130
|
if (!this._childSections && this.data.childSections) {
|
|
136
131
|
var _context2, _context3;
|
|
137
|
-
this._childSections = (0, _map.default)(_context2 = (0, _filter.default)(_context3 = this.data.childSections).call(_context3, childSection => "body" in childSection)).call(_context2, childSection => new SectionModel(childSection, this.entryDate, this.
|
|
132
|
+
this._childSections = (0, _map.default)(_context2 = (0, _filter.default)(_context3 = this.data.childSections).call(_context3, childSection => "body" in childSection)).call(_context2, childSection => new SectionModel(childSection, this.entryDate, this.modelOptions));
|
|
138
133
|
}
|
|
139
134
|
return this._childSections || [];
|
|
140
135
|
}
|
|
@@ -6,9 +6,10 @@ import SubSectionModel from "./SubSectionModel";
|
|
|
6
6
|
import { createHashFromHref } from "../../utils/helpers/createHash";
|
|
7
7
|
import LinkModel from "../links/LinkModel";
|
|
8
8
|
|
|
9
|
-
import type Href from "../href/Href";
|
|
10
9
|
import { retrieveText } from "../../utils";
|
|
11
|
-
|
|
10
|
+
|
|
11
|
+
import type Href from "../href/Href";
|
|
12
|
+
import type { ModelOptions } from "../types";
|
|
12
13
|
|
|
13
14
|
/**
|
|
14
15
|
*/
|
|
@@ -16,20 +17,15 @@ class SectionModel extends BaseModel {
|
|
|
16
17
|
_entryDate: ISO_DATE | null;
|
|
17
18
|
_selflink: ?LinkModel;
|
|
18
19
|
_childSections: Array<SectionModel>;
|
|
19
|
-
_origin: string = "";
|
|
20
|
-
_contextPath: string = getBasePath();
|
|
21
20
|
|
|
22
21
|
constructor(
|
|
23
22
|
data: Object,
|
|
24
23
|
entryDate: ISO_DATE | null,
|
|
25
|
-
|
|
26
|
-
contextPath?: string,
|
|
24
|
+
modelOptions?: ModelOptions,
|
|
27
25
|
) {
|
|
28
|
-
super(data, {});
|
|
26
|
+
super(data, {}, modelOptions);
|
|
29
27
|
|
|
30
28
|
this._entryDate = entryDate;
|
|
31
|
-
this._origin = origin || "";
|
|
32
|
-
this._contextPath = contextPath || getBasePath();
|
|
33
29
|
}
|
|
34
30
|
|
|
35
31
|
/**
|
|
@@ -45,8 +41,7 @@ class SectionModel extends BaseModel {
|
|
|
45
41
|
this._selflink = new LinkModel(
|
|
46
42
|
this.data._links?.self,
|
|
47
43
|
null,
|
|
48
|
-
this.
|
|
49
|
-
this._contextPath,
|
|
44
|
+
this.modelOptions,
|
|
50
45
|
);
|
|
51
46
|
}
|
|
52
47
|
return this._selflink;
|
|
@@ -125,8 +120,7 @@ class SectionModel extends BaseModel {
|
|
|
125
120
|
_links: childSection._links,
|
|
126
121
|
},
|
|
127
122
|
this.entryDate,
|
|
128
|
-
this.
|
|
129
|
-
this._contextPath,
|
|
123
|
+
this.modelOptions,
|
|
130
124
|
),
|
|
131
125
|
)
|
|
132
126
|
: [];
|
|
@@ -144,8 +138,7 @@ class SectionModel extends BaseModel {
|
|
|
144
138
|
_links: this.data._links,
|
|
145
139
|
},
|
|
146
140
|
this.entryDate,
|
|
147
|
-
this.
|
|
148
|
-
this._contextPath,
|
|
141
|
+
this.modelOptions,
|
|
149
142
|
);
|
|
150
143
|
}
|
|
151
144
|
|
|
@@ -158,12 +151,7 @@ class SectionModel extends BaseModel {
|
|
|
158
151
|
.filter((childSection) => "body" in childSection)
|
|
159
152
|
.map(
|
|
160
153
|
(childSection) =>
|
|
161
|
-
new SectionModel(
|
|
162
|
-
childSection,
|
|
163
|
-
this.entryDate,
|
|
164
|
-
this._origin,
|
|
165
|
-
this._contextPath,
|
|
166
|
-
),
|
|
154
|
+
new SectionModel(childSection, this.entryDate, this.modelOptions),
|
|
167
155
|
);
|
|
168
156
|
}
|
|
169
157
|
return this._childSections || [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SectionModel.js","names":["_BaseModel","_interopRequireDefault","require","_ContentLinkModel","_SubSectionModel","_createHash","_LinkModel","_utils","_constants","SectionModel","BaseModel","constructor","data","entryDate","origin","contextPath","_defineProperty2","default","getBasePath","_entryDate","_origin","_contextPath","referred","selflink","_selflink","LinkModel","_links","self","selfhref","href","type","sourceLabel","id","_id","key","label","getData","number","body","retrieveText","childSectionLinks","_context","childSections","_map","call","childSection","ContentLinkModel","section","selfContentLink","_childSections","_context2","_context3","_filter","sections","subSections","_context4","subSection","SubSectionModel","referenceHash","createHashFromHref","getReferredSections","push","referredChilds","_default","exports"],"sources":["../../../src/models/content/SectionModel.js"],"sourcesContent":["// @flow\nimport BaseModel from \"../base/BaseModel\";\nimport ContentLinkModel from \"./ContentLinkModel\";\nimport SubSectionModel from \"./SubSectionModel\";\n\nimport { createHashFromHref } from \"../../utils/helpers/createHash\";\nimport LinkModel from \"../links/LinkModel\";\n\nimport type Href from \"../href/Href\";\nimport { retrieveText } from \"../../utils\";\nimport { getBasePath } from \"../../constants\";\n\n/**\n */\nclass SectionModel extends BaseModel {\n _entryDate: ISO_DATE | null;\n _selflink: ?LinkModel;\n _childSections: Array<SectionModel>;\n _origin: string = \"\";\n _contextPath: string = getBasePath();\n\n constructor(\n data: Object,\n entryDate: ISO_DATE | null,\n origin?: string,\n contextPath?: string,\n ) {\n super(data, {});\n\n this._entryDate = entryDate;\n this._origin = origin || \"\";\n this._contextPath = contextPath || getBasePath();\n }\n\n /**\n */\n get referred(): boolean {\n return this.data.referred;\n }\n\n /**\n */\n get selflink(): LinkModel {\n if (!this._selflink) {\n this._selflink = new LinkModel(\n this.data._links?.self,\n null,\n this._origin,\n this._contextPath,\n );\n }\n return this._selflink;\n }\n\n /**\n */\n get selfhref(): Href {\n return this.selflink.href;\n }\n\n /**\n */\n get entryDate(): ISO_DATE | null {\n return this._entryDate;\n }\n\n /**\n */\n get type(): string {\n return this.data.type;\n }\n\n /**\n */\n get sourceLabel(): string {\n return this.data.sourceLabel;\n }\n\n /**\n */\n get id(): string {\n return this.data.id || this.data._id;\n }\n\n /**\n */\n get key(): string {\n return this.id;\n }\n\n /**\n * Get content label\n */\n get label(): string {\n return this.getData(\"label\", \"\");\n }\n\n /**\n * Retrieve number of section\n */\n get number(): string | null {\n return this.data.number ?? null;\n }\n\n /**\n * Get content body\n */\n get body(): ?string {\n return retrieveText(this.data.body);\n }\n\n /**\n * Retrieve child section links\n */\n get childSectionLinks(): Array<ContentLinkModel> {\n return this.data.childSections\n ? this.data.childSections.map(\n (childSection) =>\n new ContentLinkModel(\n {\n section: childSection.id || childSection._id,\n _id: childSection.id || childSection._id,\n label: childSection.label,\n sourceLabel: childSection.sourceLabel,\n _links: childSection._links,\n },\n this.entryDate,\n this._origin,\n this._contextPath,\n ),\n )\n : [];\n }\n\n /**\n */\n get selfContentLink(): ContentLinkModel {\n return new ContentLinkModel(\n {\n section: this.id,\n _id: this.id,\n label: this.data.label,\n sourceLabel: this.data.sourceLabel,\n _links: this.data._links,\n },\n this.entryDate,\n this._origin,\n this._contextPath,\n );\n }\n\n /**\n * Get tree of child sections\n */\n get childSections(): Array<SectionModel> {\n if (!this._childSections && this.data.childSections) {\n this._childSections = this.data.childSections\n .filter((childSection) => \"body\" in childSection)\n .map(\n (childSection) =>\n new SectionModel(\n childSection,\n this.entryDate,\n this._origin,\n this._contextPath,\n ),\n );\n }\n return this._childSections || [];\n }\n\n /**\n * set resolved child sections\n */\n set childSections(sections: Array<SectionModel>) {\n this._childSections = sections || [];\n }\n\n /**\n * Get sub sections\n */\n get subSections(): Array<SubSectionModel> {\n return this.data.subSections\n ? this.data.subSections.map(\n (subSection) => new SubSectionModel(subSection),\n )\n : [];\n }\n\n /**\n */\n get referenceHash(): number {\n return createHashFromHref(this.selfhref);\n }\n\n /**\n */\n getReferredSections(): Array<SubSectionModel | SectionModel> {\n const sections = [];\n\n for (const subSection of this.subSections) {\n if (subSection.referred) {\n sections.push(subSection);\n }\n\n const referredChilds = subSection.getReferredSections();\n sections.push(...referredChilds);\n }\n\n for (const childSection of this.childSections) {\n if (childSection.referred) {\n sections.push(childSection);\n }\n\n const referredChilds = childSection.getReferredSections();\n sections.push(...referredChilds);\n }\n\n return sections;\n }\n}\n\nexport default SectionModel;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"SectionModel.js","names":["_BaseModel","_interopRequireDefault","require","_ContentLinkModel","_SubSectionModel","_createHash","_LinkModel","_utils","SectionModel","BaseModel","constructor","data","entryDate","modelOptions","_defineProperty2","default","_entryDate","referred","selflink","_selflink","LinkModel","_links","self","selfhref","href","type","sourceLabel","id","_id","key","label","getData","number","body","retrieveText","childSectionLinks","_context","childSections","_map","call","childSection","ContentLinkModel","section","selfContentLink","_childSections","_context2","_context3","_filter","sections","subSections","_context4","subSection","SubSectionModel","referenceHash","createHashFromHref","getReferredSections","push","referredChilds","_default","exports"],"sources":["../../../src/models/content/SectionModel.js"],"sourcesContent":["// @flow\nimport BaseModel from \"../base/BaseModel\";\nimport ContentLinkModel from \"./ContentLinkModel\";\nimport SubSectionModel from \"./SubSectionModel\";\n\nimport { createHashFromHref } from \"../../utils/helpers/createHash\";\nimport LinkModel from \"../links/LinkModel\";\n\nimport { retrieveText } from \"../../utils\";\n\nimport type Href from \"../href/Href\";\nimport type { ModelOptions } from \"../types\";\n\n/**\n */\nclass SectionModel extends BaseModel {\n _entryDate: ISO_DATE | null;\n _selflink: ?LinkModel;\n _childSections: Array<SectionModel>;\n\n constructor(\n data: Object,\n entryDate: ISO_DATE | null,\n modelOptions?: ModelOptions,\n ) {\n super(data, {}, modelOptions);\n\n this._entryDate = entryDate;\n }\n\n /**\n */\n get referred(): boolean {\n return this.data.referred;\n }\n\n /**\n */\n get selflink(): LinkModel {\n if (!this._selflink) {\n this._selflink = new LinkModel(\n this.data._links?.self,\n null,\n this.modelOptions,\n );\n }\n return this._selflink;\n }\n\n /**\n */\n get selfhref(): Href {\n return this.selflink.href;\n }\n\n /**\n */\n get entryDate(): ISO_DATE | null {\n return this._entryDate;\n }\n\n /**\n */\n get type(): string {\n return this.data.type;\n }\n\n /**\n */\n get sourceLabel(): string {\n return this.data.sourceLabel;\n }\n\n /**\n */\n get id(): string {\n return this.data.id || this.data._id;\n }\n\n /**\n */\n get key(): string {\n return this.id;\n }\n\n /**\n * Get content label\n */\n get label(): string {\n return this.getData(\"label\", \"\");\n }\n\n /**\n * Retrieve number of section\n */\n get number(): string | null {\n return this.data.number ?? null;\n }\n\n /**\n * Get content body\n */\n get body(): ?string {\n return retrieveText(this.data.body);\n }\n\n /**\n * Retrieve child section links\n */\n get childSectionLinks(): Array<ContentLinkModel> {\n return this.data.childSections\n ? this.data.childSections.map(\n (childSection) =>\n new ContentLinkModel(\n {\n section: childSection.id || childSection._id,\n _id: childSection.id || childSection._id,\n label: childSection.label,\n sourceLabel: childSection.sourceLabel,\n _links: childSection._links,\n },\n this.entryDate,\n this.modelOptions,\n ),\n )\n : [];\n }\n\n /**\n */\n get selfContentLink(): ContentLinkModel {\n return new ContentLinkModel(\n {\n section: this.id,\n _id: this.id,\n label: this.data.label,\n sourceLabel: this.data.sourceLabel,\n _links: this.data._links,\n },\n this.entryDate,\n this.modelOptions,\n );\n }\n\n /**\n * Get tree of child sections\n */\n get childSections(): Array<SectionModel> {\n if (!this._childSections && this.data.childSections) {\n this._childSections = this.data.childSections\n .filter((childSection) => \"body\" in childSection)\n .map(\n (childSection) =>\n new SectionModel(childSection, this.entryDate, this.modelOptions),\n );\n }\n return this._childSections || [];\n }\n\n /**\n * set resolved child sections\n */\n set childSections(sections: Array<SectionModel>) {\n this._childSections = sections || [];\n }\n\n /**\n * Get sub sections\n */\n get subSections(): Array<SubSectionModel> {\n return this.data.subSections\n ? this.data.subSections.map(\n (subSection) => new SubSectionModel(subSection),\n )\n : [];\n }\n\n /**\n */\n get referenceHash(): number {\n return createHashFromHref(this.selfhref);\n }\n\n /**\n */\n getReferredSections(): Array<SubSectionModel | SectionModel> {\n const sections = [];\n\n for (const subSection of this.subSections) {\n if (subSection.referred) {\n sections.push(subSection);\n }\n\n const referredChilds = subSection.getReferredSections();\n sections.push(...referredChilds);\n }\n\n for (const childSection of this.childSections) {\n if (childSection.referred) {\n sections.push(childSection);\n }\n\n const referredChilds = childSection.getReferredSections();\n sections.push(...referredChilds);\n }\n\n return sections;\n }\n}\n\nexport default SectionModel;\n"],"mappings":";;;;;;;;;;AACA,IAAAA,UAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,iBAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,gBAAA,GAAAH,sBAAA,CAAAC,OAAA;AAEA,IAAAG,WAAA,GAAAH,OAAA;AACA,IAAAI,UAAA,GAAAL,sBAAA,CAAAC,OAAA;AAEA,IAAAK,MAAA,GAAAL,OAAA;AAKA;AACA;AACA,MAAMM,YAAY,SAASC,kBAAS,CAAC;EAKnCC,WAAWA,CACTC,IAAY,EACZC,SAA0B,EAC1BC,YAA2B,EAC3B;IACA,KAAK,CAACF,IAAI,EAAE,CAAC,CAAC,EAAEE,YAAY,CAAC;IAAC,IAAAC,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAE9B,IAAI,CAACC,UAAU,GAAGJ,SAAS;EAC7B;;EAEA;AACF;EACE,IAAIK,QAAQA,CAAA,EAAY;IACtB,OAAO,IAAI,CAACN,IAAI,CAACM,QAAQ;EAC3B;;EAEA;AACF;EACE,IAAIC,QAAQA,CAAA,EAAc;IACxB,IAAI,CAAC,IAAI,CAACC,SAAS,EAAE;MACnB,IAAI,CAACA,SAAS,GAAG,IAAIC,kBAAS,CAC5B,IAAI,CAACT,IAAI,CAACU,MAAM,EAAEC,IAAI,EACtB,IAAI,EACJ,IAAI,CAACT,YACP,CAAC;IACH;IACA,OAAO,IAAI,CAACM,SAAS;EACvB;;EAEA;AACF;EACE,IAAII,QAAQA,CAAA,EAAS;IACnB,OAAO,IAAI,CAACL,QAAQ,CAACM,IAAI;EAC3B;;EAEA;AACF;EACE,IAAIZ,SAASA,CAAA,EAAoB;IAC/B,OAAO,IAAI,CAACI,UAAU;EACxB;;EAEA;AACF;EACE,IAAIS,IAAIA,CAAA,EAAW;IACjB,OAAO,IAAI,CAACd,IAAI,CAACc,IAAI;EACvB;;EAEA;AACF;EACE,IAAIC,WAAWA,CAAA,EAAW;IACxB,OAAO,IAAI,CAACf,IAAI,CAACe,WAAW;EAC9B;;EAEA;AACF;EACE,IAAIC,EAAEA,CAAA,EAAW;IACf,OAAO,IAAI,CAAChB,IAAI,CAACgB,EAAE,IAAI,IAAI,CAAChB,IAAI,CAACiB,GAAG;EACtC;;EAEA;AACF;EACE,IAAIC,GAAGA,CAAA,EAAW;IAChB,OAAO,IAAI,CAACF,EAAE;EAChB;;EAEA;AACF;AACA;EACE,IAAIG,KAAKA,CAAA,EAAW;IAClB,OAAO,IAAI,CAACC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;EAClC;;EAEA;AACF;AACA;EACE,IAAIC,MAAMA,CAAA,EAAkB;IAC1B,OAAO,IAAI,CAACrB,IAAI,CAACqB,MAAM,IAAI,IAAI;EACjC;;EAEA;AACF;AACA;EACE,IAAIC,IAAIA,CAAA,EAAY;IAClB,OAAO,IAAAC,mBAAY,EAAC,IAAI,CAACvB,IAAI,CAACsB,IAAI,CAAC;EACrC;;EAEA;AACF;AACA;EACE,IAAIE,iBAAiBA,CAAA,EAA4B;IAAA,IAAAC,QAAA;IAC/C,OAAO,IAAI,CAACzB,IAAI,CAAC0B,aAAa,GAC1B,IAAAC,IAAA,CAAAvB,OAAA,EAAAqB,QAAA,OAAI,CAACzB,IAAI,CAAC0B,aAAa,EAAAE,IAAA,CAAAH,QAAA,EACpBI,YAAY,IACX,IAAIC,yBAAgB,CAClB;MACEC,OAAO,EAAEF,YAAY,CAACb,EAAE,IAAIa,YAAY,CAACZ,GAAG;MAC5CA,GAAG,EAAEY,YAAY,CAACb,EAAE,IAAIa,YAAY,CAACZ,GAAG;MACxCE,KAAK,EAAEU,YAAY,CAACV,KAAK;MACzBJ,WAAW,EAAEc,YAAY,CAACd,WAAW;MACrCL,MAAM,EAAEmB,YAAY,CAACnB;IACvB,CAAC,EACD,IAAI,CAACT,SAAS,EACd,IAAI,CAACC,YACP,CACJ,CAAC,GACD,EAAE;EACR;;EAEA;AACF;EACE,IAAI8B,eAAeA,CAAA,EAAqB;IACtC,OAAO,IAAIF,yBAAgB,CACzB;MACEC,OAAO,EAAE,IAAI,CAACf,EAAE;MAChBC,GAAG,EAAE,IAAI,CAACD,EAAE;MACZG,KAAK,EAAE,IAAI,CAACnB,IAAI,CAACmB,KAAK;MACtBJ,WAAW,EAAE,IAAI,CAACf,IAAI,CAACe,WAAW;MAClCL,MAAM,EAAE,IAAI,CAACV,IAAI,CAACU;IACpB,CAAC,EACD,IAAI,CAACT,SAAS,EACd,IAAI,CAACC,YACP,CAAC;EACH;;EAEA;AACF;AACA;EACE,IAAIwB,aAAaA,CAAA,EAAwB;IACvC,IAAI,CAAC,IAAI,CAACO,cAAc,IAAI,IAAI,CAACjC,IAAI,CAAC0B,aAAa,EAAE;MAAA,IAAAQ,SAAA,EAAAC,SAAA;MACnD,IAAI,CAACF,cAAc,GAAG,IAAAN,IAAA,CAAAvB,OAAA,EAAA8B,SAAA,OAAAE,OAAA,CAAAhC,OAAA,EAAA+B,SAAA,OAAI,CAACnC,IAAI,CAAC0B,aAAa,EAAAE,IAAA,CAAAO,SAAA,EAClCN,YAAY,IAAK,MAAM,IAAIA,YAAY,CAAC,EAAAD,IAAA,CAAAM,SAAA,EAE9CL,YAAY,IACX,IAAIhC,YAAY,CAACgC,YAAY,EAAE,IAAI,CAAC5B,SAAS,EAAE,IAAI,CAACC,YAAY,CACpE,CAAC;IACL;IACA,OAAO,IAAI,CAAC+B,cAAc,IAAI,EAAE;EAClC;;EAEA;AACF;AACA;EACE,IAAIP,aAAaA,CAACW,QAA6B,EAAE;IAC/C,IAAI,CAACJ,cAAc,GAAGI,QAAQ,IAAI,EAAE;EACtC;;EAEA;AACF;AACA;EACE,IAAIC,WAAWA,CAAA,EAA2B;IAAA,IAAAC,SAAA;IACxC,OAAO,IAAI,CAACvC,IAAI,CAACsC,WAAW,GACxB,IAAAX,IAAA,CAAAvB,OAAA,EAAAmC,SAAA,OAAI,CAACvC,IAAI,CAACsC,WAAW,EAAAV,IAAA,CAAAW,SAAA,EAClBC,UAAU,IAAK,IAAIC,wBAAe,CAACD,UAAU,CAChD,CAAC,GACD,EAAE;EACR;;EAEA;AACF;EACE,IAAIE,aAAaA,CAAA,EAAW;IAC1B,OAAO,IAAAC,8BAAkB,EAAC,IAAI,CAAC/B,QAAQ,CAAC;EAC1C;;EAEA;AACF;EACEgC,mBAAmBA,CAAA,EAA0C;IAC3D,MAAMP,QAAQ,GAAG,EAAE;IAEnB,KAAK,MAAMG,UAAU,IAAI,IAAI,CAACF,WAAW,EAAE;MACzC,IAAIE,UAAU,CAAClC,QAAQ,EAAE;QACvB+B,QAAQ,CAACQ,IAAI,CAACL,UAAU,CAAC;MAC3B;MAEA,MAAMM,cAAc,GAAGN,UAAU,CAACI,mBAAmB,CAAC,CAAC;MACvDP,QAAQ,CAACQ,IAAI,CAAC,GAAGC,cAAc,CAAC;IAClC;IAEA,KAAK,MAAMjB,YAAY,IAAI,IAAI,CAACH,aAAa,EAAE;MAC7C,IAAIG,YAAY,CAACvB,QAAQ,EAAE;QACzB+B,QAAQ,CAACQ,IAAI,CAAChB,YAAY,CAAC;MAC7B;MAEA,MAAMiB,cAAc,GAAGjB,YAAY,CAACe,mBAAmB,CAAC,CAAC;MACzDP,QAAQ,CAACQ,IAAI,CAAC,GAAGC,cAAc,CAAC;IAClC;IAEA,OAAOT,QAAQ;EACjB;AACF;AAAC,IAAAU,QAAA,GAAAC,OAAA,CAAA5C,OAAA,GAEcP,YAAY","ignoreList":[]}
|
|
@@ -89,7 +89,10 @@ class DetailModel extends _ResourceModel.default {
|
|
|
89
89
|
const [key] = (0, _keys.default)(contribution);
|
|
90
90
|
return (0, _objects.has)(this.data, key);
|
|
91
91
|
}) : [];
|
|
92
|
-
this.attributeCollection = new _AttributeCollection.default(this.data, attributeContributions,
|
|
92
|
+
this.attributeCollection = new _AttributeCollection.default(this.data, attributeContributions, {
|
|
93
|
+
...this.modelOptions,
|
|
94
|
+
isReadonly: true
|
|
95
|
+
});
|
|
93
96
|
}
|
|
94
97
|
|
|
95
98
|
/**
|
|
@@ -132,7 +135,10 @@ class DetailModel extends _ResourceModel.default {
|
|
|
132
135
|
const metadataContributions = this.contributions.metadata ? (0, _map.default)(_context4 = (0, _keys.default)(this.contributions.metadata)).call(_context4, metadataKey => ({
|
|
133
136
|
[metadataKey]: this.contributions.metadata[metadataKey]
|
|
134
137
|
})) : [];
|
|
135
|
-
this.metadataCollection = new _AttributeCollection.default(this.data, metadataContributions,
|
|
138
|
+
this.metadataCollection = new _AttributeCollection.default(this.data, metadataContributions, {
|
|
139
|
+
...this.modelOptions,
|
|
140
|
+
isReadonly: true
|
|
141
|
+
});
|
|
136
142
|
}
|
|
137
143
|
|
|
138
144
|
/**
|
|
@@ -151,7 +157,7 @@ class DetailModel extends _ResourceModel.default {
|
|
|
151
157
|
* Action collection
|
|
152
158
|
*/
|
|
153
159
|
createActionCollection() {
|
|
154
|
-
this._actionCollection = new _ActionCollection.default(this.data.actions, this.contributions.actions, this.
|
|
160
|
+
this._actionCollection = new _ActionCollection.default(this.data.actions, this.contributions.actions, this.modelOptions);
|
|
155
161
|
}
|
|
156
162
|
|
|
157
163
|
/**
|
|
@@ -96,7 +96,7 @@ export default class DetailModel extends ResourceModel {
|
|
|
96
96
|
this.attributeCollection = new AttributeCollection(
|
|
97
97
|
this.data,
|
|
98
98
|
attributeContributions,
|
|
99
|
-
true,
|
|
99
|
+
{ ...this.modelOptions, isReadonly: true },
|
|
100
100
|
);
|
|
101
101
|
}
|
|
102
102
|
|
|
@@ -148,7 +148,7 @@ export default class DetailModel extends ResourceModel {
|
|
|
148
148
|
this.metadataCollection = new AttributeCollection(
|
|
149
149
|
this.data,
|
|
150
150
|
metadataContributions,
|
|
151
|
-
true,
|
|
151
|
+
{ ...this.modelOptions, isReadonly: true },
|
|
152
152
|
);
|
|
153
153
|
}
|
|
154
154
|
|
|
@@ -171,8 +171,7 @@ export default class DetailModel extends ResourceModel {
|
|
|
171
171
|
this._actionCollection = new ActionCollection(
|
|
172
172
|
this.data.actions,
|
|
173
173
|
this.contributions.actions,
|
|
174
|
-
this.
|
|
175
|
-
this.contextPath,
|
|
174
|
+
this.modelOptions,
|
|
176
175
|
);
|
|
177
176
|
}
|
|
178
177
|
|