diff --git a/waltz-ng/client/system/routes.js b/waltz-ng/client/system/routes.js index f8b550832f..a9bcfe8dd6 100644 --- a/waltz-ng/client/system/routes.js +++ b/waltz-ng/client/system/routes.js @@ -145,13 +145,6 @@ const measurableCategoryEditState = { }; - -// const measurableCategoryEdit = { -// url: "/measurable-category/{id:int}/edit", -// views: { "content@": MeasurableCategoryEdit } -// }; - - const eudaListState = { url: "/euda-list", views: {"content@": EudaListView} diff --git a/waltz-ng/client/system/svelte/measurable-categories/MeasurableCategoryEditView.svelte b/waltz-ng/client/system/svelte/measurable-categories/MeasurableCategoryEditView.svelte index 07edfc9a8b..b648ba266a 100644 --- a/waltz-ng/client/system/svelte/measurable-categories/MeasurableCategoryEditView.svelte +++ b/waltz-ng/client/system/svelte/measurable-categories/MeasurableCategoryEditView.svelte @@ -18,7 +18,7 @@ id: null, // we want a new category position: 0, lastUpdatedBy: "defaultValue", - icon: "cog", + icon: "puzzle-piece", allowPrimaryRatings: false }; @@ -191,16 +191,16 @@ + +
- -
- -
- Which role is needed to edit the taxonomy -
+ + +
+ The role needed by users to perform mappings against this taxonomy.
diff --git a/waltz-ng/client/system/svelte/measurable-categories/MeasurableCategoryListView.svelte b/waltz-ng/client/system/svelte/measurable-categories/MeasurableCategoryListView.svelte index be1f46a9ae..1e4b751bbc 100644 --- a/waltz-ng/client/system/svelte/measurable-categories/MeasurableCategoryListView.svelte +++ b/waltz-ng/client/system/svelte/measurable-categories/MeasurableCategoryListView.svelte @@ -17,6 +17,11 @@ DELETE: "delete" }; + const requiredPermissions = [ // user should have at least one of these + systemRoles.ADMIN.key, + systemRoles.TAXONOMY_EDITOR.key + ]; + const permissionsCall = userStore.load(); let loadCategoriesCall; @@ -27,7 +32,10 @@ let hasEditPermissions = false; $: permissions = $permissionsCall?.data; - $: hasEditPermissions = _.includes(permissions?.roles, systemRoles.AGGREGATE_OVERLAY_DIAGRAM_EDITOR.key) || false; + + $: hasEditPermissions = _.some( + permissions?.roles, + r => _.includes(requiredPermissions, r)); function loadCategories() { loadCategoriesCall = measurableCategoryStore.findAll(true); diff --git a/waltz-ng/client/system/system-admin-list.js b/waltz-ng/client/system/system-admin-list.js index 7df89e0efa..ad726839a1 100644 --- a/waltz-ng/client/system/system-admin-list.js +++ b/waltz-ng/client/system/system-admin-list.js @@ -106,7 +106,7 @@ const referenceDataOptions= [ icon: "id-card-o" }, { name: "Measurable Categories", - role: "ADMIN", + role: "TAXONOMY_EDITOR", description: "View and edit measurable categories", state: "main.system.measurable-category.list", icon: "puzzle-piece"