diff --git a/app/assets/javascripts/issuable_form.js b/app/assets/javascripts/issuable_form.js index 49fe9f48b7b..c7c744ef61f 100644 --- a/app/assets/javascripts/issuable_form.js +++ b/app/assets/javascripts/issuable_form.js @@ -15,7 +15,7 @@ IssuableForm.prototype.wipRegex = /^\s*(\[WIP\]\s*|WIP:\s*|WIP\s+)+\s*/i; function IssuableForm(form) { - var $issuableDueDate; + var $issuableDueDate, calendar; this.form = form; this.toggleWip = bind(this.toggleWip, this); this.renderWipExplanation = bind(this.renderWipExplanation, this); @@ -37,7 +37,7 @@ this.initMoveDropdown(); $issuableDueDate = $('#issuable-due-date'); if ($issuableDueDate.length) { - var calendar = new Pikaday({ + calendar = new Pikaday({ field: $issuableDueDate.get(0), theme: 'gitlab-theme', format: 'yyyy-mm-dd', diff --git a/app/assets/javascripts/member_expiration_date.js.es6 b/app/assets/javascripts/member_expiration_date.js.es6 index 6c3730b7acd..8b045dfc134 100644 --- a/app/assets/javascripts/member_expiration_date.js.es6 +++ b/app/assets/javascripts/member_expiration_date.js.es6 @@ -21,12 +21,12 @@ theme: 'gitlab-theme', format: 'yyyy-mm-dd', minDate: new Date(), - onSelect: (dateText) => { + onSelect(dateText) { $input.val(dateFormat(new Date(dateText), 'yyyy-mm-dd')); $input.trigger('change'); - toggleClearInput.call(this); + toggleClearInput.call($input); }, }); diff --git a/app/assets/stylesheets/framework/calendar.scss b/app/assets/stylesheets/framework/calendar.scss index 261179835d9..d485e75a434 100644 --- a/app/assets/stylesheets/framework/calendar.scss +++ b/app/assets/stylesheets/framework/calendar.scss @@ -46,7 +46,7 @@ .pika-single.gitlab-theme { .pika-label { - color: $gl-gray; + color: $gl-text-color-secondary; font-size: 14px; font-weight: normal; } diff --git a/changelogs/unreleased/remove-jquery-ui-datepicker.yml b/changelogs/unreleased/remove-jquery-ui-datepicker.yml new file mode 100644 index 00000000000..cd00690d774 --- /dev/null +++ b/changelogs/unreleased/remove-jquery-ui-datepicker.yml @@ -0,0 +1,4 @@ +--- +title: Replaced jQuery UI datepicker +merge_request: +author: diff --git a/spec/features/boards/sidebar_spec.rb b/spec/features/boards/sidebar_spec.rb index 9cc50167395..bad6b56a18a 100644 --- a/spec/features/boards/sidebar_spec.rb +++ b/spec/features/boards/sidebar_spec.rb @@ -241,7 +241,7 @@ describe 'Issue Boards', feature: true, js: true do page.within('.due_date') do click_link 'Edit' - click_link Date.today.day + click_button Date.today.day wait_for_vue_resource diff --git a/spec/features/issues_spec.rb b/spec/features/issues_spec.rb index 394eb31aff8..bee07d40efe 100644 --- a/spec/features/issues_spec.rb +++ b/spec/features/issues_spec.rb @@ -78,8 +78,8 @@ describe 'Issues', feature: true do fill_in 'issue_description', with: 'bug description' find('#issuable-due-date').click - page.within '.ui-datepicker' do - click_link date.day + page.within '.pika-single' do + click_button date.day end expect(find('#issuable-due-date').value).to eq date.to_s @@ -110,8 +110,8 @@ describe 'Issues', feature: true do fill_in 'issue_description', with: 'bug description' find('#issuable-due-date').click - page.within '.ui-datepicker' do - click_link date.day + page.within '.pika-single' do + click_button date.day end expect(find('#issuable-due-date').value).to eq date.to_s @@ -624,8 +624,8 @@ describe 'Issues', feature: true do page.within '.due_date' do click_link 'Edit' - page.within '.ui-datepicker-calendar' do - click_link date.day + page.within '.pika-single' do + click_button date.day end wait_for_ajax @@ -636,10 +636,10 @@ describe 'Issues', feature: true do it 'removes due date from issue' do page.within '.due_date' do - click_link 'Edit' + date = Date.today.at_beginning_of_month + 2.days - page.within '.ui-datepicker-calendar' do - first('.ui-state-default').click + page.within '.pika-single' do + click_button date.day end wait_for_ajax diff --git a/spec/features/profiles/personal_access_tokens_spec.rb b/spec/features/profiles/personal_access_tokens_spec.rb index 55a01057c83..eb7b8a24669 100644 --- a/spec/features/profiles/personal_access_tokens_spec.rb +++ b/spec/features/profiles/personal_access_tokens_spec.rb @@ -34,7 +34,7 @@ describe 'Profile > Personal Access Tokens', feature: true, js: true do # Set date to 1st of next month find_field("Expires at").trigger('focus') - find("a[title='Next']").click + find(".pika-next").click click_on "1" # Scopes diff --git a/spec/features/projects/members/master_adds_member_with_expiration_date_spec.rb b/spec/features/projects/members/master_adds_member_with_expiration_date_spec.rb index f136d9ce0fa..6c37a344251 100644 --- a/spec/features/projects/members/master_adds_member_with_expiration_date_spec.rb +++ b/spec/features/projects/members/master_adds_member_with_expiration_date_spec.rb @@ -14,32 +14,30 @@ feature 'Projects > Members > Master adds member with expiration date', feature: login_as(master) end - scenario 'expiration date is displayed in the members list', js: true do - travel_to Time.zone.parse('2016-08-06 08:00') do - visit namespace_project_settings_members_path(project.namespace, project) - page.within '.users-project-form' do - select2(new_member.id, from: '#user_ids', multiple: true) - fill_in 'expires_at', with: '2016-08-10' - end - find('.users-project-form').click - click_on 'Add to project' + scenario 'expiration date is displayed in the members list' do + date = 5.days.from_now + visit namespace_project_project_members_path(project.namespace, project) - page.within "#project_member_#{new_member.project_members.first.id}" do - expect(page).to have_content('Expires in 4 days') - end + page.within '.users-project-form' do + select2(new_member.id, from: '#user_ids', multiple: true) + fill_in 'expires_at', with: date.to_s(:medium) + click_on 'Add to project' + end + + page.within "#project_member_#{new_member.project_members.first.id}" do + expect(page).to have_content('Expires in 4 days') end end scenario 'change expiration date' do - travel_to Time.zone.parse('2016-08-06 08:00') do - project.team.add_users([new_member.id], :developer, expires_at: '2016-09-06') - visit namespace_project_project_members_path(project.namespace, project) + date = 4.days.from_now + project.team.add_users([new_member.id], :developer, expires_at: Date.today.to_s(:medium)) + visit namespace_project_project_members_path(project.namespace, project) - page.within "#project_member_#{new_member.project_members.first.id}" do - find('.js-access-expiration-date').set '2016-08-09' - wait_for_ajax - expect(page).to have_content('Expires in 3 days') - end + page.within "#project_member_#{new_member.project_members.first.id}" do + find('.js-access-expiration-date').set date.to_s(:medium) + wait_for_ajax + expect(page).to have_content('Expires in 3 days') end end end