From 3e8f560e18d3fe77822d0b24c36d256ab618e87b Mon Sep 17 00:00:00 2001 From: nscuro Date: Sun, 14 Apr 2024 18:01:43 +0200 Subject: [PATCH] Add support for component properties Based on https://github.com/DependencyTrack/dependency-track/pull/3499 Signed-off-by: nscuro --- src/i18n/locales/en.json | 2 + src/views/portfolio/projects/Component.vue | 6 + .../projects/ComponentCreatePropertyModal.vue | 123 +++++++++++++++ .../projects/ComponentDetailsModal.vue | 9 ++ .../projects/ComponentPropertiesModal.vue | 145 ++++++++++++++++++ 5 files changed, 285 insertions(+) create mode 100644 src/views/portfolio/projects/ComponentCreatePropertyModal.vue create mode 100644 src/views/portfolio/projects/ComponentPropertiesModal.vue diff --git a/src/i18n/locales/en.json b/src/i18n/locales/en.json index 31892587f..eda2d5a81 100644 --- a/src/i18n/locales/en.json +++ b/src/i18n/locales/en.json @@ -104,6 +104,7 @@ "add_version": "Add Version", "properties": "Properties", "delete": "Delete", + "component_properties": "Component Properties", "project_properties": "Project Properties", "create_property": "Create Property", "value": "Value", @@ -121,6 +122,7 @@ "show_inactive_projects": "Show inactive projects", "show_flat_view": "Show flat project view", "switch_view": "Cannot switch view while searching", + "create_component_property": "Create Component Property", "create_project_property": "Create Project Property", "group_name": "Group Name", "property_name": "Property Name", diff --git a/src/views/portfolio/projects/Component.vue b/src/views/portfolio/projects/Component.vue index 13dee8516..e27f0e2aa 100644 --- a/src/views/portfolio/projects/Component.vue +++ b/src/views/portfolio/projects/Component.vue @@ -162,6 +162,8 @@ :component="cloneDeep(component)" v-on:componentUpdated="syncComponentFields" /> + + @@ -178,10 +180,14 @@ import EventBus from '../../../shared/eventbus'; import permissionsMixin from '../../../mixins/permissionsMixin'; import ComponentDetailsModal from './ComponentDetailsModal'; import ExternalReferencesDropdown from '../../components/ExternalReferencesDropdown.vue'; +import ComponentCreatePropertyModal from './ComponentCreatePropertyModal.vue'; +import ComponentPropertiesModal from './ComponentPropertiesModal.vue'; export default { mixins: [permissionsMixin], components: { + ComponentCreatePropertyModal, + ComponentPropertiesModal, SeverityBarChart, ComponentDashboard, ComponentVulnerabilities, diff --git a/src/views/portfolio/projects/ComponentCreatePropertyModal.vue b/src/views/portfolio/projects/ComponentCreatePropertyModal.vue new file mode 100644 index 000000000..32ba07194 --- /dev/null +++ b/src/views/portfolio/projects/ComponentCreatePropertyModal.vue @@ -0,0 +1,123 @@ + + + + + diff --git a/src/views/portfolio/projects/ComponentDetailsModal.vue b/src/views/portfolio/projects/ComponentDetailsModal.vue index b3fcdeaf5..e01d9edcb 100644 --- a/src/views/portfolio/projects/ComponentDetailsModal.vue +++ b/src/views/portfolio/projects/ComponentDetailsModal.vue @@ -363,6 +363,13 @@ v-permission="PERMISSIONS.PORTFOLIO_MANAGEMENT" >{{ $t('message.delete') }} + {{ $t('message.properties') }} {{ $t('message.close') }} @@ -380,6 +387,7 @@ + +