@lightdash/common 0.1374.0 → 0.1374.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/types/filter.d.ts
CHANGED
|
@@ -94,6 +94,7 @@ export declare const isMetricFilterTarget: (value: unknown) => value is {
|
|
|
94
94
|
export declare const getFilterRules: (filters: Filters) => FilterRule[];
|
|
95
95
|
export declare const updateFieldIdInFilterGroupItem: (filterGroupItem: FilterGroupItem, previousName: string, newName: string) => void;
|
|
96
96
|
export declare const updateFieldIdInFilters: (filterGroup: FilterGroup | undefined, previousName: string, newName: string) => void;
|
|
97
|
+
export declare const updateFilterValueInFilters: (filterGroup: FilterGroup | undefined, valueChange: (fieldId: string, oldValue: any[] | undefined) => any[] | undefined) => void;
|
|
97
98
|
export declare const removeFieldFromFilterGroup: (filterGroup: FilterGroup | undefined, fieldId: string) => FilterGroup | undefined;
|
|
98
99
|
export declare const applyDimensionOverrides: (dashboardFilters: DashboardFilters, overrides: DashboardFilters | SchedulerFilterRule[]) => DashboardFilterRule<ConditionalOperator, DashboardFieldTarget, any, any>[];
|
|
99
100
|
export declare const isDashboardFilterRule: (value: ConditionalRule) => value is DashboardFilterRule<ConditionalOperator, DashboardFieldTarget, any, any>;
|
package/dist/types/filter.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.FilterOperator = exports.isFilterRuleDefinedForFieldId = exports.compressDashboardFiltersToParam = exports.convertDashboardFiltersParamToDashboardFilters = exports.convertDashboardFiltersToFilters = exports.FilterGroupOperator = exports.isDashboardFilterRule = exports.applyDimensionOverrides = exports.removeFieldFromFilterGroup = exports.updateFieldIdInFilters = exports.updateFieldIdInFilterGroupItem = exports.getFilterRules = exports.isMetricFilterTarget = exports.isFilterTarget = exports.isFilterRule = exports.isFilterGroup = exports.isAndFilterGroup = exports.isOrFilterGroup = exports.unitOfTimeFormat = exports.UnitOfTime = exports.FilterType = void 0;
|
|
3
|
+
exports.FilterOperator = exports.isFilterRuleDefinedForFieldId = exports.compressDashboardFiltersToParam = exports.convertDashboardFiltersParamToDashboardFilters = exports.convertDashboardFiltersToFilters = exports.FilterGroupOperator = exports.isDashboardFilterRule = exports.applyDimensionOverrides = exports.removeFieldFromFilterGroup = exports.updateFilterValueInFilters = exports.updateFieldIdInFilters = exports.updateFieldIdInFilterGroupItem = exports.getFilterRules = exports.isMetricFilterTarget = exports.isFilterTarget = exports.isFilterRule = exports.isFilterGroup = exports.isAndFilterGroup = exports.isOrFilterGroup = exports.unitOfTimeFormat = exports.UnitOfTime = exports.FilterType = void 0;
|
|
4
4
|
const conditionalRule_1 = require("./conditionalRule");
|
|
5
5
|
Object.defineProperty(exports, "FilterOperator", { enumerable: true, get: function () { return conditionalRule_1.ConditionalOperator; } });
|
|
6
6
|
var FilterType;
|
|
@@ -96,6 +96,27 @@ const updateFieldIdInFilters = (filterGroup, previousName, newName) => {
|
|
|
96
96
|
}
|
|
97
97
|
};
|
|
98
98
|
exports.updateFieldIdInFilters = updateFieldIdInFilters;
|
|
99
|
+
const updateFilterValueInFilters = (filterGroup, valueChange) => {
|
|
100
|
+
const updateFilterValueInFilterGroupItem = (filterGroupItem) => {
|
|
101
|
+
if ((0, exports.isFilterGroup)(filterGroupItem)) {
|
|
102
|
+
// eslint-disable-next-line @typescript-eslint/no-use-before-define
|
|
103
|
+
(0, exports.updateFilterValueInFilters)(filterGroupItem, valueChange);
|
|
104
|
+
}
|
|
105
|
+
else {
|
|
106
|
+
// eslint-disable-next-line no-param-reassign
|
|
107
|
+
filterGroupItem.values = valueChange(filterGroupItem.target.fieldId, filterGroupItem.values);
|
|
108
|
+
}
|
|
109
|
+
};
|
|
110
|
+
if (filterGroup) {
|
|
111
|
+
if ((0, exports.isOrFilterGroup)(filterGroup)) {
|
|
112
|
+
filterGroup.or.forEach((item) => updateFilterValueInFilterGroupItem(item));
|
|
113
|
+
}
|
|
114
|
+
else if ((0, exports.isAndFilterGroup)(filterGroup)) {
|
|
115
|
+
filterGroup.and.forEach((item) => updateFilterValueInFilterGroupItem(item));
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
};
|
|
119
|
+
exports.updateFilterValueInFilters = updateFilterValueInFilters;
|
|
99
120
|
const removeFieldFromFilterGroup = (filterGroup, fieldId) => {
|
|
100
121
|
if (!filterGroup) {
|
|
101
122
|
return undefined;
|
|
@@ -6,6 +6,7 @@ export declare const currencies: string[];
|
|
|
6
6
|
export declare const formatBoolean: <T>(v: T) => "True" | "False";
|
|
7
7
|
export declare const getDateFormat: (timeInterval?: TimeFrames | undefined) => string;
|
|
8
8
|
export declare const isMomentInput: (value: unknown) => value is moment.MomentInput;
|
|
9
|
+
export declare function getFirstDayOfQuarter(date: string, convertToUTC?: boolean): string;
|
|
9
10
|
export declare function formatDate(date: MomentInput, timeInterval?: TimeFrames, convertToUTC?: boolean): string;
|
|
10
11
|
export declare function formatTimestamp(value: MomentInput, timeInterval?: TimeFrames | undefined, convertToUTC?: boolean): string;
|
|
11
12
|
export declare function getLocalTimeDisplay(value: MomentInput, showTimezone?: boolean): string;
|
package/dist/utils/formatting.js
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.formatItemValue = exports.applyCustomFormat = exports.getCustomFormat = exports.getCustomFormatFromLegacy = exports.formatNumberValue = exports.isNumber = exports.valueIsNaN = exports.parseTimestamp = exports.parseDate = exports.getLocalTimeDisplay = exports.formatTimestamp = exports.formatDate = exports.isMomentInput = exports.getDateFormat = exports.formatBoolean = exports.currencies = void 0;
|
|
3
|
+
exports.formatItemValue = exports.applyCustomFormat = exports.getCustomFormat = exports.getCustomFormatFromLegacy = exports.formatNumberValue = exports.isNumber = exports.valueIsNaN = exports.parseTimestamp = exports.parseDate = exports.getLocalTimeDisplay = exports.formatTimestamp = exports.formatDate = exports.getFirstDayOfQuarter = exports.isMomentInput = exports.getDateFormat = exports.formatBoolean = exports.currencies = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
const dayjs_1 = tslib_1.__importDefault(require("dayjs"));
|
|
6
|
+
const quarterOfYear_1 = tslib_1.__importDefault(require("dayjs/plugin/quarterOfYear"));
|
|
6
7
|
const timezone_1 = tslib_1.__importDefault(require("dayjs/plugin/timezone"));
|
|
7
8
|
const moment_1 = tslib_1.__importDefault(require("moment"));
|
|
8
9
|
const field_1 = require("../types/field");
|
|
@@ -11,6 +12,7 @@ const timeFrames_1 = require("../types/timeFrames");
|
|
|
11
12
|
const assertUnreachable_1 = tslib_1.__importDefault(require("./assertUnreachable"));
|
|
12
13
|
const item_1 = require("./item");
|
|
13
14
|
dayjs_1.default.extend(timezone_1.default);
|
|
15
|
+
dayjs_1.default.extend(quarterOfYear_1.default);
|
|
14
16
|
exports.currencies = [
|
|
15
17
|
'USD',
|
|
16
18
|
'EUR',
|
|
@@ -90,6 +92,11 @@ const isMomentInput = (value) => typeof value === 'string' ||
|
|
|
90
92
|
value instanceof moment_1.default ||
|
|
91
93
|
value instanceof dayjs_1.default;
|
|
92
94
|
exports.isMomentInput = isMomentInput;
|
|
95
|
+
function getFirstDayOfQuarter(date, convertToUTC = false) {
|
|
96
|
+
const momentDate = convertToUTC ? (0, dayjs_1.default)(date).utc() : (0, dayjs_1.default)(date);
|
|
97
|
+
return momentDate.startOf('quarter').format('YYYY-MM-DD');
|
|
98
|
+
}
|
|
99
|
+
exports.getFirstDayOfQuarter = getFirstDayOfQuarter;
|
|
93
100
|
function formatDate(date, timeInterval = timeFrames_1.TimeFrames.DAY, convertToUTC = false) {
|
|
94
101
|
const momentDate = convertToUTC ? (0, moment_1.default)(date).utc() : (0, moment_1.default)(date);
|
|
95
102
|
return momentDate.format((0, exports.getDateFormat)(timeInterval));
|