Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[ACS-5867] migrate date-range-filter.service.ts from moment to date-fns dependency #8832

Closed
wants to merge 1 commit into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
import { TestBed } from '@angular/core/testing';
import { DateRangeFilterService } from './date-range-filter.service';
import { DateCloudFilterType } from '../../models/date-cloud-filter.model';
import moment from 'moment';
import { add, endOfDay, endOfMonth, endOfQuarter, endOfYear, startOfDay, startOfMonth, startOfQuarter, startOfYear } from 'date-fns';

describe('Date Range Filter service', () => {

Expand All @@ -30,32 +30,32 @@ describe('Date Range Filter service', () => {

it('should return today range', () => {
const expectedDate = {
startDate: moment().startOf('day').toISOString(true),
endDate: moment().endOf('day').toISOString(true)
startDate: startOfDay(new Date()).toISOString(),
endDate: endOfDay(new Date()).toISOString()
};
expect(service.getDateRange(DateCloudFilterType.TODAY)).toEqual(expectedDate);
});

it('should return month range', () => {
const expectedDate = {
startDate: moment().startOf('month').toISOString(true),
endDate: moment().endOf('month').toISOString(true)
startDate: startOfMonth(new Date()).toISOString(),
endDate: endOfMonth(new Date()).toISOString()
};
expect(service.getDateRange(DateCloudFilterType.MONTH)).toEqual(expectedDate);
});

it('should return year range', () => {
const expectedDate = {
startDate: moment().startOf('year').toISOString(true),
endDate: moment().endOf('year').toISOString(true)
startDate: startOfYear(new Date()).toISOString(),
endDate: endOfYear(new Date()).toISOString()
};
expect(service.getDateRange(DateCloudFilterType.YEAR)).toEqual(expectedDate);
});

it('should return quarter range', () => {
const expectedDate = {
startDate: moment().startOf('quarter').toISOString(true),
endDate: moment().endOf('quarter').toISOString(true)
startDate: startOfQuarter(new Date()).toISOString(),
endDate: endOfQuarter(new Date()).toISOString()
};
expect(service.getDateRange(DateCloudFilterType.QUARTER)).toEqual(expectedDate);
});
Expand All @@ -70,16 +70,16 @@ describe('Date Range Filter service', () => {

it('should return tomorow range', () => {
const expectedDate = {
startDate: moment().endOf('day').toISOString(true),
endDate: moment().add(1, 'days').endOf('day').toISOString(true)
startDate: endOfDay(new Date()).toISOString(),
endDate: add(endOfDay(new Date()), { days: 1 }).toISOString()
};
expect(service.getDateRange(DateCloudFilterType.TOMORROW)).toEqual(expectedDate);
});

it('should return next 7 days range', () => {
const expectedDate = {
startDate: moment().startOf('day').toISOString(true),
endDate: moment().add(7, 'days').endOf('day').toISOString(true)
startDate: startOfDay(new Date()).toISOString(),
endDate: add(endOfDay(new Date()), { days: 7 }).toISOString()
};
expect(service.getDateRange(DateCloudFilterType.NEXT_7_DAYS)).toEqual(expectedDate);
});
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,8 @@
*/

import { Injectable } from '@angular/core';
import moment from 'moment';
import { DateRangeFilter, DateCloudFilterType } from '../../models/date-cloud-filter.model';
import { add, endOfDay, endOfMonth, endOfQuarter, endOfWeek, endOfYear, startOfDay, startOfMonth, startOfQuarter, startOfWeek, startOfYear } from 'date-fns';

@Injectable({
providedIn: 'root'
Expand Down Expand Up @@ -52,50 +52,50 @@ export class DateRangeFilterService {

private getNext7DaysDateRange(): DateRangeFilter {
return {
startDate: moment().startOf('day').toISOString(true),
endDate: moment().add(7, 'days').endOf('day').toISOString(true)
startDate: startOfDay(new Date()).toISOString(),
endDate: add(endOfDay(new Date()), { days: 7 }).toISOString()
};
}

private getTomorrowDateRange(): DateRangeFilter {
return {
startDate: moment().endOf('day').toISOString(true),
endDate: moment().add(1, 'days').endOf('day').toISOString(true)
startDate: endOfDay(new Date()).toISOString(),
endDate: add(endOfDay(new Date()), { days: 1 }).toISOString()
};
}

private getCurrentYearDateRange(): DateRangeFilter {
return {
startDate: moment().startOf('year').toISOString(true),
endDate: moment().endOf('year').toISOString(true)
startDate: startOfYear(new Date()).toISOString(),
endDate: endOfYear(new Date()).toISOString()
};
}

private getTodayDateRange(): DateRangeFilter {
return {
startDate: moment().startOf('day').toISOString(true),
endDate: moment().endOf('day').toISOString(true)
startDate: startOfDay(new Date()).toISOString(),
endDate: endOfDay(new Date()).toISOString()
};
}

private getCurrentWeekRange(): DateRangeFilter {
return {
startDate: moment().startOf('week').toISOString(true),
endDate: moment().endOf('week').toISOString(true)
startDate: startOfWeek(new Date()).toISOString(),
endDate: endOfWeek(new Date()).toISOString()
};
}

private getCurrentMonthDateRange(): DateRangeFilter {
return {
startDate: moment().startOf('month').toISOString(true),
endDate: moment().endOf('month').toISOString(true)
startDate: startOfMonth(new Date()).toISOString(),
endDate: endOfMonth(new Date()).toISOString()
};
}

private getQuarterDateRange(): DateRangeFilter {
return {
startDate: moment().startOf('quarter').toISOString(true),
endDate: moment().endOf('quarter').toISOString(true)
startDate: startOfQuarter(new Date()).toISOString(),
endDate: endOfQuarter(new Date()).toISOString()
};
}
}