@8ms/helpers 1.1.66 → 1.1.71
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/api/response.js +2 -2
- package/api/states.js +1 -1
- package/api/unexpectedError.js +1 -1
- package/array/contains.js +1 -4
- package/array/getArray.js +2 -5
- package/aws/athenaExpress/initClient.d.ts +1 -1
- package/aws/athenaExpress/initClient.js +6 -7
- package/aws/athenaExpress/query.d.ts +8 -0
- package/aws/athenaExpress/query.js +10 -0
- package/aws/getConfig.d.ts +5 -1
- package/aws/getConfig.js +2 -3
- package/aws/glue/initClient.d.ts +5 -4
- package/aws/glue/initClient.js +4 -5
- package/aws/glue/invoke.d.ts +1 -3
- package/aws/glue/invoke.js +12 -63
- package/aws/isResponse200.js +4 -5
- package/aws/lambda/getHandlerPath.d.ts +4 -3
- package/aws/lambda/getHandlerPath.js +3 -4
- package/aws/lambda/initClient.d.ts +5 -4
- package/aws/lambda/initClient.js +4 -5
- package/aws/lambda/invoke.d.ts +1 -3
- package/aws/lambda/invoke.js +29 -77
- package/aws/s3/copyFile.js +7 -55
- package/aws/s3/deleteFile.js +6 -54
- package/aws/s3/deleteFiles.d.ts +5 -6
- package/aws/s3/deleteFiles.js +10 -58
- package/aws/s3/deleteFolder.d.ts +5 -6
- package/aws/s3/deleteFolder.js +26 -76
- package/aws/s3/getGlueJson.d.ts +3 -2
- package/aws/s3/getGlueJson.js +4 -5
- package/aws/s3/getPresignedPost.d.ts +6 -7
- package/aws/s3/getPresignedPost.js +9 -56
- package/aws/s3/getSignedUrl.js +8 -76
- package/aws/s3/initClient.d.ts +5 -4
- package/aws/s3/initClient.js +4 -5
- package/aws/s3/isFileExists.js +17 -66
- package/aws/s3/listFiles.js +22 -69
- package/aws/s3/listFolders.js +21 -68
- package/aws/s3/moveFile.d.ts +5 -4
- package/aws/s3/moveFile.js +10 -58
- package/aws/s3/readBuffer.js +41 -89
- package/aws/s3/readFile.js +42 -93
- package/aws/s3/writeFile.js +10 -72
- package/aws/s3/writePresignedPost.d.ts +2 -3
- package/aws/s3/writePresignedPost.js +22 -93
- package/aws/s3cache/getCache.js +25 -69
- package/aws/s3cache/getKey.js +7 -8
- package/aws/s3cache/saveCache.js +3 -49
- package/aws/s3cache/updateCache.js +13 -65
- package/aws/ses/SimpleEmail.d.ts +10 -13
- package/aws/ses/SimpleEmail.js +85 -189
- package/aws/ses/initClient.d.ts +5 -4
- package/aws/ses/initClient.js +4 -5
- package/aws/ssm/getParameter.js +31 -78
- package/aws/ssm/initClient.d.ts +5 -4
- package/aws/ssm/initClient.js +4 -5
- package/axios/get.js +35 -106
- package/axios/post.js +35 -106
- package/boolean/getBoolean.js +2 -3
- package/class/BaseClass.js +15 -22
- package/crypto/getDecrypt.js +3 -4
- package/crypto/getEncrypt.js +3 -4
- package/crypto/getRandom.js +1 -2
- package/crypto/getSha256.js +4 -5
- package/date/durationComparisons.js +1 -1
- package/date/durations.js +1 -1
- package/date/format.js +7 -8
- package/date/getDate.js +19 -20
- package/date/getDatesBetween.js +8 -9
- package/date/getDurationHours.js +6 -7
- package/date/getDurationMinutes.js +6 -7
- package/date/getFinancialYear.js +11 -12
- package/date/getFinancialYearToDate.js +5 -5
- package/date/getFinancialYearToYesterday.js +5 -5
- package/date/getFinancialYearWeeks.js +10 -11
- package/date/getLastWeek.js +11 -12
- package/date/getMax.js +5 -6
- package/date/getMidnight.js +2 -3
- package/date/getMin.js +5 -6
- package/date/getMonday.js +10 -11
- package/date/getNumber.js +4 -5
- package/date/getPredefinedTimeframe.js +5 -6
- package/date/getSunday.js +10 -11
- package/date/getThisWeek.js +11 -12
- package/date/getTimeZoned.js +11 -12
- package/date/getToday.js +6 -7
- package/date/getTwoWeeksAgo.js +11 -12
- package/date/getWeeksAgo.js +5 -6
- package/date/getYesterday.js +7 -8
- package/date/isDateValid.js +6 -7
- package/date/isLastWeek.js +3 -4
- package/date/isThisWeek.js +3 -4
- package/date/parseExcelDate.js +9 -10
- package/deepCrawl/buildRequest.js +19 -20
- package/deepCrawl/getData.js +21 -79
- package/deepCrawl/initClient.js +17 -64
- package/deepCrawl/operands.js +1 -1
- package/deepCrawl/orders.js +1 -1
- package/deepCrawl/reports.js +1 -1
- package/environment/environments.js +1 -1
- package/environment/getEnvironment.js +8 -8
- package/environment/isAws.js +2 -2
- package/environment/isDevelopment.js +3 -3
- package/environment/isLocalhost.js +4 -4
- package/environment/isProduction.js +3 -3
- package/environment/isStaging.js +3 -3
- package/environment/isVercel.js +1 -1
- package/environment/platforms.d.ts +1 -1
- package/environment/platforms.js +1 -1
- package/eskimi/ageGroups.js +1 -1
- package/eskimi/devices.js +1 -1
- package/eskimi/endpoints.js +1 -1
- package/eskimi/genders.js +1 -1
- package/eskimi/getAccessToken.js +11 -57
- package/eskimi/getAgeGroup.js +3 -4
- package/eskimi/getCampaignIds.js +2 -3
- package/eskimi/getDevice.js +3 -4
- package/eskimi/getGender.js +3 -4
- package/eskimi/request.js +13 -59
- package/google/bigQuery/initClient.d.ts +11 -0
- package/google/bigQuery/initClient.js +22 -0
- package/google/bigQuery/query.d.ts +9 -0
- package/google/bigQuery/query.js +10 -0
- package/google/getConfig.d.ts +20 -0
- package/google/getConfig.js +23 -0
- package/google/sheets/getAssociatedData.d.ts +2 -6
- package/google/sheets/getAssociatedData.js +42 -89
- package/google/sheets/getBatchData.d.ts +1 -3
- package/google/sheets/getBatchData.js +15 -60
- package/google/sheets/initClient.d.ts +11 -0
- package/google/sheets/initClient.js +25 -0
- package/google/sheets/isCellNa.js +1 -4
- package/google/storage/initClient.d.ts +12 -0
- package/google/storage/initClient.js +23 -0
- package/google/storage/writeFile.d.ts +2 -1
- package/google/storage/writeFile.js +20 -77
- package/googleAds/getCustomer.js +7 -48
- package/googleAds/initClient.d.ts +9 -8
- package/googleAds/initClient.js +13 -56
- package/initClients.d.ts +13 -3
- package/initClients.js +95 -101
- package/json/isJson.js +1 -2
- package/littleWarden/getUrlStatus.js +10 -56
- package/littleWarden/isAllGood.js +3 -4
- package/littleWarden/isDanger.js +3 -4
- package/littleWarden/isWarning.js +3 -4
- package/littleWarden/states.js +1 -1
- package/myTarget/getAccessToken.js +11 -57
- package/myTarget/request.js +13 -59
- package/nextAuth/isSessionReady.js +2 -3
- package/nextAuth/states.js +1 -1
- package/nextJs/getIp.js +2 -3
- package/nextJs/getUserAgent.js +1 -4
- package/number/getDivide.js +4 -5
- package/number/getNumber.js +6 -7
- package/number/getPercent.js +4 -5
- package/number/getPercentIncrease.js +4 -5
- package/number/getRounded.js +5 -6
- package/package.json +2 -1
- package/prisma/initClient.js +4 -5
- package/snapchat/getAccessToken.js +25 -72
- package/sorting/byNumberAscending.js +3 -4
- package/sorting/byNumberDescending.js +3 -4
- package/sorting/byStringAscending.js +3 -4
- package/sorting/byStringDescending.js +3 -4
- package/string/formatCapitalise.js +2 -3
- package/string/getCleanFolder.js +3 -6
- package/string/getString.js +9 -10
- package/string/getStringFromStream.js +7 -8
- package/string/toProperCase.js +6 -7
- package/swr/isAllData.js +4 -5
- package/swr/isAnyError.js +4 -5
- package/swr/isAnyLoading.js +4 -5
- package/swr/isData.js +1 -4
- package/swr/isError.js +1 -4
- package/swr/isLoading.js +3 -6
- package/upTimeRobot/getMonitors.d.ts +1 -0
- package/upTimeRobot/getMonitors.js +33 -0
- package/upTimeRobot/logTypes.d.ts +7 -0
- package/upTimeRobot/logTypes.js +9 -0
- package/upTimeRobot/monitorStatuses.d.ts +8 -0
- package/upTimeRobot/monitorStatuses.js +10 -0
- package/upTimeRobot/monitorSubTypes.d.ts +10 -0
- package/upTimeRobot/monitorSubTypes.js +12 -0
- package/upTimeRobot/monitorTypes.d.ts +8 -0
- package/upTimeRobot/monitorTypes.js +10 -0
- package/upTimeRobot/requestStatuses.d.ts +5 -0
- package/upTimeRobot/requestStatuses.js +7 -0
- package/url/buildParameters.js +7 -8
- package/url/buildRelative.js +3 -4
- package/url/buildUrl.js +6 -7
- package/url/isAbsolute.js +1 -2
- package/url/isRelative.js +2 -5
- package/util/defaultTo.d.ts +6 -5
- package/util/defaultTo.js +6 -7
- package/util/isUndefined.d.ts +9 -0
- package/util/isUndefined.js +19 -0
- package/util/sleep.js +2 -3
- package/webWorker/states.js +1 -1
- package/xml/getXml.js +10 -58
- package/aws/athenaExpress/request.d.ts +0 -8
- package/aws/athenaExpress/request.js +0 -54
- package/aws/config.d.ts +0 -5
- package/aws/config.js +0 -2
- package/google/getCredentials.d.ts +0 -20
- package/google/getCredentials.js +0 -76
- package/google/sheets/getAuth.d.ts +0 -8
- package/google/sheets/getAuth.js +0 -69
package/date/getDurationHours.js
CHANGED
|
@@ -3,25 +3,24 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
|
|
6
|
+
const intervalToDuration_1 = __importDefault(require("date-fns/intervalToDuration"));
|
|
7
7
|
/**
|
|
8
8
|
* Convert a number 1000 seconds into HH:MM:SS
|
|
9
9
|
* https://stackoverflow.com/a/1322771
|
|
10
10
|
*/
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
var response = '00:00:00';
|
|
11
|
+
const getDurationHours = ({ seconds }) => {
|
|
12
|
+
let response = '00:00:00';
|
|
14
13
|
if (seconds > 0) {
|
|
15
|
-
|
|
14
|
+
const duration = (0, intervalToDuration_1.default)({
|
|
16
15
|
start: 0,
|
|
17
16
|
end: seconds * 1000,
|
|
18
17
|
});
|
|
19
|
-
|
|
18
|
+
const output = {
|
|
20
19
|
hours: duration.hours < 10 ? '0' + duration.hours : duration.hours,
|
|
21
20
|
minutes: duration.minutes < 10 ? '0' + duration.minutes : duration.minutes,
|
|
22
21
|
seconds: duration.seconds < 10 ? '0' + duration.seconds : duration.seconds,
|
|
23
22
|
};
|
|
24
|
-
response =
|
|
23
|
+
response = `${output.hours}:${output.minutes}:${output.seconds}`;
|
|
25
24
|
}
|
|
26
25
|
return response;
|
|
27
26
|
};
|
|
@@ -3,24 +3,23 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
|
|
6
|
+
const intervalToDuration_1 = __importDefault(require("date-fns/intervalToDuration"));
|
|
7
7
|
/**
|
|
8
8
|
* Convert a number 1000 seconds into MM:SS
|
|
9
9
|
* https://stackoverflow.com/a/1322771
|
|
10
10
|
*/
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
var response = '00:00';
|
|
11
|
+
const getDurationMinutes = ({ seconds }) => {
|
|
12
|
+
let response = '00:00';
|
|
14
13
|
if (seconds > 0) {
|
|
15
|
-
|
|
14
|
+
const duration = (0, intervalToDuration_1.default)({
|
|
16
15
|
start: 0,
|
|
17
16
|
end: seconds * 1000,
|
|
18
17
|
});
|
|
19
|
-
|
|
18
|
+
const output = {
|
|
20
19
|
minutes: duration.minutes < 10 ? '0' + duration.minutes : duration.minutes,
|
|
21
20
|
seconds: duration.seconds < 10 ? '0' + duration.seconds : duration.seconds,
|
|
22
21
|
};
|
|
23
|
-
response =
|
|
22
|
+
response = `${output.minutes}:${output.seconds}`;
|
|
24
23
|
}
|
|
25
24
|
return response;
|
|
26
25
|
};
|
package/date/getFinancialYear.js
CHANGED
|
@@ -3,22 +3,21 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
6
|
+
const isMonday_1 = __importDefault(require("date-fns/isMonday"));
|
|
7
|
+
const isSunday_1 = __importDefault(require("date-fns/isSunday"));
|
|
8
|
+
const nextSunday_1 = __importDefault(require("date-fns/nextSunday"));
|
|
9
|
+
const previousMonday_1 = __importDefault(require("date-fns/previousMonday"));
|
|
10
|
+
const getDate_1 = __importDefault(require("./getDate"));
|
|
11
|
+
const getToday_1 = __importDefault(require("./getToday"));
|
|
12
12
|
/**
|
|
13
13
|
* Get the current financial year.
|
|
14
14
|
*/
|
|
15
|
-
|
|
16
|
-
var _b = _a === void 0 ? { year: undefined } : _a, year = _b.year;
|
|
15
|
+
const getFinancialYear = ({ year } = { year: undefined }) => {
|
|
17
16
|
// Either use the current year or a specified year
|
|
18
|
-
|
|
17
|
+
let financialYear = year;
|
|
19
18
|
if (undefined === year) {
|
|
20
19
|
// As this isn't provided by the suer, we want to ensure its London timezone
|
|
21
|
-
|
|
20
|
+
const today = (0, getToday_1.default)();
|
|
22
21
|
// If today is before 1st of April, then use last year
|
|
23
22
|
if (today < new Date(today.getFullYear(), 3, 1)) {
|
|
24
23
|
financialYear = today.getFullYear() - 1;
|
|
@@ -30,10 +29,10 @@ var getFinancialYear = function (_a) {
|
|
|
30
29
|
}
|
|
31
30
|
// The year-end needs to be 31st March next year
|
|
32
31
|
// We are specifying the date, so don't change the timezone
|
|
33
|
-
|
|
32
|
+
let yearEnd = (0, getDate_1.default)({ input: `${financialYear + 1}-03-31` });
|
|
34
33
|
// The year start needs to be 1st April this year
|
|
35
34
|
// We are specifying the date, so don't change the timezone
|
|
36
|
-
|
|
35
|
+
let yearStart = (0, getDate_1.default)({ input: `${financialYear}-04-01` });
|
|
37
36
|
// Get the previous Monday if the 1st of April isn't a Monday
|
|
38
37
|
if (!(0, isMonday_1.default)(yearStart)) {
|
|
39
38
|
yearStart = (0, previousMonday_1.default)(yearStart);
|
|
@@ -3,15 +3,15 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
|
|
7
|
-
|
|
6
|
+
const getFinancialYear_1 = __importDefault(require("./getFinancialYear"));
|
|
7
|
+
const getToday_1 = __importDefault(require("./getToday"));
|
|
8
8
|
/**
|
|
9
9
|
* Return the current financial year up to today.
|
|
10
10
|
* Timezone should always be London based
|
|
11
11
|
*/
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
12
|
+
const getFinancialYearToDate = () => {
|
|
13
|
+
const today = (0, getToday_1.default)();
|
|
14
|
+
const thisFinancialYear = (0, getFinancialYear_1.default)();
|
|
15
15
|
return {
|
|
16
16
|
end: today,
|
|
17
17
|
start: thisFinancialYear.start,
|
|
@@ -3,15 +3,15 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
|
|
7
|
-
|
|
6
|
+
const getFinancialYear_1 = __importDefault(require("./getFinancialYear"));
|
|
7
|
+
const getYesterday_1 = __importDefault(require("./getYesterday"));
|
|
8
8
|
/**
|
|
9
9
|
* Return the current financial year up to yesterday.
|
|
10
10
|
* Timezone should always be London based
|
|
11
11
|
*/
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
12
|
+
const getFinancialYearToYesterday = () => {
|
|
13
|
+
const yesterday = (0, getYesterday_1.default)();
|
|
14
|
+
const thisFinancialYear = (0, getFinancialYear_1.default)();
|
|
15
15
|
return {
|
|
16
16
|
end: yesterday,
|
|
17
17
|
start: thisFinancialYear.start,
|
|
@@ -3,21 +3,20 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
6
|
+
const addDays_1 = __importDefault(require("date-fns/addDays"));
|
|
7
|
+
const eachWeekOfInterval_1 = __importDefault(require("date-fns/eachWeekOfInterval"));
|
|
8
|
+
const getFinancialYear_1 = __importDefault(require("./getFinancialYear"));
|
|
9
|
+
const getTimeZoned_1 = __importDefault(require("./getTimeZoned"));
|
|
10
10
|
/**
|
|
11
11
|
* Get the current financial year.
|
|
12
12
|
*/
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
var weekStart = new Date(week.getTime());
|
|
13
|
+
const getFinancialYearWeeks = ({ year } = { year: undefined }) => {
|
|
14
|
+
const financialYear = (0, getFinancialYear_1.default)({ year });
|
|
15
|
+
const weeks = (0, eachWeekOfInterval_1.default)(financialYear, { weekStartsOn: 1 });
|
|
16
|
+
let response = weeks.map((week, index) => {
|
|
17
|
+
let weekStart = new Date(week.getTime());
|
|
19
18
|
weekStart = (0, getTimeZoned_1.default)({ input: weekStart });
|
|
20
|
-
|
|
19
|
+
let weekEnd = (0, addDays_1.default)(weekStart, 6);
|
|
21
20
|
weekEnd = (0, getTimeZoned_1.default)({ input: weekEnd });
|
|
22
21
|
return {
|
|
23
22
|
start: weekStart,
|
package/date/getLastWeek.js
CHANGED
|
@@ -3,25 +3,24 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
6
|
+
const getMonday_1 = __importDefault(require("./getMonday"));
|
|
7
|
+
const getNumber_1 = __importDefault(require("./getNumber"));
|
|
8
|
+
const getSunday_1 = __importDefault(require("./getSunday"));
|
|
9
|
+
const getTimeZoned_1 = require("./getTimeZoned");
|
|
10
10
|
/**
|
|
11
11
|
* Return an object of start/end predefined date of Last Week.
|
|
12
12
|
* Creating a date from scratch (no user input), thus needs to be London time.
|
|
13
13
|
*/
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
var sunday = (0, getSunday_1.default)({
|
|
14
|
+
const getLastWeek = ({ setMidnight = true, setTimeZone = getTimeZoned_1.timeZoneLondon } = { setMidnight: true, setTimeZone: getTimeZoned_1.timeZoneLondon }) => {
|
|
15
|
+
const sunday = (0, getSunday_1.default)({
|
|
17
16
|
weeksAgo: 0,
|
|
18
|
-
setMidnight
|
|
19
|
-
setTimeZone
|
|
17
|
+
setMidnight,
|
|
18
|
+
setTimeZone,
|
|
20
19
|
});
|
|
21
|
-
|
|
20
|
+
const monday = (0, getMonday_1.default)({
|
|
22
21
|
weeksAgo: 1,
|
|
23
|
-
setMidnight
|
|
24
|
-
setTimeZone
|
|
22
|
+
setMidnight,
|
|
23
|
+
setTimeZone,
|
|
25
24
|
});
|
|
26
25
|
return {
|
|
27
26
|
end: (0, getNumber_1.default)({ input: sunday }),
|
package/date/getMax.js
CHANGED
|
@@ -3,15 +3,14 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
|
|
7
|
-
|
|
6
|
+
const isAfter_1 = __importDefault(require("date-fns/isAfter"));
|
|
7
|
+
const getDate_1 = __importDefault(require("./getDate"));
|
|
8
8
|
/**
|
|
9
9
|
* If a given date is beyond the maximum, return the maximum.
|
|
10
10
|
*/
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
var parsedInput = (0, getDate_1.default)({ input: input, setMidnight: setMidnight });
|
|
11
|
+
const getMax = ({ input, max, setMidnight = true }) => {
|
|
12
|
+
const parsedMax = (0, getDate_1.default)({ input: max, setMidnight });
|
|
13
|
+
const parsedInput = (0, getDate_1.default)({ input, setMidnight });
|
|
15
14
|
return (0, isAfter_1.default)(parsedInput, parsedMax) ? parsedMax : parsedInput;
|
|
16
15
|
};
|
|
17
16
|
exports.default = getMax;
|
package/date/getMidnight.js
CHANGED
|
@@ -3,9 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
/**
|
|
4
4
|
* Set a date's time to 0 hours, 0 minutes, 0 seconds, 0 milliseconds
|
|
5
5
|
*/
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
var dateInstance = input;
|
|
6
|
+
const getMidnight = ({ input, setMidnight = true }) => {
|
|
7
|
+
let dateInstance = input;
|
|
9
8
|
if (setMidnight) {
|
|
10
9
|
dateInstance.setHours(0, 0, 0, 0);
|
|
11
10
|
}
|
package/date/getMin.js
CHANGED
|
@@ -3,15 +3,14 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
|
|
7
|
-
|
|
6
|
+
const isBefore_1 = __importDefault(require("date-fns/isBefore"));
|
|
7
|
+
const getDate_1 = __importDefault(require("./getDate"));
|
|
8
8
|
/**
|
|
9
9
|
* If a given date is before the minimum, return the minimum.
|
|
10
10
|
*/
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
var parsedInput = (0, getDate_1.default)({ input: input, setMidnight: setMidnight });
|
|
11
|
+
const getMin = ({ input, min, setMidnight = true }) => {
|
|
12
|
+
const parsedMin = (0, getDate_1.default)({ input: min, setMidnight });
|
|
13
|
+
const parsedInput = (0, getDate_1.default)({ input, setMidnight });
|
|
15
14
|
return (0, isBefore_1.default)(parsedInput, parsedMin) ? parsedMin : parsedInput;
|
|
16
15
|
};
|
|
17
16
|
exports.default = getMin;
|
package/date/getMonday.js
CHANGED
|
@@ -3,29 +3,28 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
6
|
+
const getISODay_1 = __importDefault(require("date-fns/getISODay"));
|
|
7
|
+
const isMonday_1 = __importDefault(require("date-fns/isMonday"));
|
|
8
|
+
const subDays_1 = __importDefault(require("date-fns/subDays"));
|
|
9
|
+
const getDate_1 = __importDefault(require("./getDate"));
|
|
10
|
+
const getToday_1 = __importDefault(require("./getToday"));
|
|
11
11
|
/**
|
|
12
12
|
* Retrieve the closest last Monday relative to the input or today.
|
|
13
13
|
* 0 weeksAgo - Tuesday (10th), return Monday (8th)
|
|
14
14
|
* 1 weeksAgo - Tuesday (10th), return Monday (1st)
|
|
15
15
|
*/
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
var dateInstance;
|
|
16
|
+
const getMonday = ({ weeksAgo, input, setMidnight = true, setTimeZone = false }) => {
|
|
17
|
+
let dateInstance;
|
|
19
18
|
if (input) {
|
|
20
|
-
dateInstance = (0, getDate_1.default)({ input
|
|
19
|
+
dateInstance = (0, getDate_1.default)({ input, setMidnight, setTimeZone });
|
|
21
20
|
}
|
|
22
21
|
else {
|
|
23
22
|
// As we are getting today's date we don't want to convert this timezone
|
|
24
|
-
dateInstance = (0, getToday_1.default)({ setMidnight
|
|
23
|
+
dateInstance = (0, getToday_1.default)({ setMidnight });
|
|
25
24
|
}
|
|
26
25
|
if (!(0, isMonday_1.default)(dateInstance)) {
|
|
27
26
|
// Get the ISO Day of week (Monday - 1 to Sunday - 7)
|
|
28
|
-
|
|
27
|
+
const isoDay = (0, getISODay_1.default)(dateInstance);
|
|
29
28
|
// Move back to Monday
|
|
30
29
|
dateInstance = (0, subDays_1.default)(dateInstance, isoDay - 1);
|
|
31
30
|
}
|
package/date/getNumber.js
CHANGED
|
@@ -3,14 +3,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
|
|
7
|
-
|
|
6
|
+
const format_1 = __importDefault(require("date-fns/format"));
|
|
7
|
+
const getDate_1 = __importDefault(require("./getDate"));
|
|
8
8
|
/**
|
|
9
9
|
* Convert a (number | string | Date) into a YYYYMMDD number.
|
|
10
10
|
*/
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
var date = (0, getDate_1.default)({ input: input, setMidnight: setMidnight, setTimeZone: setTimeZone });
|
|
11
|
+
const getNumber = ({ input, setMidnight = true, setTimeZone = false }) => {
|
|
12
|
+
let date = (0, getDate_1.default)({ input, setMidnight, setTimeZone });
|
|
14
13
|
return Number((0, format_1.default)(date, 'yyyyMMdd'));
|
|
15
14
|
};
|
|
16
15
|
exports.default = getNumber;
|
|
@@ -3,15 +3,14 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
6
|
+
const isLastWeek_1 = __importDefault(require("./isLastWeek"));
|
|
7
|
+
const isThisWeek_1 = __importDefault(require("./isThisWeek"));
|
|
8
|
+
const predefinedTimeframes_1 = require("./predefinedTimeframes");
|
|
9
9
|
/**
|
|
10
10
|
* Check to see the date matches a predefined time frame
|
|
11
11
|
*/
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
var response = predefinedTimeframes_1.predefinedTimeframes.CUSTOM;
|
|
12
|
+
const getPredefinedTimeframe = ({ timeframe }) => {
|
|
13
|
+
let response = predefinedTimeframes_1.predefinedTimeframes.CUSTOM;
|
|
15
14
|
// If the selected date matches last week
|
|
16
15
|
if ((0, isLastWeek_1.default)(timeframe)) {
|
|
17
16
|
response = predefinedTimeframes_1.predefinedTimeframes.LAST_WEEK;
|
package/date/getSunday.js
CHANGED
|
@@ -3,29 +3,28 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
6
|
+
const getISODay_1 = __importDefault(require("date-fns/getISODay"));
|
|
7
|
+
const isSunday_1 = __importDefault(require("date-fns/isSunday"));
|
|
8
|
+
const subDays_1 = __importDefault(require("date-fns/subDays"));
|
|
9
|
+
const getDate_1 = __importDefault(require("./getDate"));
|
|
10
|
+
const getToday_1 = __importDefault(require("./getToday"));
|
|
11
11
|
/**
|
|
12
12
|
* Retrieve the closest last Sunday relative to the input or today.
|
|
13
13
|
* 0 weeksAgo - Tuesday (17th), return Sunday (14th)
|
|
14
14
|
* 1 weeksAgo - Tuesday (17th), return Monday (7th)
|
|
15
15
|
*/
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
var dateInstance;
|
|
16
|
+
const getSunday = ({ weeksAgo, input, setMidnight = true, setTimeZone = false }) => {
|
|
17
|
+
let dateInstance;
|
|
19
18
|
if (input) {
|
|
20
|
-
dateInstance = (0, getDate_1.default)({ input
|
|
19
|
+
dateInstance = (0, getDate_1.default)({ input, setMidnight, setTimeZone });
|
|
21
20
|
}
|
|
22
21
|
else {
|
|
23
22
|
// As we are getting today's date we don't want to convert this timezone
|
|
24
|
-
dateInstance = (0, getToday_1.default)({ setMidnight
|
|
23
|
+
dateInstance = (0, getToday_1.default)({ setMidnight });
|
|
25
24
|
}
|
|
26
25
|
if (!(0, isSunday_1.default)(dateInstance)) {
|
|
27
26
|
// Get the ISO Day of week (Monday - 1 to Sunday - 7)
|
|
28
|
-
|
|
27
|
+
const isoDay = (0, getISODay_1.default)(dateInstance);
|
|
29
28
|
// Move back to Monday
|
|
30
29
|
dateInstance = (0, subDays_1.default)(dateInstance, isoDay);
|
|
31
30
|
}
|
package/date/getThisWeek.js
CHANGED
|
@@ -3,25 +3,24 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
6
|
+
const getMonday_1 = __importDefault(require("./getMonday"));
|
|
7
|
+
const getNumber_1 = __importDefault(require("./getNumber"));
|
|
8
|
+
const getSunday_1 = __importDefault(require("./getSunday"));
|
|
9
|
+
const getTimeZoned_1 = require("./getTimeZoned");
|
|
10
10
|
/**
|
|
11
11
|
* Return an object of start/end predefined date of This Week.
|
|
12
12
|
* Creating a date from scratch (no user input), thus needs to be London time.
|
|
13
13
|
*/
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
var sunday = (0, getSunday_1.default)({
|
|
14
|
+
const getThisWeek = ({ setMidnight = true, setTimeZone = getTimeZoned_1.timeZoneLondon } = { setMidnight: true, setTimeZone: getTimeZoned_1.timeZoneLondon }) => {
|
|
15
|
+
const sunday = (0, getSunday_1.default)({
|
|
17
16
|
weeksAgo: -1,
|
|
18
|
-
setMidnight
|
|
19
|
-
setTimeZone
|
|
17
|
+
setMidnight,
|
|
18
|
+
setTimeZone,
|
|
20
19
|
});
|
|
21
|
-
|
|
20
|
+
const monday = (0, getMonday_1.default)({
|
|
22
21
|
weeksAgo: 0,
|
|
23
|
-
setMidnight
|
|
24
|
-
setTimeZone
|
|
22
|
+
setMidnight,
|
|
23
|
+
setTimeZone,
|
|
25
24
|
});
|
|
26
25
|
return {
|
|
27
26
|
end: (0, getNumber_1.default)({ input: sunday }),
|
package/date/getTimeZoned.js
CHANGED
|
@@ -4,26 +4,25 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.timeZoneLondon = void 0;
|
|
7
|
-
|
|
8
|
-
|
|
7
|
+
const date_fns_tz_1 = require("date-fns-tz");
|
|
8
|
+
const addMinutes_1 = __importDefault(require("date-fns/addMinutes"));
|
|
9
9
|
exports.timeZoneLondon = 'Europe/London';
|
|
10
10
|
/**
|
|
11
11
|
* Convert an input into a given timezone.
|
|
12
12
|
* We can't use getDate here as it becomes a circular issue.
|
|
13
13
|
* Returns a new Date instance.
|
|
14
14
|
*/
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
var dateInstance = input;
|
|
15
|
+
const getTimeZoned = ({ input, setTimeZone = exports.timeZoneLondon }) => {
|
|
16
|
+
let dateInstance = input;
|
|
18
17
|
if (setTimeZone) {
|
|
19
18
|
// Cannot convert YYYY-MM-DD into new Date as Safari doesn't support this
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
19
|
+
const dateString = (0, date_fns_tz_1.formatInTimeZone)(dateInstance, setTimeZone, 'yyyy-MM-dd HH:mm:ss');
|
|
20
|
+
const year = Number(dateString.substring(0, 4));
|
|
21
|
+
const month = Number(dateString.substring(5, 7)) - 1;
|
|
22
|
+
const day = Number(dateString.substring(8, 10));
|
|
23
|
+
const hours = Number(dateString.substring(11, 13));
|
|
24
|
+
const minutes = Number(dateString.substring(14, 16));
|
|
25
|
+
const seconds = Number(dateString.substring(17, 19));
|
|
27
26
|
dateInstance = new Date();
|
|
28
27
|
// Reset the date to the 1st initially at 1am
|
|
29
28
|
dateInstance.setDate(1);
|
package/date/getToday.js
CHANGED
|
@@ -26,17 +26,16 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
26
26
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
27
|
};
|
|
28
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
-
|
|
30
|
-
|
|
29
|
+
const getMidnight_1 = __importDefault(require("./getMidnight"));
|
|
30
|
+
const getTimeZoned_1 = __importStar(require("./getTimeZoned"));
|
|
31
31
|
/**
|
|
32
32
|
* Shortcut to get today's date.
|
|
33
33
|
* Creating a date from scratch (no user input), thus needs to be London time.
|
|
34
34
|
*/
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
today = (0,
|
|
39
|
-
today = (0, getMidnight_1.default)({ input: today, setMidnight: setMidnight });
|
|
35
|
+
const getToday = ({ setMidnight = true, setTimeZone = getTimeZoned_1.timeZoneLondon } = { setMidnight: true, setTimeZone: getTimeZoned_1.timeZoneLondon }) => {
|
|
36
|
+
let today = new Date();
|
|
37
|
+
today = (0, getTimeZoned_1.default)({ input: today, setTimeZone });
|
|
38
|
+
today = (0, getMidnight_1.default)({ input: today, setMidnight });
|
|
40
39
|
return today;
|
|
41
40
|
};
|
|
42
41
|
exports.default = getToday;
|
package/date/getTwoWeeksAgo.js
CHANGED
|
@@ -3,25 +3,24 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
6
|
+
const getMonday_1 = __importDefault(require("./getMonday"));
|
|
7
|
+
const getNumber_1 = __importDefault(require("./getNumber"));
|
|
8
|
+
const getSunday_1 = __importDefault(require("./getSunday"));
|
|
9
|
+
const getTimeZoned_1 = require("./getTimeZoned");
|
|
10
10
|
/**
|
|
11
11
|
* Return an object of start/end predefined date of Two Weeks Ago.
|
|
12
12
|
* Creating a date from scratch (no user input), thus needs to be London time.
|
|
13
13
|
*/
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
var sunday = (0, getSunday_1.default)({
|
|
14
|
+
const getTwoWeeksAgo = ({ setMidnight = true, setTimeZone = getTimeZoned_1.timeZoneLondon } = { setMidnight: true, setTimeZone: getTimeZoned_1.timeZoneLondon }) => {
|
|
15
|
+
const sunday = (0, getSunday_1.default)({
|
|
17
16
|
weeksAgo: 1,
|
|
18
|
-
setMidnight
|
|
19
|
-
setTimeZone
|
|
17
|
+
setMidnight,
|
|
18
|
+
setTimeZone,
|
|
20
19
|
});
|
|
21
|
-
|
|
20
|
+
const monday = (0, getMonday_1.default)({
|
|
22
21
|
weeksAgo: 2,
|
|
23
|
-
setMidnight
|
|
24
|
-
setTimeZone
|
|
22
|
+
setMidnight,
|
|
23
|
+
setTimeZone,
|
|
25
24
|
});
|
|
26
25
|
return {
|
|
27
26
|
end: (0, getNumber_1.default)({ input: sunday }),
|
package/date/getWeeksAgo.js
CHANGED
|
@@ -3,15 +3,14 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
6
|
+
const sub_1 = __importDefault(require("date-fns/sub"));
|
|
7
|
+
const getDate_1 = __importDefault(require("./getDate"));
|
|
8
|
+
const getNumber_1 = __importDefault(require("./getNumber"));
|
|
9
9
|
/**
|
|
10
10
|
* From a given input, move the date back X weeksAgo
|
|
11
11
|
*/
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
var dateInstance = (0, getDate_1.default)({ input: input, setMidnight: setMidnight, setTimeZone: setTimeZone });
|
|
12
|
+
const getWeeksAgo = ({ input, weeksAgo = 0, setMidnight = true, setTimeZone = false }) => {
|
|
13
|
+
let dateInstance = (0, getDate_1.default)({ input, setMidnight, setTimeZone });
|
|
15
14
|
dateInstance = (0, sub_1.default)(dateInstance, { weeks: weeksAgo });
|
|
16
15
|
return (0, getNumber_1.default)({ input: dateInstance });
|
|
17
16
|
};
|
package/date/getYesterday.js
CHANGED
|
@@ -26,18 +26,17 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
26
26
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
27
|
};
|
|
28
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
29
|
+
const subDays_1 = __importDefault(require("date-fns/subDays"));
|
|
30
|
+
const getTimeZoned_1 = __importStar(require("./getTimeZoned"));
|
|
31
|
+
const getToday_1 = __importDefault(require("./getToday"));
|
|
32
32
|
/**
|
|
33
33
|
* Shortcut to get yesterday's date.
|
|
34
34
|
* Creating a date from scratch (no user input), thus needs to be London time.
|
|
35
35
|
*/
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
yesterday = (0, getTimeZoned_1.default)({ input: yesterday, setTimeZone: setTimeZone });
|
|
36
|
+
const getYesterday = ({ setMidnight = true, setTimeZone = getTimeZoned_1.timeZoneLondon } = { setMidnight: true, setTimeZone: getTimeZoned_1.timeZoneLondon }) => {
|
|
37
|
+
const today = (0, getToday_1.default)({ setMidnight, setTimeZone: false });
|
|
38
|
+
let yesterday = (0, subDays_1.default)(today, 1);
|
|
39
|
+
yesterday = (0, getTimeZoned_1.default)({ input: yesterday, setTimeZone });
|
|
41
40
|
return yesterday;
|
|
42
41
|
};
|
|
43
42
|
exports.default = getYesterday;
|