From 5816f7b8f23c4e5780ada26bfc9f930293440db4 Mon Sep 17 00:00:00 2001 From: Rajan Mistry Date: Wed, 22 Oct 2025 18:41:49 +0530 Subject: [PATCH] Replace use of injected canBulkEditEpics and canCreateProjects --- .../work_items/components/work_item_metadata_provider.vue | 2 ++ .../work_items/graphql/work_item_metadata.query.graphql | 2 ++ app/assets/javascripts/work_items/index.js | 4 ---- .../javascripts/work_items/pages/work_items_list_app.vue | 1 + .../work_items/graphql/work_item_metadata.query.graphql | 2 ++ .../work_items/list/components/work_items_list_app_spec.js | 1 + 6 files changed, 8 insertions(+), 4 deletions(-) diff --git a/app/assets/javascripts/work_items/components/work_item_metadata_provider.vue b/app/assets/javascripts/work_items/components/work_item_metadata_provider.vue index 02da562c7035f9..848bfafe304108 100644 --- a/app/assets/javascripts/work_items/components/work_item_metadata_provider.vue +++ b/app/assets/javascripts/work_items/components/work_item_metadata_provider.vue @@ -38,6 +38,8 @@ export default { markdownHelpPath: computed(() => this.metadata.markdownHelpPath), quickActionsHelpPath: computed(() => this.metadata.quickActionsHelpPath), canAdminLabel: computed(() => Boolean(this.metadata?.adminLabel)), + canCreateProjects: computed(() => Boolean(this.metadata?.createProjects)), + canBulkEditEpics: computed(() => Boolean(this.metadata?.bulkAdminEpic)), // newCommentTemplatePaths not included as it is already available on the `WorkItem` type. isGroup: computed(() => this.metadata.id?.includes(TYPENAME_GROUP) || false), }; diff --git a/app/assets/javascripts/work_items/graphql/work_item_metadata.query.graphql b/app/assets/javascripts/work_items/graphql/work_item_metadata.query.graphql index f8369dae8794d5..d5af26aa5daf82 100644 --- a/app/assets/javascripts/work_items/graphql/work_item_metadata.query.graphql +++ b/app/assets/javascripts/work_items/graphql/work_item_metadata.query.graphql @@ -32,6 +32,8 @@ query workItemMetadata($fullPath: ID!) { userPermissions { createWorkItem adminLabel + createProjects + bulkAdminEpic } } } diff --git a/app/assets/javascripts/work_items/index.js b/app/assets/javascripts/work_items/index.js index fa6127ba4a5008..b2bff506870f43 100644 --- a/app/assets/javascripts/work_items/index.js +++ b/app/assets/javascripts/work_items/index.js @@ -53,12 +53,10 @@ export const initWorkItemsRoot = ({ workItemType, workspaceType, withTabs } = {} autocompleteAwardEmojisPath, hasScopedLabelsFeature, hasQualityManagementFeature, - canBulkEditEpics, groupIssuesPath, labelsFetchPath, hasLinkedItemsEpicsFeature, duoRemoteFlowsAvailability, - canCreateProjects, newProjectPath, projectNamespaceFullPath, hasIssueDateFilterFeature, @@ -143,11 +141,9 @@ export const initWorkItemsRoot = ({ workItemType, workspaceType, withTabs } = {} showNewWorkItem: parseBoolean(showNewWorkItem), autocompleteAwardEmojisPath, hasQualityManagementFeature: parseBoolean(hasQualityManagementFeature), - canBulkEditEpics: parseBoolean(canBulkEditEpics), groupIssuesPath, labelsFetchPath, hasLinkedItemsEpicsFeature: parseBoolean(hasLinkedItemsEpicsFeature), - canCreateProjects: parseBoolean(canCreateProjects), newIssuePath, newProjectPath, projectNamespaceFullPath, diff --git a/app/assets/javascripts/work_items/pages/work_items_list_app.vue b/app/assets/javascripts/work_items/pages/work_items_list_app.vue index acac403982bc3e..d3050f9fff379d 100644 --- a/app/assets/javascripts/work_items/pages/work_items_list_app.vue +++ b/app/assets/javascripts/work_items/pages/work_items_list_app.vue @@ -210,6 +210,7 @@ export default { 'autocompleteAwardEmojisPath', 'canBulkUpdate', 'canBulkEditEpics', + 'canCreateProjects', 'canCreateWorkItem', 'hasBlockedIssuesFeature', 'hasEpicsFeature', diff --git a/ee/app/assets/javascripts/work_items/graphql/work_item_metadata.query.graphql b/ee/app/assets/javascripts/work_items/graphql/work_item_metadata.query.graphql index 0001c21e7cae7e..1097a03bd9b96e 100644 --- a/ee/app/assets/javascripts/work_items/graphql/work_item_metadata.query.graphql +++ b/ee/app/assets/javascripts/work_items/graphql/work_item_metadata.query.graphql @@ -37,6 +37,8 @@ query workItemMetadataEE($fullPath: ID!) { userPermissions { createWorkItem adminLabel + createProjects + bulkAdminEpic } } } diff --git a/spec/frontend/work_items/list/components/work_items_list_app_spec.js b/spec/frontend/work_items/list/components/work_items_list_app_spec.js index 6095bf204cfea7..480f1d61781adf 100644 --- a/spec/frontend/work_items/list/components/work_items_list_app_spec.js +++ b/spec/frontend/work_items/list/components/work_items_list_app_spec.js @@ -197,6 +197,7 @@ describeSkipVue3(skipReason, () => { autocompleteAwardEmojisPath: 'autocomplete/award/emojis/path', canBulkUpdate: true, canBulkEditEpics: true, + canCreateProjects: true, hasBlockedIssuesFeature: false, hasEpicsFeature: false, hasGroupBulkEditFeature: true, -- GitLab