@qrvey/utils 1.10.0-0 → 1.10.0-2
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/dist/charts/adapters/endpointData.js +0 -3
- package/dist/cjs/charts/adapters/endpointData.js +0 -3
- package/dist/cjs/dates/adapters/ISOToNumericOffset.d.ts +6 -0
- package/dist/cjs/dates/adapters/ISOToNumericOffset.js +21 -0
- package/dist/cjs/dates/adapters/index.d.ts +2 -0
- package/dist/cjs/dates/adapters/index.js +2 -0
- package/dist/cjs/dates/adapters/numericOffsetToISO.d.ts +6 -0
- package/dist/cjs/dates/adapters/numericOffsetToISO.js +29 -0
- package/dist/cjs/dates/constants/ISO_8601_REGEX.d.ts +1 -0
- package/dist/cjs/dates/constants/ISO_8601_REGEX.js +4 -0
- package/dist/cjs/dates/constants/TIMEZONE_TYPE.d.ts +5 -0
- package/dist/cjs/dates/constants/TIMEZONE_TYPE.js +9 -0
- package/dist/cjs/dates/constants/index.d.ts +1 -0
- package/dist/cjs/dates/constants/index.js +1 -0
- package/dist/cjs/dates/helpers/getDateByTimezone.d.ts +8 -0
- package/dist/cjs/dates/helpers/getDateByTimezone.js +41 -0
- package/dist/cjs/dates/helpers/getDateByTimezoneOffset.d.ts +7 -0
- package/dist/cjs/dates/helpers/getDateByTimezoneOffset.js +22 -0
- package/dist/cjs/dates/helpers/getTimezoneObject.d.ts +10 -0
- package/dist/cjs/dates/helpers/getTimezoneObject.js +21 -0
- package/dist/cjs/dates/helpers/getTimezoneOffsetByType.d.ts +13 -0
- package/dist/cjs/dates/helpers/getTimezoneOffsetByType.js +27 -0
- package/dist/cjs/dates/helpers/index.d.ts +4 -1
- package/dist/cjs/dates/helpers/index.js +4 -1
- package/dist/cjs/dates/helpers/isValidISOOffset.d.ts +7 -0
- package/dist/cjs/dates/helpers/isValidISOOffset.js +17 -0
- package/dist/cjs/dates/interfaces/IBTimezone.d.ts +7 -0
- package/dist/cjs/dates/interfaces/IBTimezone.js +2 -0
- package/dist/cjs/dates/interfaces/IBTimezoneType.d.ts +2 -0
- package/dist/cjs/dates/interfaces/IBTimezoneType.js +2 -0
- package/dist/cjs/dates/interfaces/IDTimezone.d.ts +6 -0
- package/dist/cjs/dates/interfaces/IDTimezone.js +2 -0
- package/dist/cjs/dates/interfaces/IDTimezoneOffset.d.ts +1 -0
- package/dist/cjs/dates/interfaces/IDTimezoneOffset.js +2 -0
- package/dist/cjs/dates/interfaces/IDTimezoneType.d.ts +2 -0
- package/dist/cjs/dates/interfaces/IDTimezoneType.js +2 -0
- package/dist/cjs/dates/interfaces/IGetDateByTimezoneSettings.d.ts +6 -0
- package/dist/cjs/dates/interfaces/IGetDateByTimezoneSettings.js +2 -0
- package/dist/cjs/dates/interfaces/index.d.ts +6 -0
- package/dist/cjs/dates/interfaces/index.js +6 -0
- package/dist/cjs/filters/helpers/builder/getFilterBuilderGeneralConfig.js +1 -1
- package/dist/cjs/filters/helpers/common/getFiltersByTimezone.d.ts +10 -0
- package/dist/cjs/filters/helpers/common/getFiltersByTimezone.js +26 -0
- package/dist/cjs/filters/helpers/common/index.d.ts +1 -0
- package/dist/cjs/filters/helpers/common/index.js +1 -0
- package/dist/cjs/filters/interfaces/ui/IFUTransformFilterValuesSettings.d.ts +6 -0
- package/dist/cjs/format/format.d.ts +1 -1
- package/dist/cjs/format/format.js +10 -4
- package/dist/cjs/general/index.d.ts +1 -0
- package/dist/cjs/general/index.js +1 -0
- package/dist/cjs/general/numeric/getSign.d.ts +6 -0
- package/dist/cjs/general/numeric/getSign.js +12 -0
- package/dist/cjs/general/numeric/index.d.ts +1 -0
- package/dist/cjs/general/numeric/index.js +17 -0
- package/dist/cjs/general/object/applyTimezoneDeep.d.ts +8 -0
- package/dist/cjs/general/object/applyTimezoneDeep.js +48 -0
- package/dist/cjs/general/object/index.d.ts +1 -0
- package/dist/cjs/general/object/index.js +1 -0
- package/dist/cjs/interfaces/format/IFormatConfig.Interface.d.ts +1 -0
- package/dist/cjs/interfaces/general/IWidgetConfig.d.ts +2 -1
- package/dist/cjs/qrvey/helpers/transformValue.js +34 -6
- package/dist/cjs/qrvey/interfaces/IBDataset.d.ts +2 -0
- package/dist/cjs/qrvey/interfaces/IBModel.d.ts +5 -0
- package/dist/cjs/qrvey/interfaces/IDataset.d.ts +3 -1
- package/dist/cjs/qrvey/interfaces/IModel.d.ts +3 -1
- package/dist/cjs/qrvey/interfaces/ITransformValueSettings.d.ts +6 -0
- package/dist/cjs/services/adapters/BDatasetsToUIDatasets.adapter.js +2 -0
- package/dist/cjs/services/adapters/BModelToUIModel.adapter.js +2 -0
- package/dist/cjs/services/adapters/BTimezoneToUITimezone.d.ts +8 -0
- package/dist/cjs/services/adapters/BTimezoneToUITimezone.js +18 -0
- package/dist/cjs/services/helpers/Request.d.ts +1 -1
- package/dist/cjs/services/helpers/Request.js +11 -5
- package/dist/dates/adapters/ISOToNumericOffset.d.ts +6 -0
- package/dist/dates/adapters/ISOToNumericOffset.js +17 -0
- package/dist/dates/adapters/index.d.ts +2 -0
- package/dist/dates/adapters/index.js +2 -0
- package/dist/dates/adapters/numericOffsetToISO.d.ts +6 -0
- package/dist/dates/adapters/numericOffsetToISO.js +25 -0
- package/dist/dates/constants/ISO_8601_REGEX.d.ts +1 -0
- package/dist/dates/constants/ISO_8601_REGEX.js +1 -0
- package/dist/dates/constants/TIMEZONE_TYPE.d.ts +5 -0
- package/dist/dates/constants/TIMEZONE_TYPE.js +6 -0
- package/dist/dates/constants/index.d.ts +1 -0
- package/dist/dates/constants/index.js +1 -0
- package/dist/dates/helpers/getDateByTimezone.d.ts +8 -0
- package/dist/dates/helpers/getDateByTimezone.js +37 -0
- package/dist/dates/helpers/getDateByTimezoneOffset.d.ts +7 -0
- package/dist/dates/helpers/getDateByTimezoneOffset.js +18 -0
- package/dist/dates/helpers/getTimezoneObject.d.ts +10 -0
- package/dist/dates/helpers/getTimezoneObject.js +17 -0
- package/dist/dates/helpers/getTimezoneOffsetByType.d.ts +13 -0
- package/dist/dates/helpers/getTimezoneOffsetByType.js +23 -0
- package/dist/dates/helpers/index.d.ts +4 -1
- package/dist/dates/helpers/index.js +4 -1
- package/dist/dates/helpers/isValidISOOffset.d.ts +7 -0
- package/dist/dates/helpers/isValidISOOffset.js +13 -0
- package/dist/dates/interfaces/IBTimezone.d.ts +7 -0
- package/dist/dates/interfaces/IBTimezone.js +1 -0
- package/dist/dates/interfaces/IBTimezoneType.d.ts +2 -0
- package/dist/dates/interfaces/IBTimezoneType.js +1 -0
- package/dist/dates/interfaces/IDTimezone.d.ts +6 -0
- package/dist/dates/interfaces/IDTimezone.js +1 -0
- package/dist/dates/interfaces/IDTimezoneOffset.d.ts +1 -0
- package/dist/dates/interfaces/IDTimezoneOffset.js +1 -0
- package/dist/dates/interfaces/IDTimezoneType.d.ts +2 -0
- package/dist/dates/interfaces/IDTimezoneType.js +1 -0
- package/dist/dates/interfaces/IGetDateByTimezoneSettings.d.ts +6 -0
- package/dist/dates/interfaces/IGetDateByTimezoneSettings.js +1 -0
- package/dist/dates/interfaces/index.d.ts +6 -0
- package/dist/dates/interfaces/index.js +6 -0
- package/dist/filters/helpers/builder/getFilterBuilderGeneralConfig.js +1 -1
- package/dist/filters/helpers/common/getFiltersByTimezone.d.ts +10 -0
- package/dist/filters/helpers/common/getFiltersByTimezone.js +22 -0
- package/dist/filters/helpers/common/index.d.ts +1 -0
- package/dist/filters/helpers/common/index.js +1 -0
- package/dist/filters/interfaces/ui/IFUTransformFilterValuesSettings.d.ts +6 -0
- package/dist/format/format.d.ts +1 -1
- package/dist/format/format.js +10 -4
- package/dist/general/index.d.ts +1 -0
- package/dist/general/index.js +1 -0
- package/dist/general/numeric/getSign.d.ts +6 -0
- package/dist/general/numeric/getSign.js +8 -0
- package/dist/general/numeric/index.d.ts +1 -0
- package/dist/general/numeric/index.js +1 -0
- package/dist/general/object/applyTimezoneDeep.d.ts +8 -0
- package/dist/general/object/applyTimezoneDeep.js +44 -0
- package/dist/general/object/index.d.ts +1 -0
- package/dist/general/object/index.js +1 -0
- package/dist/interfaces/format/IFormatConfig.Interface.d.ts +1 -0
- package/dist/interfaces/general/IWidgetConfig.d.ts +2 -1
- package/dist/qrvey/helpers/transformValue.js +34 -6
- package/dist/qrvey/interfaces/IBDataset.d.ts +2 -0
- package/dist/qrvey/interfaces/IBModel.d.ts +5 -0
- package/dist/qrvey/interfaces/IDataset.d.ts +3 -1
- package/dist/qrvey/interfaces/IModel.d.ts +3 -1
- package/dist/qrvey/interfaces/ITransformValueSettings.d.ts +6 -0
- package/dist/services/adapters/BDatasetsToUIDatasets.adapter.js +2 -0
- package/dist/services/adapters/BModelToUIModel.adapter.js +2 -0
- package/dist/services/adapters/BTimezoneToUITimezone.d.ts +8 -0
- package/dist/services/adapters/BTimezoneToUITimezone.js +14 -0
- package/dist/services/helpers/Request.d.ts +1 -1
- package/dist/services/helpers/Request.js +11 -5
- package/package.json +5 -5
- package/dist/cjs/dates/helpers/adjustTimezone.d.ts +0 -6
- package/dist/cjs/dates/helpers/adjustTimezone.js +0 -19
- package/dist/dates/helpers/adjustTimezone.d.ts +0 -6
- package/dist/dates/helpers/adjustTimezone.js +0 -15
|
@@ -401,7 +401,6 @@ export function configMetricData(metricObj //
|
|
|
401
401
|
}
|
|
402
402
|
if (data.dateColumn) {
|
|
403
403
|
const dateColum = data.dateColumn.id;
|
|
404
|
-
const timeZoneOffset = 0;
|
|
405
404
|
// TIME PERIOD
|
|
406
405
|
try {
|
|
407
406
|
const timePeriod = data.timePeriod.label;
|
|
@@ -409,7 +408,6 @@ export function configMetricData(metricObj //
|
|
|
409
408
|
id: dateColum,
|
|
410
409
|
type: timePeriod,
|
|
411
410
|
dataType: data.dateColumn.type,
|
|
412
|
-
timeZoneOffset,
|
|
413
411
|
};
|
|
414
412
|
if (timePeriod === "CUSTOM_RANGE") {
|
|
415
413
|
const type = data.timePeriodCustomRange.label;
|
|
@@ -442,7 +440,6 @@ export function configMetricData(metricObj //
|
|
|
442
440
|
id: dateColum,
|
|
443
441
|
type: comparison,
|
|
444
442
|
dataType: data.dateColumn.type,
|
|
445
|
-
timeZoneOffset,
|
|
446
443
|
};
|
|
447
444
|
if (comparison === "CUSTOM_RANGE") {
|
|
448
445
|
const type = data.comparisonCustomRange.label;
|
|
@@ -405,7 +405,6 @@ function configMetricData(metricObj //
|
|
|
405
405
|
}
|
|
406
406
|
if (data.dateColumn) {
|
|
407
407
|
const dateColum = data.dateColumn.id;
|
|
408
|
-
const timeZoneOffset = 0;
|
|
409
408
|
// TIME PERIOD
|
|
410
409
|
try {
|
|
411
410
|
const timePeriod = data.timePeriod.label;
|
|
@@ -413,7 +412,6 @@ function configMetricData(metricObj //
|
|
|
413
412
|
id: dateColum,
|
|
414
413
|
type: timePeriod,
|
|
415
414
|
dataType: data.dateColumn.type,
|
|
416
|
-
timeZoneOffset,
|
|
417
415
|
};
|
|
418
416
|
if (timePeriod === "CUSTOM_RANGE") {
|
|
419
417
|
const type = data.timePeriodCustomRange.label;
|
|
@@ -446,7 +444,6 @@ function configMetricData(metricObj //
|
|
|
446
444
|
id: dateColum,
|
|
447
445
|
type: comparison,
|
|
448
446
|
dataType: data.dateColumn.type,
|
|
449
|
-
timeZoneOffset,
|
|
450
447
|
};
|
|
451
448
|
if (comparison === "CUSTOM_RANGE") {
|
|
452
449
|
const type = data.comparisonCustomRange.label;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ISOToNumericOffset = void 0;
|
|
4
|
+
const isNaNV2_1 = require("../../general/mix/isNaNV2");
|
|
5
|
+
const isValidISOOffset_1 = require("../helpers/isValidISOOffset");
|
|
6
|
+
/**
|
|
7
|
+
* Gets the numeric offset (minutes) from the ISO offset (string)
|
|
8
|
+
* @param {string} offset the timezone offset
|
|
9
|
+
* @returns {number} the offset in minutes
|
|
10
|
+
*/
|
|
11
|
+
function ISOToNumericOffset(offset) {
|
|
12
|
+
if (typeof offset === "string" && offset === "browser")
|
|
13
|
+
return -1 * new Date().getTimezoneOffset();
|
|
14
|
+
if (typeof offset === "number" || !(0, isNaNV2_1.isNaNV2)(offset))
|
|
15
|
+
return +offset;
|
|
16
|
+
if (!(0, isValidISOOffset_1.isValidISOOffset)(offset))
|
|
17
|
+
return 0;
|
|
18
|
+
const [hours, minutes] = offset.split(":").map(Number);
|
|
19
|
+
return hours * 60 + minutes;
|
|
20
|
+
}
|
|
21
|
+
exports.ISOToNumericOffset = ISOToNumericOffset;
|
|
@@ -5,8 +5,10 @@ export * from "./dateToQuarterYear";
|
|
|
5
5
|
export * from "./dateToWeekYear";
|
|
6
6
|
export * from "./dateToYear";
|
|
7
7
|
export * from "./hmsToDate";
|
|
8
|
+
export * from "./ISOToNumericOffset";
|
|
8
9
|
export * from "./mdyDateToDate";
|
|
9
10
|
export * from "./monthYearToDate";
|
|
11
|
+
export * from "./numericOffsetToISO";
|
|
10
12
|
export * from "./quarterYearToDate";
|
|
11
13
|
export * from "./weekYearToDate";
|
|
12
14
|
export * from "./yearToDate";
|
|
@@ -21,8 +21,10 @@ __exportStar(require("./dateToQuarterYear"), exports);
|
|
|
21
21
|
__exportStar(require("./dateToWeekYear"), exports);
|
|
22
22
|
__exportStar(require("./dateToYear"), exports);
|
|
23
23
|
__exportStar(require("./hmsToDate"), exports);
|
|
24
|
+
__exportStar(require("./ISOToNumericOffset"), exports);
|
|
24
25
|
__exportStar(require("./mdyDateToDate"), exports);
|
|
25
26
|
__exportStar(require("./monthYearToDate"), exports);
|
|
27
|
+
__exportStar(require("./numericOffsetToISO"), exports);
|
|
26
28
|
__exportStar(require("./quarterYearToDate"), exports);
|
|
27
29
|
__exportStar(require("./weekYearToDate"), exports);
|
|
28
30
|
__exportStar(require("./yearToDate"), exports);
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.numericOffsetToISO = void 0;
|
|
4
|
+
const isNaNV2_1 = require("../../general/mix/isNaNV2");
|
|
5
|
+
const getSign_1 = require("../../general/numeric/getSign");
|
|
6
|
+
const padLeadingZeros_1 = require("../../general/string/padLeadingZeros");
|
|
7
|
+
const isValidISOOffset_1 = require("../helpers/isValidISOOffset");
|
|
8
|
+
/**
|
|
9
|
+
* Gets the ISO offset From the numeric offset (minutes)
|
|
10
|
+
* @param {number} offset the timezone offset
|
|
11
|
+
* @returns {string} the offset in minutes
|
|
12
|
+
*/
|
|
13
|
+
function numericOffsetToISO(offset) {
|
|
14
|
+
let newOffset = offset;
|
|
15
|
+
if (typeof offset === "string" && offset === "browser")
|
|
16
|
+
newOffset = -1 * new Date().getTimezoneOffset();
|
|
17
|
+
if (typeof newOffset === "string" && (0, isValidISOOffset_1.isValidISOOffset)(newOffset))
|
|
18
|
+
return String(newOffset);
|
|
19
|
+
if (typeof newOffset !== "number" && (0, isNaNV2_1.isNaNV2)(newOffset))
|
|
20
|
+
return "+00:00";
|
|
21
|
+
if (typeof newOffset === "string" && !(0, isNaNV2_1.isNaNV2)(newOffset))
|
|
22
|
+
newOffset = +newOffset;
|
|
23
|
+
const sign = (0, getSign_1.getSign)(newOffset);
|
|
24
|
+
newOffset = Math.abs(newOffset);
|
|
25
|
+
const hours = (0, padLeadingZeros_1.padLeadingZeros)(Math.floor(newOffset / 60), 2);
|
|
26
|
+
const minutes = (0, padLeadingZeros_1.padLeadingZeros)(newOffset % 60, 2);
|
|
27
|
+
return `${sign}${hours}:${minutes}`;
|
|
28
|
+
}
|
|
29
|
+
exports.numericOffsetToISO = numericOffsetToISO;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const ISO_8601_REGEX: RegExp;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.TIMEZONE_TYPE = void 0;
|
|
4
|
+
var TIMEZONE_TYPE;
|
|
5
|
+
(function (TIMEZONE_TYPE) {
|
|
6
|
+
TIMEZONE_TYPE["BROWSER"] = "BROWSER";
|
|
7
|
+
TIMEZONE_TYPE["DEFAULT"] = "DEFAULT";
|
|
8
|
+
TIMEZONE_TYPE["FIXED"] = "FIXED";
|
|
9
|
+
})(TIMEZONE_TYPE = exports.TIMEZONE_TYPE || (exports.TIMEZONE_TYPE = {}));
|
|
@@ -38,6 +38,7 @@ export * from "./DATE_YEAR_MONTHS_MMMM";
|
|
|
38
38
|
export * from "./DATE_YEAR_QUARTERS";
|
|
39
39
|
export * from "./DATE_YEAR_QUARTERS_RANGE";
|
|
40
40
|
export * from "./DATETIME_COLUMN_FORMAT";
|
|
41
|
+
export * from "./ISO_8601_REGEX";
|
|
41
42
|
export * from "./TIME_GROUPING_PROPERTY_INFO_LIST";
|
|
42
43
|
export * from "./TIME_GROUPING_PROPERTY_INFO";
|
|
43
44
|
export * from "./TIME_GROUPING_PROPERTY_LABEL";
|
|
@@ -54,6 +54,7 @@ __exportStar(require("./DATE_YEAR_MONTHS_MMMM"), exports);
|
|
|
54
54
|
__exportStar(require("./DATE_YEAR_QUARTERS"), exports);
|
|
55
55
|
__exportStar(require("./DATE_YEAR_QUARTERS_RANGE"), exports);
|
|
56
56
|
__exportStar(require("./DATETIME_COLUMN_FORMAT"), exports);
|
|
57
|
+
__exportStar(require("./ISO_8601_REGEX"), exports);
|
|
57
58
|
__exportStar(require("./TIME_GROUPING_PROPERTY_INFO_LIST"), exports);
|
|
58
59
|
__exportStar(require("./TIME_GROUPING_PROPERTY_INFO"), exports);
|
|
59
60
|
__exportStar(require("./TIME_GROUPING_PROPERTY_LABEL"), exports);
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { IGetDateByTimezoneSettings } from "../interfaces/IGetDateByTimezoneSettings";
|
|
2
|
+
/**
|
|
3
|
+
* Gets a date value in the given timezone
|
|
4
|
+
* @param {string} date the date
|
|
5
|
+
* @param {IGetDateByTimezoneSettings} settings The settings of the getDateByTimezone function
|
|
6
|
+
* @returns {string} A transformed value
|
|
7
|
+
*/
|
|
8
|
+
export declare function getDateByTimezone(date: string, settings: IGetDateByTimezoneSettings): string;
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getDateByTimezone = void 0;
|
|
4
|
+
const isEmpty_1 = require("../../general/mix/isEmpty");
|
|
5
|
+
const DATE_GROUPING_TIME_PROPERTY_1 = require("../constants/DATE_GROUPING_TIME_PROPERTY");
|
|
6
|
+
const TIMEZONE_TYPE_1 = require("../constants/TIMEZONE_TYPE");
|
|
7
|
+
const getDateByDateFormat_1 = require("./getDateByDateFormat");
|
|
8
|
+
const getDateByTimezoneOffset_1 = require("./getDateByTimezoneOffset");
|
|
9
|
+
const getDateFormatByProperty_1 = require("./getDateFormatByProperty");
|
|
10
|
+
const getFormattedDateByFormat_1 = require("./getFormattedDateByFormat");
|
|
11
|
+
/**
|
|
12
|
+
* Gets a date value in the given timezone
|
|
13
|
+
* @param {string} date the date
|
|
14
|
+
* @param {IGetDateByTimezoneSettings} settings The settings of the getDateByTimezone function
|
|
15
|
+
* @returns {string} A transformed value
|
|
16
|
+
*/
|
|
17
|
+
function getDateByTimezone(date, settings) {
|
|
18
|
+
const defaultSettings = getDefaultSettings(settings);
|
|
19
|
+
const isDateTime = [
|
|
20
|
+
DATE_GROUPING_TIME_PROPERTY_1.DATE_GROUPING_TIME_PROPERTY.HOUR,
|
|
21
|
+
DATE_GROUPING_TIME_PROPERTY_1.DATE_GROUPING_TIME_PROPERTY.MINUTE,
|
|
22
|
+
DATE_GROUPING_TIME_PROPERTY_1.DATE_GROUPING_TIME_PROPERTY.SECOND,
|
|
23
|
+
].includes(defaultSettings.property);
|
|
24
|
+
if (!(0, isEmpty_1.isEmpty)(defaultSettings.timezone.offset) && isDateTime) {
|
|
25
|
+
const dateFormat = (0, getDateFormatByProperty_1.getDateFormatByProperty)(defaultSettings.property);
|
|
26
|
+
const formattedDate = (0, getDateByDateFormat_1.getDateByDateFormat)(date, dateFormat);
|
|
27
|
+
const timezonedDate = (0, getDateByTimezoneOffset_1.getDateByTimezoneOffset)(formattedDate, defaultSettings.timezone.offset);
|
|
28
|
+
return (0, getFormattedDateByFormat_1.getFormattedDateByFormat)(timezonedDate, dateFormat);
|
|
29
|
+
}
|
|
30
|
+
return date;
|
|
31
|
+
}
|
|
32
|
+
exports.getDateByTimezone = getDateByTimezone;
|
|
33
|
+
function getDefaultSettings(settings) {
|
|
34
|
+
return {
|
|
35
|
+
property: settings.property,
|
|
36
|
+
timezone: (settings === null || settings === void 0 ? void 0 : settings.timezone) || {
|
|
37
|
+
offset: undefined,
|
|
38
|
+
type: TIMEZONE_TYPE_1.TIMEZONE_TYPE.DEFAULT,
|
|
39
|
+
},
|
|
40
|
+
};
|
|
41
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Gets a Date with the given offset of the Timezone.
|
|
3
|
+
* No given an offset the default is going to be set by the browser
|
|
4
|
+
* @param date String, object or millisencond number of the date
|
|
5
|
+
* @returns updated Date object
|
|
6
|
+
*/
|
|
7
|
+
export declare function getDateByTimezoneOffset(date: string | Date | number, offset?: number | string): Date;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getDateByTimezoneOffset = void 0;
|
|
4
|
+
const ISOToNumericOffset_1 = require("../adapters/ISOToNumericOffset");
|
|
5
|
+
const DATE_FORMAT_1 = require("../constants/DATE_FORMAT");
|
|
6
|
+
const isValidPotentialDate_1 = require("./isValidPotentialDate");
|
|
7
|
+
const validateDate_1 = require("./validateDate");
|
|
8
|
+
/**
|
|
9
|
+
* Gets a Date with the given offset of the Timezone.
|
|
10
|
+
* No given an offset the default is going to be set by the browser
|
|
11
|
+
* @param date String, object or millisencond number of the date
|
|
12
|
+
* @returns updated Date object
|
|
13
|
+
*/
|
|
14
|
+
function getDateByTimezoneOffset(date, offset) {
|
|
15
|
+
if (!(0, isValidPotentialDate_1.isValidPotentialDate)(date) ||
|
|
16
|
+
(typeof date === "string" && !(0, validateDate_1.validateDate)(date, DATE_FORMAT_1.DATE_FORMAT.DAY)))
|
|
17
|
+
return date;
|
|
18
|
+
const dt = new Date(date.valueOf());
|
|
19
|
+
const newOffset = (0, ISOToNumericOffset_1.ISOToNumericOffset)(offset);
|
|
20
|
+
return new Date(+dt + newOffset * 1000 * 60);
|
|
21
|
+
}
|
|
22
|
+
exports.getDateByTimezoneOffset = getDateByTimezoneOffset;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { IDataset } from "../../qrvey/interfaces/IDataset";
|
|
2
|
+
import { IModel } from "../../qrvey/interfaces/IModel";
|
|
3
|
+
import { IDTimezone } from "../interfaces/IDTimezone";
|
|
4
|
+
/**
|
|
5
|
+
* Gets the timezone object by the given argument or the model object
|
|
6
|
+
* @param {IDTimezone} timezone the timezone object
|
|
7
|
+
* @param {IModel | IDataset} model the info of the dataset (model)
|
|
8
|
+
* @returns a new timezone object
|
|
9
|
+
*/
|
|
10
|
+
export declare function getTimezoneObject(timezone: IDTimezone, model: IModel | IDataset): IDTimezone;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getTimezoneObject = void 0;
|
|
4
|
+
const TIMEZONE_TYPE_1 = require("../constants/TIMEZONE_TYPE");
|
|
5
|
+
const getTimezoneOffsetByType_1 = require("./getTimezoneOffsetByType");
|
|
6
|
+
/**
|
|
7
|
+
* Gets the timezone object by the given argument or the model object
|
|
8
|
+
* @param {IDTimezone} timezone the timezone object
|
|
9
|
+
* @param {IModel | IDataset} model the info of the dataset (model)
|
|
10
|
+
* @returns a new timezone object
|
|
11
|
+
*/
|
|
12
|
+
function getTimezoneObject(timezone, model) {
|
|
13
|
+
var _a, _b;
|
|
14
|
+
const offset = (timezone === null || timezone === void 0 ? void 0 : timezone.offset) || ((_a = model === null || model === void 0 ? void 0 : model.timezone) === null || _a === void 0 ? void 0 : _a.offset) || "+00:00";
|
|
15
|
+
const type = (timezone === null || timezone === void 0 ? void 0 : timezone.type) || ((_b = model === null || model === void 0 ? void 0 : model.timezone) === null || _b === void 0 ? void 0 : _b.type) || TIMEZONE_TYPE_1.TIMEZONE_TYPE.DEFAULT;
|
|
16
|
+
return {
|
|
17
|
+
offset: (0, getTimezoneOffsetByType_1.getTimezoneOffsetByType)({ offset, type }),
|
|
18
|
+
type,
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
exports.getTimezoneObject = getTimezoneObject;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { IBTimezone } from "../interfaces/IBTimezone";
|
|
2
|
+
import { IDTimezone } from "../interfaces/IDTimezone";
|
|
3
|
+
import { IDTimezoneOffset } from "../interfaces/IDTimezoneOffset";
|
|
4
|
+
/**
|
|
5
|
+
* Gets the timezone offset by the timezone type.
|
|
6
|
+
* For browser types, it is calculated by a Date instance
|
|
7
|
+
* Default types is UTC-0
|
|
8
|
+
* Undefined or Fixed types is gotten by the offset property
|
|
9
|
+
* @param {IDTimezoneType} type the timezone type
|
|
10
|
+
* @param {IDTimezone | IBTimezone} timezone the timezone object
|
|
11
|
+
* @returns {IDTimezoneOffset} the offset of the timezone
|
|
12
|
+
*/
|
|
13
|
+
export declare function getTimezoneOffsetByType(timezone: IDTimezone | IBTimezone): IDTimezoneOffset;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getTimezoneOffsetByType = void 0;
|
|
4
|
+
const isEmpty_1 = require("../../general/mix/isEmpty");
|
|
5
|
+
const numericOffsetToISO_1 = require("../adapters/numericOffsetToISO");
|
|
6
|
+
const TIMEZONE_TYPE_1 = require("../constants/TIMEZONE_TYPE");
|
|
7
|
+
/**
|
|
8
|
+
* Gets the timezone offset by the timezone type.
|
|
9
|
+
* For browser types, it is calculated by a Date instance
|
|
10
|
+
* Default types is UTC-0
|
|
11
|
+
* Undefined or Fixed types is gotten by the offset property
|
|
12
|
+
* @param {IDTimezoneType} type the timezone type
|
|
13
|
+
* @param {IDTimezone | IBTimezone} timezone the timezone object
|
|
14
|
+
* @returns {IDTimezoneOffset} the offset of the timezone
|
|
15
|
+
*/
|
|
16
|
+
function getTimezoneOffsetByType(timezone) {
|
|
17
|
+
if ((0, isEmpty_1.isEmpty)(timezone))
|
|
18
|
+
return "+00:00";
|
|
19
|
+
if (timezone.type === TIMEZONE_TYPE_1.TIMEZONE_TYPE.BROWSER) {
|
|
20
|
+
return (0, numericOffsetToISO_1.numericOffsetToISO)("browser");
|
|
21
|
+
}
|
|
22
|
+
else if (timezone.type === TIMEZONE_TYPE_1.TIMEZONE_TYPE.DEFAULT) {
|
|
23
|
+
return "+00:00";
|
|
24
|
+
}
|
|
25
|
+
return timezone.offset || timezone.numericOffset || "+00:00";
|
|
26
|
+
}
|
|
27
|
+
exports.getTimezoneOffsetByType = getTimezoneOffsetByType;
|
|
@@ -1,12 +1,15 @@
|
|
|
1
|
-
export * from "./adjustTimezone";
|
|
2
1
|
export * from "./areIncludedDateTokens";
|
|
3
2
|
export * from "./getDateByDateFormat";
|
|
3
|
+
export * from "./getDateByTimezone";
|
|
4
|
+
export * from "./getDateByTimezoneOffset";
|
|
4
5
|
export * from "./getDateFormatByProperty";
|
|
5
6
|
export * from "./getDateFormatRegularExpressionInArray";
|
|
6
7
|
export * from "./getDatePickerPickLevel";
|
|
7
8
|
export * from "./getDateRange";
|
|
8
9
|
export * from "./getFormattedDateByFormat";
|
|
9
10
|
export * from "./getSeparatorByDateFormat";
|
|
11
|
+
export * from "./getTimezoneObject";
|
|
12
|
+
export * from "./getTimezoneOffsetByType";
|
|
10
13
|
export * from "./getWeek";
|
|
11
14
|
export * from "./isValidDateObject";
|
|
12
15
|
export * from "./isValidPotentialDate";
|
|
@@ -14,15 +14,18 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./adjustTimezone"), exports);
|
|
18
17
|
__exportStar(require("./areIncludedDateTokens"), exports);
|
|
19
18
|
__exportStar(require("./getDateByDateFormat"), exports);
|
|
19
|
+
__exportStar(require("./getDateByTimezone"), exports);
|
|
20
|
+
__exportStar(require("./getDateByTimezoneOffset"), exports);
|
|
20
21
|
__exportStar(require("./getDateFormatByProperty"), exports);
|
|
21
22
|
__exportStar(require("./getDateFormatRegularExpressionInArray"), exports);
|
|
22
23
|
__exportStar(require("./getDatePickerPickLevel"), exports);
|
|
23
24
|
__exportStar(require("./getDateRange"), exports);
|
|
24
25
|
__exportStar(require("./getFormattedDateByFormat"), exports);
|
|
25
26
|
__exportStar(require("./getSeparatorByDateFormat"), exports);
|
|
27
|
+
__exportStar(require("./getTimezoneObject"), exports);
|
|
28
|
+
__exportStar(require("./getTimezoneOffsetByType"), exports);
|
|
26
29
|
__exportStar(require("./getWeek"), exports);
|
|
27
30
|
__exportStar(require("./isValidDateObject"), exports);
|
|
28
31
|
__exportStar(require("./isValidPotentialDate"), exports);
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Validate if offset uses a valid ISO 8601 offset specification
|
|
3
|
+
* - If the given offset is a numeric, returns an invalid flag.
|
|
4
|
+
* @param {string} offset the timezone offset
|
|
5
|
+
* @returns {boolean} true if the given offset is valid
|
|
6
|
+
*/
|
|
7
|
+
export declare function isValidISOOffset(offset: number | string): boolean;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isValidISOOffset = void 0;
|
|
4
|
+
const ISO_8601_REGEX_1 = require("../constants/ISO_8601_REGEX");
|
|
5
|
+
/**
|
|
6
|
+
* Validate if offset uses a valid ISO 8601 offset specification
|
|
7
|
+
* - If the given offset is a numeric, returns an invalid flag.
|
|
8
|
+
* @param {string} offset the timezone offset
|
|
9
|
+
* @returns {boolean} true if the given offset is valid
|
|
10
|
+
*/
|
|
11
|
+
function isValidISOOffset(offset) {
|
|
12
|
+
if (typeof offset !== "string")
|
|
13
|
+
return false;
|
|
14
|
+
const newOffset = (offset || "").trim();
|
|
15
|
+
return ISO_8601_REGEX_1.ISO_8601_REGEX.test(newOffset);
|
|
16
|
+
}
|
|
17
|
+
exports.isValidISOOffset = isValidISOOffset;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export type IDTimezoneOffset = number | string;
|
|
@@ -1,3 +1,9 @@
|
|
|
1
|
+
export * from "./IBTimezone";
|
|
2
|
+
export * from "./IBTimezoneType";
|
|
1
3
|
export * from "./IDateFormat";
|
|
2
4
|
export * from "./IDateGroupingProperty";
|
|
3
5
|
export * from "./IDFDateToHmsSettings";
|
|
6
|
+
export * from "./IDTimezone";
|
|
7
|
+
export * from "./IDTimezoneOffset";
|
|
8
|
+
export * from "./IDTimezoneType";
|
|
9
|
+
export * from "./IGetDateByTimezoneSettings";
|
|
@@ -14,6 +14,12 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./IBTimezone"), exports);
|
|
18
|
+
__exportStar(require("./IBTimezoneType"), exports);
|
|
17
19
|
__exportStar(require("./IDateFormat"), exports);
|
|
18
20
|
__exportStar(require("./IDateGroupingProperty"), exports);
|
|
19
21
|
__exportStar(require("./IDFDateToHmsSettings"), exports);
|
|
22
|
+
__exportStar(require("./IDTimezone"), exports);
|
|
23
|
+
__exportStar(require("./IDTimezoneOffset"), exports);
|
|
24
|
+
__exportStar(require("./IDTimezoneType"), exports);
|
|
25
|
+
__exportStar(require("./IGetDateByTimezoneSettings"), exports);
|
|
@@ -14,7 +14,7 @@ function getFilterBuilderGeneralConfig(config = {}) {
|
|
|
14
14
|
domain: config.domain,
|
|
15
15
|
i18n: config.i18n,
|
|
16
16
|
qv_token: config.qv_token,
|
|
17
|
-
|
|
17
|
+
timezone: config.timezone,
|
|
18
18
|
userid: (0, getAttribute_1.getAttribute)(config, "user_id") || config.userid,
|
|
19
19
|
};
|
|
20
20
|
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { IDTimezone } from "../../../dates/interfaces/IDTimezone";
|
|
2
|
+
import { IFSData } from "../../interfaces/common/IFSData";
|
|
3
|
+
import { IFUData } from "../../interfaces/ui/IFUData";
|
|
4
|
+
/**
|
|
5
|
+
* Gets and transforms the Filter Data by the Timezone object
|
|
6
|
+
* @param {IFSData | IFUData} filterData the filter data
|
|
7
|
+
* @param {IDTimezone} timezone the timezone object
|
|
8
|
+
* @returns {IFSData | IFUData} the new filter data with the transformed datetime values
|
|
9
|
+
*/
|
|
10
|
+
export declare function getFiltersByTimezone(filterData: IFSData | IFUData, timezone: IDTimezone): IFUData | IFSData;
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getFiltersByTimezone = void 0;
|
|
4
|
+
const isEmpty_1 = require("../../../general/mix/isEmpty");
|
|
5
|
+
const transformFilterValues_1 = require("../ui/transformFilterValues");
|
|
6
|
+
/**
|
|
7
|
+
* Gets and transforms the Filter Data by the Timezone object
|
|
8
|
+
* @param {IFSData | IFUData} filterData the filter data
|
|
9
|
+
* @param {IDTimezone} timezone the timezone object
|
|
10
|
+
* @returns {IFSData | IFUData} the new filter data with the transformed datetime values
|
|
11
|
+
*/
|
|
12
|
+
function getFiltersByTimezone(filterData, timezone) {
|
|
13
|
+
if ((0, isEmpty_1.isEmpty)(filterData) ||
|
|
14
|
+
(0, isEmpty_1.isEmpty)(filterData.scopes) ||
|
|
15
|
+
!Array.isArray(filterData.scopes))
|
|
16
|
+
return filterData;
|
|
17
|
+
return Object.assign(Object.assign({}, filterData), { scopes: filterData.scopes.map((scope) => (Object.assign(Object.assign({}, scope), { datasets: scope.datasets.map((dataset) => (Object.assign(Object.assign({}, dataset), { filters: dataset.filters.map((filter) => (Object.assign(Object.assign({}, filter), { values: (0, transformFilterValues_1.transformFilterValues)(filter, {
|
|
18
|
+
timezone,
|
|
19
|
+
translate: undefined,
|
|
20
|
+
i18n: undefined,
|
|
21
|
+
noLocale: true,
|
|
22
|
+
noSuffix: true,
|
|
23
|
+
noTranslate: true,
|
|
24
|
+
}) }))) }))) }))) });
|
|
25
|
+
}
|
|
26
|
+
exports.getFiltersByTimezone = getFiltersByTimezone;
|
|
@@ -10,6 +10,7 @@ export * from "./getFiltersByDatasetsColumns";
|
|
|
10
10
|
export * from "./getFiltersByParams";
|
|
11
11
|
export * from "./getFiltersByScopes";
|
|
12
12
|
export * from "./getFiltersByScopesIds";
|
|
13
|
+
export * from "./getFiltersByTimezone";
|
|
13
14
|
export * from "./getFiltersByVisibility";
|
|
14
15
|
export * from "./getMergeFiltersSettings";
|
|
15
16
|
export * from "./getParamsToGetFilterSettings";
|
|
@@ -26,6 +26,7 @@ __exportStar(require("./getFiltersByDatasetsColumns"), exports);
|
|
|
26
26
|
__exportStar(require("./getFiltersByParams"), exports);
|
|
27
27
|
__exportStar(require("./getFiltersByScopes"), exports);
|
|
28
28
|
__exportStar(require("./getFiltersByScopesIds"), exports);
|
|
29
|
+
__exportStar(require("./getFiltersByTimezone"), exports);
|
|
29
30
|
__exportStar(require("./getFiltersByVisibility"), exports);
|
|
30
31
|
__exportStar(require("./getMergeFiltersSettings"), exports);
|
|
31
32
|
__exportStar(require("./getParamsToGetFilterSettings"), exports);
|
|
@@ -1,7 +1,13 @@
|
|
|
1
|
+
import { IDTimezone } from "../../../dates/interfaces/IDTimezone";
|
|
1
2
|
import { II18nConfig } from "../../../globalization/interfaces/II18nConfig";
|
|
2
3
|
import { II18nServiceTranslate } from "../../../globalization/interfaces/II18nServiceTranslate";
|
|
3
4
|
export interface IFUTransformFilterValuesSettings {
|
|
5
|
+
timezone?: IDTimezone;
|
|
4
6
|
translate: II18nServiceTranslate;
|
|
5
7
|
i18n: II18nConfig;
|
|
6
8
|
suffixTranslateLabel?: string;
|
|
9
|
+
noLocale?: boolean;
|
|
10
|
+
noTranslate?: boolean;
|
|
11
|
+
noSuffix?: boolean;
|
|
12
|
+
noTimezone?: boolean;
|
|
7
13
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { IFormatConfig } from "../interfaces/format/IFormatConfig.Interface";
|
|
2
|
-
export declare function formatDate(dateString: any, format: any): any;
|
|
2
|
+
export declare function formatDate(dateString: any, format: any, offset: any): any;
|
|
3
3
|
export declare function formatAbbreviated(num: any, decimals: any): any;
|
|
4
4
|
/**
|
|
5
5
|
* Set convert Bytes into MB
|