From 217c1a9f9706092730bf986d51d5666d74df336f Mon Sep 17 00:00:00 2001 From: Jack Chapman Date: Fri, 7 Feb 2025 16:57:17 +0000 Subject: [PATCH 01/22] add project work_items index --- app/controllers/projects/work_items_controller.rb | 4 ++++ app/views/projects/work_items/index.html.haml | 6 ++++++ config/feature_flags/wip/work_item_planning_view.yml | 9 +++++++++ config/routes/project.rb | 2 +- 4 files changed, 20 insertions(+), 1 deletion(-) create mode 100644 app/views/projects/work_items/index.html.haml create mode 100644 config/feature_flags/wip/work_item_planning_view.yml diff --git a/app/controllers/projects/work_items_controller.rb b/app/controllers/projects/work_items_controller.rb index 83d2ed4c7430a5..c284816f25ede5 100644 --- a/app/controllers/projects/work_items_controller.rb +++ b/app/controllers/projects/work_items_controller.rb @@ -35,6 +35,10 @@ def import_csv end end + def index + not_found unless ::Feature.enabled?(:namespace_level_work_items, project&.group, type: :development) + end + def show return if show_params[:iid] == 'new' diff --git a/app/views/projects/work_items/index.html.haml b/app/views/projects/work_items/index.html.haml new file mode 100644 index 00000000000000..fc02fcc3eb3af9 --- /dev/null +++ b/app/views/projects/work_items/index.html.haml @@ -0,0 +1,6 @@ +- page_title s_('WorkItem|Work items') +- add_page_specific_style 'page_bundles/issuable_list' +- add_work_items_stylesheet +- add_page_specific_style 'page_bundles/design_management' + +#js-work-items{ data: work_items_show_data(@project, current_user) } diff --git a/config/feature_flags/wip/work_item_planning_view.yml b/config/feature_flags/wip/work_item_planning_view.yml new file mode 100644 index 00000000000000..c50b02b2c28af3 --- /dev/null +++ b/config/feature_flags/wip/work_item_planning_view.yml @@ -0,0 +1,9 @@ +--- +name: work_item_planning_view +feature_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/512661 +introduced_by_url: +rollout_issue_url: +milestone: '17.9' +group: group::product planning +type: wip +default_enabled: false diff --git a/config/routes/project.rb b/config/routes/project.rb index b7729169a91e15..4a8ed14ebb59a0 100644 --- a/config/routes/project.rb +++ b/config/routes/project.rb @@ -362,7 +362,7 @@ get 'alert_management/:id', to: 'alert_management#details', as: 'alert_management_alert' - resources :work_items, only: [:show], param: :iid do + resources :work_items, only: [:show, :index], param: :iid do collection do post :import_csv post 'import_csv/authorize', to: 'work_items#authorize' -- GitLab From 95a6330bd6d7603dea7da62470d9f163417afa27 Mon Sep 17 00:00:00 2001 From: Jack Chapman Date: Mon, 10 Feb 2025 14:46:01 +0000 Subject: [PATCH 02/22] Nav changes for work item lists --- .../pages/groups/work_items/index.js | 2 +- .../pages/projects/work_items/index.js | 2 +- .../list/components/issuable_list_root.vue | 3 +++ .../list/components/issuable_tabs.vue | 3 +++ .../javascripts/work_items/components/app.vue | 7 ++++++- .../components/work_item_breadcrumb.vue | 8 ++------ app/assets/javascripts/work_items/index.js | 3 ++- .../work_items/pages/work_items_list_app.vue | 7 +++++-- .../ee/sidebars/groups/menus/settings_menu.rb | 4 ++-- ee/lib/ee/sidebars/groups/panel.rb | 8 ++++---- ee/lib/sidebars/groups/menus/epics_menu.rb | 2 +- lib/sidebars/groups/menus/issues_menu.rb | 20 ++++++++++++++----- lib/sidebars/projects/menus/issues_menu.rb | 17 ++++++++++------ 13 files changed, 56 insertions(+), 30 deletions(-) diff --git a/app/assets/javascripts/pages/groups/work_items/index.js b/app/assets/javascripts/pages/groups/work_items/index.js index a1e1a1ee30fe7b..17f77eae9d0dcd 100644 --- a/app/assets/javascripts/pages/groups/work_items/index.js +++ b/app/assets/javascripts/pages/groups/work_items/index.js @@ -4,7 +4,7 @@ import { initWorkItemsRoot } from '~/work_items'; import { initWorkItemsFeedback } from '~/work_items_feedback'; import { __ } from '~/locale'; -initWorkItemsRoot({ workspaceType: WORKSPACE_GROUP }); +initWorkItemsRoot({ workspaceType: WORKSPACE_GROUP, withTabs: false }); initWorkItemsFeedback({ feedbackIssue: 'https://gitlab.com/gitlab-org/gitlab/-/issues/463598', feedbackIssueText: __('Provide feedback on the experience'), diff --git a/app/assets/javascripts/pages/projects/work_items/index.js b/app/assets/javascripts/pages/projects/work_items/index.js index b44ca708b287e9..c1130f5ab9a715 100644 --- a/app/assets/javascripts/pages/projects/work_items/index.js +++ b/app/assets/javascripts/pages/projects/work_items/index.js @@ -1,3 +1,3 @@ import { initWorkItemsRoot } from '~/work_items'; -initWorkItemsRoot(); +initWorkItemsRoot({ withTabs: false }); diff --git a/app/assets/javascripts/vue_shared/issuable/list/components/issuable_list_root.vue b/app/assets/javascripts/vue_shared/issuable/list/components/issuable_list_root.vue index dff3c19bc10f01..22f3775faf3f2e 100644 --- a/app/assets/javascripts/vue_shared/issuable/list/components/issuable_list_root.vue +++ b/app/assets/javascripts/vue_shared/issuable/list/components/issuable_list_root.vue @@ -340,6 +340,9 @@ export default { +
+
+ +
[], }, + withTabs: { + type: Boolean, + required: false, + default: true, + }, }, }; diff --git a/app/assets/javascripts/work_items/components/work_item_breadcrumb.vue b/app/assets/javascripts/work_items/components/work_item_breadcrumb.vue index 720104a42be63d..940ce2301d61f5 100644 --- a/app/assets/javascripts/work_items/components/work_item_breadcrumb.vue +++ b/app/assets/javascripts/work_items/components/work_item_breadcrumb.vue @@ -1,6 +1,6 @@