Commit 5467ac77 authored by Kushal Pandya's avatar Kushal Pandya Committed by Phil Hughes

Rename date related labels for Epics

parent c8cc4418
......@@ -64,7 +64,7 @@
return date ? parsedDateWords : 'None';
},
tooltipText(dateType = 'min') {
const defaultText = dateType === 'min' ? __('Planned start date') : __('Planned finish date');
const defaultText = dateType === 'min' ? __('Start date') : __('Due date');
const date = this[`${dateType}Date`];
const timeAgo = dateType === 'min' ? this.timeFormated(date) : timeFor(date);
const dateText = date ? [
......
......@@ -19,7 +19,7 @@ selected group. From your group page:
1. Enter a descriptive title and hit **Create epic**
Once created, you will be taken to the view for that newly-created epic where
you can change its title, description, planned start date, and planned finish date.
you can change its title, description, start date, and due date.
![epic view](img/epic_view.png)
......@@ -35,14 +35,17 @@ When you add an issue to an epic that's already associated with another epic,
the issue is automatically removed from the previous epic. In other words, an
issue can be associated with at most one epic.
## Planned start date and planned finish date
## Start date and due date
For each of the the planned dates in the sidebar of an epic, you can choose either entering
a fixed value or inheriting a dynamic value, called "From milestones". If you select
"From milestones" for the planned start date, GitLab will automatically set the
For each of the dates in the sidebar of an epic, you can choose to either:
- Enter a fixed value.
- Inherit a dynamic value called "From milestones".
If you select "From milestones" for the start date, GitLab will automatically set the
date to be earliest start date across all milestones that are currently assigned
to the issues that are attached to the epic. Similarly, if you select "From milestones"
for the planned end date, GitLab will set it to be the latest due date across all
for the due date, GitLab will set it to be the latest due date across all
milestones that are currently assigned to those issues.
These are dynamic dates in that if milestones are re-assigned to the issues, if the
......@@ -106,7 +109,12 @@ It will display a dropdown menu, from which you can add an author. You can also
text to search by epic title or description. When done, press <kbd>Enter</kbd> on your
keyboard to filter the list.
You can also sort epics list by **Created date**, **Last updated**, **Planned start date**, or **Planned finish date**.
You can also sort epics list by:
- **Created date**
- **Last updated**
- **Start date**
- **Due date**
![epics sort](img/epics_sort.png)
......
......@@ -2,11 +2,16 @@
> Introduced in [GitLab Ultimate][ee] 10.5.
An Epic within a group containing **Planned start date** and/or **Planned finish date**
An Epic within a group containing **Start date** and/or **Due date**
can be visualized in a form of a timeline (e.g. a Gantt chart). The Epics Roadmap page
shows such a visualization for all the epics which are under a group and/or its subgroups.
Epics in the view can be sorted by **Created date**, **Last updated**, **Planned start date**, or **Planned finish date**.
Epics in the view can be sorted by:
- **Created date**
- **Last updated**
- **Start date**
- **Due date**
![roadmap view](img/roadmap_view.png)
......@@ -18,7 +23,7 @@ Starting with [GitLab Ultimate][ee] 11.0, Roadmap supports three different date
![roadmap date range in quarters](img/roadmap_timeline_quarters.png)
In _Quarters_ preset, roadmap shows epics which have planned start or finish dates _falling within_ or
In _Quarters_ preset, roadmap shows epics which have start or due dates _falling within_ or
_going through_ **past quarter**, **current quarter** and **next 4 quarters**, where _today_
is shown by the vertical red line in the timeline. The sub-headers underneath the quarter name on
the timeline header represent the month of the quarter.
......@@ -27,7 +32,7 @@ the timeline header represent the month of the quarter.
![roadmap date range in months](img/roadmap_timeline_months.png)
In _Months_ preset, roadmap shows epics which have planned start or finish dates _falling within_ or
In _Months_ preset, roadmap shows epics which have start or due dates _falling within_ or
_going through_ **past month**, **current month** and **next 5 months**, where _today_
is shown by the vertical red line in the timeline. The sub-headers underneath the month name on
the timeline header represent the date on starting day (Sunday) of the week. This preset is
......@@ -37,17 +42,17 @@ selected by default.
![roadmap date range in weeks](img/roadmap_timeline_weeks.png)
In _Weeks_ preset, roadmap shows epics which have planned start or finish dates _falling within_ or
In _Weeks_ preset, roadmap shows epics which have start or due dates _falling within_ or
_going through_ **past week**, **current week** and **next 4 weeks**, where _today_
is shown by the vertical red line in the timeline. The sub-headers underneath the week name on
the timeline header represent the days of the week.
## Timeline bar for an epic
The timeline bar indicates the approximate position of an epic based on its planned start
and finish date. If an epic doesn't have a planned finish date, the timeline bar fades
away towards the future. Similarly, if an epic doesn't have a planned start date, the
timeline bar becomes more visible as it approaches the epic's planned finish date on the
The timeline bar indicates the approximate position of an epic based on its start
and due date. If an epic doesn't have a due date, the timeline bar fades
away towards the future. Similarly, if an epic doesn't have a start date, the
timeline bar becomes more visible as it approaches the epic's due date on the
timeline.
[ee]: https://about.gitlab.com/pricing
......@@ -231,7 +231,7 @@ export default {
return true;
},
getDateTypeString(dateType) {
return dateType === DateTypes.start ? s__('Epics|start') : s__('Epics|finish');
return dateType === DateTypes.start ? s__('Epics|start') : s__('Epics|due');
},
getDateFromMilestonesTooltip(dateType = 'start') {
const { startDateTimeFromMilestones, dueDateTimeFromMilestones } = this.store;
......@@ -457,8 +457,8 @@ export default {
:date-from-milestones-tooltip="getDateFromMilestonesTooltip('start')"
:show-toggle-sidebar="!isUserSignedIn"
:date-picker-label="__('Fixed start date')"
:label="__('Planned start date')"
:date-invalid-tooltip="__(`This date is after the planned finish date,
:label="__('Start date')"
:date-invalid-tooltip="__(`This date is after the due date,
so this epic won't appear in the roadmap.`)"
block-class="start-date"
@saveDate="saveStartDate"
......@@ -476,9 +476,9 @@ export default {
:date-fixed="store.dueDateTimeFixed"
:date-from-milestones="store.dueDateTimeFromMilestones"
:date-from-milestones-tooltip="getDateFromMilestonesTooltip('due')"
:date-picker-label="__('Fixed finish date')"
:label="__('Planned finish date')"
:date-invalid-tooltip="__(`This date is before the planned start date,
:date-picker-label="__('Fixed due date')"
:label="__('Due date')"
:date-invalid-tooltip="__(`This date is before the start date,
so this epic won't appear in the roadmap.`)"
block-class="end-date"
@saveDate="saveEndDate"
......
......@@ -122,7 +122,7 @@ export default {
title: s__('Epics|These dates affect how your epics appear in the roadmap. Dates from milestones come from the milestones assigned to issues in the epic. You can also set fixed dates or remove them entirely.'),
content: `
<a
href="${gon.gitlab_url}/help/user/group/epics/index.md#planned-start-date-and-planned-finish-date"
href="${gon.gitlab_url}/help/user/group/epics/index.md#start-date-and-due-date"
target="_blank"
rel="noopener noreferrer"
>${s__('Epics|More information')}</a>
......@@ -134,7 +134,7 @@ export default {
title: this.dateInvalidTooltip,
content: `
<a
href="${gon.gitlab_url}/help/user/group/epics/index.md#planned-start-date-and-planned-finish-date"
href="${gon.gitlab_url}/help/user/group/epics/index.md#start-date-and-due-date"
target="_blank"
rel="noopener noreferrer"
>${s__('Epics|How can I solve this?')}</a>
......
......@@ -25,17 +25,17 @@ export const PRESET_TYPES = {
export const PRESET_DEFAULTS = {
QUARTERS: {
TIMEFRAME_LENGTH: 18,
emptyStateDefault: s__('GroupRoadmap|To view the roadmap, add a planned start or finish date to one of your epics in this group or its subgroups. In the quarters view, only epics in the past quarter, current quarter, and next 4 quarters are shown &ndash; from %{startDate} to %{endDate}.'),
emptyStateDefault: s__('GroupRoadmap|To view the roadmap, add a start or due date to one of your epics in this group or its subgroups. In the quarters view, only epics in the past quarter, current quarter, and next 4 quarters are shown &ndash; from %{startDate} to %{endDate}.'),
emptyStateWithFilters: s__('GroupRoadmap|To widen your search, change or remove filters. In the quarters view, only epics in the past quarter, current quarter, and next 4 quarters are shown &ndash; from %{startDate} to %{endDate}.'),
},
MONTHS: {
TIMEFRAME_LENGTH: 7,
emptyStateDefault: s__('GroupRoadmap|To view the roadmap, add a planned start or finish date to one of your epics in this group or its subgroups. In the months view, only epics in the past month, current month, and next 5 months are shown &ndash; from %{startDate} to %{endDate}.'),
emptyStateDefault: s__('GroupRoadmap|To view the roadmap, add a start or due date to one of your epics in this group or its subgroups. In the months view, only epics in the past month, current month, and next 5 months are shown &ndash; from %{startDate} to %{endDate}.'),
emptyStateWithFilters: s__('GroupRoadmap|To widen your search, change or remove filters. In the months view, only epics in the past month, current month, and next 5 months are shown &ndash; from %{startDate} to %{endDate}.'),
},
WEEKS: {
TIMEFRAME_LENGTH: 42,
emptyStateDefault: s__('GroupRoadmap|To view the roadmap, add a planned start or finish date to one of your epics in this group or its subgroups. In the weeks view, only epics in the past week, current week, and next 4 weeks are shown &ndash; from %{startDate} to %{endDate}.'),
emptyStateDefault: s__('GroupRoadmap|To view the roadmap, add a start or due date to one of your epics in this group or its subgroups. In the weeks view, only epics in the past week, current week, and next 4 weeks are shown &ndash; from %{startDate} to %{endDate}.'),
emptyStateWithFilters: s__('GroupRoadmap|To widen your search, change or remove filters. In the weeks view, only epics in the past week, current week, and next 4 weeks are shown &ndash; from %{startDate} to %{endDate}.'),
},
};
......@@ -15,11 +15,11 @@ module EE
end
def sort_title_start_date
s_('SortOptions|Planned start date')
s_('SortOptions|Start date')
end
def sort_title_end_date
s_('SortOptions|Planned finish date')
s_('SortOptions|Due date')
end
def sort_title_less_weight
......
......@@ -7,7 +7,7 @@
%h4
= _('The roadmap shows the progress of your epics along a timeline')
%p
= _('To view the roadmap, add a planned start or finish date to one of your epics in this group or its subgroups. Only epics in the past 3 months and the next 3 months are shown.')
= _('To view the roadmap, add a start or due date to one of your epics in this group or its subgroups. In the months view, only epics in the past month, current month, and next 5 months are shown.')
.text-center
- if can?(current_user, :create_epic, @group)
#new-epic-app{ data: { endpoint: request.url } }
......
---
title: Rename date related labels for Epics
merge_request: 7447
author:
type: changed
......@@ -31,7 +31,7 @@ describe 'epics list', :js do
end
it 'sorts by end_date ASC by default' do
expect(page).to have_button('Planned finish date')
expect(page).to have_button('Due date')
page.within('.content-wrapper .content') do
expect(find('.top-area')).to have_content('All 3')
......@@ -54,18 +54,18 @@ describe 'epics list', :js do
it 'sorts by the selected value and stores the selection for epic list & roadmap' do
page.within('.epics-other-filters') do
click_button 'Planned finish date'
click_button 'Due date'
sort_options = find('ul.dropdown-menu-sort li').all('a').collect(&:text)
expect(sort_options[0]).to eq('Created date')
expect(sort_options[1]).to eq('Last updated')
expect(sort_options[2]).to eq('Planned start date')
expect(sort_options[3]).to eq('Planned finish date')
expect(sort_options[2]).to eq('Start date')
expect(sort_options[3]).to eq('Due date')
click_link 'Planned start date'
click_link 'Start date'
end
expect(page).to have_button('Planned start date')
expect(page).to have_button('Start date')
page.within('.content-wrapper .content') do
expect(find('.top-area')).to have_content('All 3')
......@@ -87,11 +87,11 @@ describe 'epics list', :js do
visit group_epics_path(group)
expect(page).to have_button('Planned start date')
expect(page).to have_button('Start date')
visit group_roadmap_path(group)
expect(page).to have_button('Planned start date')
expect(page).to have_button('Start date')
end
it 'renders the epic detail correctly after clicking the link' do
......
......@@ -56,8 +56,8 @@ describe 'group epic roadmap', :js do
expect(page).to have_selector('li a', count: 4)
expect(page).to have_content('Created date')
expect(page).to have_content('Last updated')
expect(page).to have_content('Planned start date')
expect(page).to have_content('Planned finish date')
expect(page).to have_content('Start date')
expect(page).to have_content('Due date')
end
end
end
......
......@@ -104,7 +104,7 @@ describe('SidebarParticipants', () => {
it('returns popover config object containing `content` with href pointing to correct documentation', () => {
const hrefContent = vm.popoverOptions.content.trim();
expect(hrefContent).toContain(`${gon.gitlab_url}/help/user/group/epics/index.md#planned-start-date-and-planned-finish-date`);
expect(hrefContent).toContain(`${gon.gitlab_url}/help/user/group/epics/index.md#start-date-and-due-date`);
expect(hrefContent).toContain('More information');
});
});
......@@ -116,7 +116,7 @@ describe('SidebarParticipants', () => {
it('returns popover config object containing `content` with href pointing to correct documentation', () => {
const hrefContent = vm.dateInvalidPopoverOptions.content.trim();
expect(hrefContent).toContain(`${gon.gitlab_url}/help/user/group/epics/index.md#planned-start-date-and-planned-finish-date`);
expect(hrefContent).toContain(`${gon.gitlab_url}/help/user/group/epics/index.md#start-date-and-due-date`);
expect(hrefContent).toContain('How can I solve this?');
});
});
......
......@@ -70,7 +70,7 @@ describe('EpicsListEmptyComponent', () => {
it('returns default empty state sub-message when `hasFiltersApplied` props is false', done => {
Vue.nextTick()
.then(() => {
expect(vm.subMessage).toBe('To view the roadmap, add a planned start or finish date to one of your epics in this group or its subgroups. In the quarters view, only epics in the past quarter, current quarter, and next 4 quarters are shown &ndash; from Oct 1, 2017 to Mar 31, 2019.');
expect(vm.subMessage).toBe('To view the roadmap, add a start or due date to one of your epics in this group or its subgroups. In the quarters view, only epics in the past quarter, current quarter, and next 4 quarters are shown &ndash; from Oct 1, 2017 to Mar 31, 2019.');
})
.then(done)
.catch(done.fail);
......@@ -95,7 +95,7 @@ describe('EpicsListEmptyComponent', () => {
it('returns default empty state sub-message when `hasFiltersApplied` props is false', done => {
Vue.nextTick()
.then(() => {
expect(vm.subMessage).toBe('To view the roadmap, add a planned start or finish date to one of your epics in this group or its subgroups. In the months view, only epics in the past month, current month, and next 5 months are shown &ndash; from Dec 1, 2017 to Jun 30, 2018.');
expect(vm.subMessage).toBe('To view the roadmap, add a start or due date to one of your epics in this group or its subgroups. In the months view, only epics in the past month, current month, and next 5 months are shown &ndash; from Dec 1, 2017 to Jun 30, 2018.');
})
.then(done)
.catch(done.fail);
......@@ -125,7 +125,7 @@ describe('EpicsListEmptyComponent', () => {
it('returns default empty state sub-message when `hasFiltersApplied` props is false', done => {
Vue.nextTick()
.then(() => {
expect(vm.subMessage).toBe('To view the roadmap, add a planned start or finish date to one of your epics in this group or its subgroups. In the weeks view, only epics in the past week, current week, and next 4 weeks are shown &ndash; from Dec 24, 2017 to Feb 9, 2018.');
expect(vm.subMessage).toBe('To view the roadmap, add a start or due date to one of your epics in this group or its subgroups. In the weeks view, only epics in the past week, current week, and next 4 weeks are shown &ndash; from Dec 24, 2017 to Feb 9, 2018.');
})
.then(done)
.catch(done.fail);
......
......@@ -3002,7 +3002,7 @@ msgstr ""
msgid "Epics|To schedule your epic's %{epicDateType} date based on milestones, assign a milestone with a %{epicDateType} date to any issue in the epic."
msgstr ""
msgid "Epics|finish"
msgid "Epics|due"
msgstr ""
msgid "Epics|start"
......@@ -3245,7 +3245,7 @@ msgstr ""
msgid "Fixed date"
msgstr ""
msgid "Fixed finish date"
msgid "Fixed due date"
msgstr ""
msgid "Fixed start date"
......@@ -3767,13 +3767,13 @@ msgstr ""
msgid "GroupRoadmap|The roadmap shows the progress of your epics along a timeline"
msgstr ""
msgid "GroupRoadmap|To view the roadmap, add a planned start or finish date to one of your epics in this group or its subgroups. In the months view, only epics in the past month, current month, and next 5 months are shown &ndash; from %{startDate} to %{endDate}."
msgid "GroupRoadmap|To view the roadmap, add a start or due date to one of your epics in this group or its subgroups. In the months view, only epics in the past month, current month, and next 5 months are shown &ndash; from %{startDate} to %{endDate}."
msgstr ""
msgid "GroupRoadmap|To view the roadmap, add a planned start or finish date to one of your epics in this group or its subgroups. In the quarters view, only epics in the past quarter, current quarter, and next 4 quarters are shown &ndash; from %{startDate} to %{endDate}."
msgid "GroupRoadmap|To view the roadmap, add a start or due date to one of your epics in this group or its subgroups. In the quarters view, only epics in the past quarter, current quarter, and next 4 quarters are shown &ndash; from %{startDate} to %{endDate}."
msgstr ""
msgid "GroupRoadmap|To view the roadmap, add a planned start or finish date to one of your epics in this group or its subgroups. In the weeks view, only epics in the past week, current week, and next 4 weeks are shown &ndash; from %{startDate} to %{endDate}."
msgid "GroupRoadmap|To view the roadmap, add a start or due date to one of your epics in this group or its subgroups. In the weeks view, only epics in the past week, current week, and next 4 weeks are shown &ndash; from %{startDate} to %{endDate}."
msgstr ""
msgid "GroupRoadmap|To widen your search, change or remove filters. In the months view, only epics in the past month, current month, and next 5 months are shown &ndash; from %{startDate} to %{endDate}."
......@@ -5543,12 +5543,6 @@ msgstr ""
msgid "Plain diff"
msgstr ""
msgid "Planned finish date"
msgstr ""
msgid "Planned start date"
msgstr ""
msgid "PlantUML"
msgstr ""
......@@ -7045,12 +7039,6 @@ msgstr ""
msgid "SortOptions|Oldest updated"
msgstr ""
msgid "SortOptions|Planned finish date"
msgstr ""
msgid "SortOptions|Planned start date"
msgstr ""
msgid "SortOptions|Popularity"
msgstr ""
......@@ -7060,6 +7048,9 @@ msgstr ""
msgid "SortOptions|Recent sign in"
msgstr ""
msgid "SortOptions|Start date"
msgstr ""
msgid "SortOptions|Start later"
msgstr ""
......@@ -7135,6 +7126,9 @@ msgstr ""
msgid "Start a %{new_merge_request} with these changes"
msgstr ""
msgid "Start date"
msgstr ""
msgid "Start the Runner!"
msgstr ""
......@@ -7524,10 +7518,10 @@ msgstr ""
msgid "This container registry has been scheduled for deletion."
msgstr ""
msgid "This date is after the planned finish date, so this epic won't appear in the roadmap."
msgid "This date is after the due date, so this epic won't appear in the roadmap."
msgstr ""
msgid "This date is before the planned start date, so this epic won't appear in the roadmap."
msgid "This date is before the start date, so this epic won't appear in the roadmap."
msgstr ""
msgid "This diff is collapsed."
......@@ -7903,7 +7897,7 @@ msgstr ""
msgid "To validate your GitLab CI configurations, go to 'CI/CD → Pipelines' inside your project, and click on the 'CI Lint' button."
msgstr ""
msgid "To view the roadmap, add a planned start or finish date to one of your epics in this group or its subgroups. Only epics in the past 3 months and the next 3 months are shown."
msgid "To view the roadmap, add a start or due date to one of your epics in this group or its subgroups. In the months view, only epics in the past month, current month, and next 5 months are shown."
msgstr ""
msgid "To widen your search, change or remove filters."
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment