@qrvey/utils 1.5.0-9 → 1.5.0
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/README.md +1 -1
- package/dist/charts/adapters/endpointData.js +27 -25
- package/dist/charts/adapters/endpointDataGet.js +15 -16
- package/dist/cjs/charts/adapters/endpointData.js +27 -25
- package/dist/cjs/charts/adapters/endpointDataGet.js +15 -16
- package/dist/cjs/column_format/helpers/columnTypeByChart.js +1 -2
- package/dist/cjs/column_format/helpers/defineTableChartFormat.js +3 -3
- package/dist/cjs/column_format/helpers/defineXYChartFormat.js +10 -17
- package/dist/cjs/columns/constants/COLUMN.js +1 -1
- package/dist/cjs/columns/constants/COLUMN_PROPERTY.js +2 -2
- package/dist/cjs/columns/helpers/getDatasetColumn.d.ts +9 -1
- package/dist/cjs/columns/helpers/getDatasetColumn.js +31 -4
- package/dist/cjs/columns/helpers/getDatasetColumnByDatasets.d.ts +6 -5
- package/dist/cjs/columns/helpers/getDatasetColumnByDatasets.js +22 -8
- package/dist/cjs/columns/helpers/getModelColumn.d.ts +4 -4
- package/dist/cjs/columns/helpers/getModelColumn.js +9 -19
- package/dist/cjs/columns/helpers/isComplexColumn.d.ts +5 -0
- package/dist/cjs/columns/helpers/isComplexColumn.js +5 -0
- package/dist/cjs/columns/helpers/isDateColumn.d.ts +5 -0
- package/dist/cjs/columns/helpers/isDateColumn.js +8 -1
- package/dist/cjs/columns/helpers/isNumericalColumn.d.ts +5 -0
- package/dist/cjs/columns/helpers/isNumericalColumn.js +7 -1
- package/dist/cjs/dates/adapters/dateToHms.d.ts +1 -1
- package/dist/cjs/dates/adapters/dateToHms.js +6 -8
- package/dist/cjs/dates/adapters/dateToMdyDate.js +6 -9
- package/dist/cjs/dates/adapters/dateToMonthYear.js +6 -4
- package/dist/cjs/dates/adapters/dateToQuarterYear.d.ts +2 -2
- package/dist/cjs/dates/adapters/dateToQuarterYear.js +8 -6
- package/dist/cjs/dates/adapters/dateToWeekYear.js +5 -3
- package/dist/cjs/dates/adapters/dateToYear.d.ts +1 -1
- package/dist/cjs/dates/adapters/dateToYear.js +6 -4
- package/dist/cjs/dates/adapters/weekYearToDate.js +1 -6
- package/dist/cjs/dates/constants/DATE_DISTINCT_PROPERTY.js +1 -1
- package/dist/cjs/dates/constants/DATE_FORMAT.js +7 -7
- package/dist/cjs/dates/constants/DATE_FORMATS.d.ts +1 -0
- package/dist/cjs/dates/constants/DATE_FORMATS.js +22 -0
- package/dist/cjs/dates/constants/DATE_GROUPING_ALL_PROPERTIES.d.ts +1 -0
- package/dist/cjs/dates/constants/DATE_GROUPING_ALL_PROPERTIES.js +9 -0
- package/dist/cjs/dates/constants/DATE_REGULAR_EXPRESSIONS.d.ts +1 -0
- package/dist/cjs/dates/constants/DATE_REGULAR_EXPRESSIONS.js +23 -0
- package/dist/cjs/dates/constants/DATE_REGULAR_EXPRESSION_ARRAY_BY_FORMAT.d.ts +3 -0
- package/dist/cjs/dates/constants/DATE_REGULAR_EXPRESSION_ARRAY_BY_FORMAT.js +40 -0
- package/dist/cjs/dates/constants/index.d.ts +4 -0
- package/dist/cjs/dates/constants/index.js +4 -0
- package/dist/cjs/dates/helpers/{includeDateTokens.d.ts → areIncludedDateTokens.d.ts} +1 -1
- package/dist/cjs/dates/helpers/{includeDateTokens.js → areIncludedDateTokens.js} +5 -4
- package/dist/cjs/dates/helpers/getDateFormatRegularExpressionInArray.d.ts +2 -2
- package/dist/cjs/dates/helpers/getDateFormatRegularExpressionInArray.js +9 -42
- package/dist/{dates/range → cjs/dates/helpers}/getDateRange.d.ts +3 -3
- package/dist/cjs/dates/{range → helpers}/getDateRange.js +73 -69
- package/dist/cjs/dates/helpers/getFormattedDateByFormat.d.ts +1 -0
- package/dist/cjs/dates/helpers/getFormattedDateByFormat.js +17 -17
- package/dist/cjs/dates/helpers/getSeparatorByDateFormat.d.ts +1 -1
- package/dist/cjs/dates/helpers/getSeparatorByDateFormat.js +1 -1
- package/dist/cjs/dates/helpers/getWeek.d.ts +6 -4
- package/dist/cjs/dates/helpers/getWeek.js +6 -3
- package/dist/cjs/dates/helpers/index.d.ts +4 -1
- package/dist/cjs/dates/helpers/index.js +4 -1
- package/dist/cjs/dates/helpers/isValidPotentialDate.d.ts +6 -0
- package/dist/cjs/dates/helpers/isValidPotentialDate.js +18 -0
- package/dist/cjs/dates/index.d.ts +0 -1
- package/dist/cjs/dates/index.js +0 -1
- package/dist/cjs/dates/relative/constants/RELATIVE_UNIT_INFO_LIST.js +5 -5
- package/dist/cjs/filters/adapters/FDToFlatUI.js +4 -4
- package/dist/cjs/filters/adapters/FDToUI.js +3 -3
- package/dist/cjs/filters/adapters/UIToFD.js +3 -3
- package/dist/cjs/filters/adapters/UIToFlatUI.js +3 -3
- package/dist/cjs/filters/adapters/UIToOldLogic.js +6 -6
- package/dist/cjs/filters/adapters/adaptFilterData.js +7 -7
- package/dist/cjs/filters/adapters/flatUIToFD.js +24 -24
- package/dist/cjs/filters/adapters/flatUIToOldLogic.js +42 -49
- package/dist/cjs/filters/adapters/flatUIToUI.js +29 -29
- package/dist/cjs/filters/adapters/index.d.ts +0 -1
- package/dist/cjs/filters/adapters/index.js +0 -1
- package/dist/cjs/filters/adapters/logicToFlatUI.js +6 -8
- package/dist/cjs/filters/constants/common/FILTER_TOKENS_STRUCTURE_TYPE.d.ts +2 -1
- package/dist/cjs/filters/constants/common/FILTER_TOKENS_STRUCTURE_TYPE.js +1 -0
- package/dist/cjs/filters/helpers/OLD_getAggFilters.js +5 -4
- package/dist/cjs/filters/helpers/backend/buildExpression.js +1 -1
- package/dist/cjs/filters/helpers/backend/buildFilters.js +6 -16
- package/dist/cjs/filters/helpers/backend/getBackendValidator.js +1 -1
- package/dist/cjs/filters/helpers/backend/getBackendValues.js +1 -3
- package/dist/cjs/filters/helpers/backend/getLogicByDatasets.js +2 -2
- package/dist/cjs/filters/helpers/backend/getLogicByDatasetsColumns.js +2 -2
- package/dist/cjs/filters/helpers/backend/getLogicByScopes.js +2 -2
- package/dist/cjs/filters/helpers/backend/getLogicByScopesHierarchy.js +0 -2
- package/dist/cjs/filters/helpers/common/excludeFiltersByAggregateColumn.js +3 -3
- package/dist/cjs/filters/helpers/common/excludeFiltersByParams.js +7 -9
- package/dist/cjs/filters/helpers/common/excludeFiltersByScopes.js +3 -3
- package/dist/cjs/filters/helpers/common/getFilterLabel.js +1 -1
- package/dist/cjs/filters/helpers/common/getFiltersByAggregateColumn.js +3 -3
- package/dist/cjs/filters/helpers/common/getFiltersByParams.js +15 -17
- package/dist/cjs/filters/helpers/common/getFiltersByScopes.js +3 -3
- package/dist/cjs/filters/helpers/common/getFiltersByScopesIds.js +4 -4
- package/dist/cjs/filters/helpers/common/getFiltersByVisibility.js +4 -4
- package/dist/cjs/filters/helpers/common/mergeFilters.js +23 -19
- package/dist/cjs/filters/helpers/common/mergeValues.js +2 -2
- package/dist/cjs/filters/helpers/filtersTokensToString.js +4 -1
- package/dist/cjs/filters/helpers/getAggFiltersFromFilterData.js +2 -2
- package/dist/cjs/filters/helpers/getTokensFromFilters.js +17 -3
- package/dist/cjs/filters/helpers/ui/excludeUIFiltersByAggregate.js +2 -2
- package/dist/cjs/filters/helpers/ui/excludeUIFlatFiltersByScopes.js +2 -2
- package/dist/cjs/filters/helpers/ui/getUIFlatFilterByParams.js +3 -3
- package/dist/cjs/filters/helpers/ui/getUIFlatFiltersByParams.js +2 -2
- package/dist/cjs/filters/helpers/ui/getUIFlatFiltersByScopes.js +2 -2
- package/dist/cjs/filters/helpers/ui/getUIValues.js +9 -11
- package/dist/cjs/filters/helpers/ui/transformFilterValues.js +1 -3
- package/dist/cjs/filters/services/Filters.api.d.ts +4 -4
- package/dist/cjs/filters/services/Filters.api.js +7 -7
- package/dist/cjs/filters/services/UChartApi.d.ts +11 -11
- package/dist/cjs/filters/services/UChartApi.js +176 -185
- package/dist/cjs/filters/services/UChartPaginationApi.d.ts +13 -13
- package/dist/cjs/filters/services/UChartPaginationApi.js +198 -212
- package/dist/cjs/format/duration/addDurationFormat.d.ts +1 -1
- package/dist/cjs/format/duration/addDurationFormat.js +2 -2
- package/dist/cjs/format/duration/durationFormatter.d.ts +1 -1
- package/dist/cjs/format/duration/durationFormatter.js +7 -6
- package/dist/cjs/format/format.js +38 -33
- package/dist/cjs/format/localization.js +1 -2
- package/dist/cjs/general/mix/importScripts.js +8 -14
- package/dist/cjs/general/mix/randomId.js +11 -10
- package/dist/cjs/general/object/get.js +4 -4
- package/dist/cjs/general/object/getAttribute.js +1 -1
- package/dist/cjs/general/object/mapValues.js +2 -2
- package/dist/cjs/general/object/mergeDeep.js +6 -4
- package/dist/cjs/general/object/serialize.js +3 -3
- package/dist/cjs/general/string/padLeadingZeros.js +2 -2
- package/dist/cjs/globalization/helpers/getI18nDateGroupLabel.js +13 -10
- package/dist/cjs/globalization/helpers/getReverseI18nGroupLabel.js +12 -9
- package/dist/cjs/globalization/interfaces/II18nResource.d.ts +1 -1
- package/dist/cjs/globalization/interfaces/chart_builder/II18nChartBuilderAxisStyle.d.ts +9 -0
- package/dist/cjs/globalization/interfaces/chart_builder/II18nChartBuilderDurationParts.d.ts +1 -0
- package/dist/cjs/globalization/interfaces/common/II18nCommon.d.ts +2 -0
- package/dist/cjs/globalization/interfaces/filters/II18nTokenBox.d.ts +1 -0
- package/dist/cjs/globalization/labels/I18N_DEFAULT.js +1 -1
- package/dist/cjs/globalization/labels/chart_builder/I18N_CHART_BUILDER.js +1 -0
- package/dist/cjs/globalization/labels/chart_builder/I18N_CHART_BUILDER_STYLE_OPTIONS.js +13 -4
- package/dist/cjs/globalization/labels/common/I18N_COMMON.js +4 -0
- package/dist/cjs/qrvey/helpers/getLookupAnswers.js +4 -6
- package/dist/cjs/qrvey/helpers/getValueWithSuffixes.js +1 -1
- package/dist/cjs/services/adapters/index.d.ts +2 -1
- package/dist/cjs/services/adapters/index.js +2 -1
- package/dist/cjs/services/api/getAllDatasets.api.js +6 -8
- package/dist/cjs/services/helpers/Request.js +5 -4
- package/dist/column_format/helpers/columnTypeByChart.js +1 -2
- package/dist/column_format/helpers/defineTableChartFormat.js +4 -4
- package/dist/column_format/helpers/defineXYChartFormat.js +10 -17
- package/dist/columns/constants/COLUMN.js +1 -1
- package/dist/columns/constants/COLUMN_PROPERTY.js +2 -2
- package/dist/columns/helpers/getDatasetColumn.d.ts +9 -1
- package/dist/columns/helpers/getDatasetColumn.js +31 -4
- package/dist/columns/helpers/getDatasetColumnByDatasets.d.ts +6 -5
- package/dist/columns/helpers/getDatasetColumnByDatasets.js +22 -8
- package/dist/columns/helpers/getModelColumn.d.ts +4 -4
- package/dist/columns/helpers/getModelColumn.js +9 -19
- package/dist/columns/helpers/isComplexColumn.d.ts +5 -0
- package/dist/columns/helpers/isComplexColumn.js +5 -0
- package/dist/columns/helpers/isDateColumn.d.ts +5 -0
- package/dist/columns/helpers/isDateColumn.js +8 -1
- package/dist/columns/helpers/isNumericalColumn.d.ts +5 -0
- package/dist/columns/helpers/isNumericalColumn.js +7 -1
- package/dist/dates/adapters/dateToHms.d.ts +1 -1
- package/dist/dates/adapters/dateToHms.js +6 -8
- package/dist/dates/adapters/dateToMdyDate.js +6 -9
- package/dist/dates/adapters/dateToMonthYear.js +6 -4
- package/dist/dates/adapters/dateToQuarterYear.d.ts +2 -2
- package/dist/dates/adapters/dateToQuarterYear.js +8 -6
- package/dist/dates/adapters/dateToWeekYear.js +5 -3
- package/dist/dates/adapters/dateToYear.d.ts +1 -1
- package/dist/dates/adapters/dateToYear.js +6 -4
- package/dist/dates/adapters/weekYearToDate.js +1 -6
- package/dist/dates/constants/DATE_DISTINCT_PROPERTY.js +1 -1
- package/dist/dates/constants/DATE_FORMAT.js +7 -7
- package/dist/dates/constants/DATE_FORMATS.d.ts +1 -0
- package/dist/dates/constants/DATE_FORMATS.js +19 -0
- package/dist/dates/constants/DATE_GROUPING_ALL_PROPERTIES.d.ts +1 -0
- package/dist/dates/constants/DATE_GROUPING_ALL_PROPERTIES.js +6 -0
- package/dist/dates/constants/DATE_REGULAR_EXPRESSIONS.d.ts +1 -0
- package/dist/dates/constants/DATE_REGULAR_EXPRESSIONS.js +20 -0
- package/dist/dates/constants/DATE_REGULAR_EXPRESSION_ARRAY_BY_FORMAT.d.ts +3 -0
- package/dist/dates/constants/DATE_REGULAR_EXPRESSION_ARRAY_BY_FORMAT.js +37 -0
- package/dist/dates/constants/index.d.ts +4 -0
- package/dist/dates/constants/index.js +4 -0
- package/dist/dates/helpers/{includeDateTokens.d.ts → areIncludedDateTokens.d.ts} +1 -1
- package/dist/dates/helpers/{includeDateTokens.js → areIncludedDateTokens.js} +3 -2
- package/dist/dates/helpers/getDateFormatRegularExpressionInArray.d.ts +2 -2
- package/dist/dates/helpers/getDateFormatRegularExpressionInArray.js +9 -42
- package/dist/{cjs/dates/range → dates/helpers}/getDateRange.d.ts +3 -3
- package/dist/dates/{range → helpers}/getDateRange.js +73 -69
- package/dist/dates/helpers/getFormattedDateByFormat.d.ts +1 -0
- package/dist/dates/helpers/getFormattedDateByFormat.js +17 -17
- package/dist/dates/helpers/getSeparatorByDateFormat.d.ts +1 -1
- package/dist/dates/helpers/getSeparatorByDateFormat.js +1 -1
- package/dist/dates/helpers/getWeek.d.ts +6 -4
- package/dist/dates/helpers/getWeek.js +6 -3
- package/dist/dates/helpers/index.d.ts +4 -1
- package/dist/dates/helpers/index.js +4 -1
- package/dist/dates/helpers/isValidPotentialDate.d.ts +6 -0
- package/dist/dates/helpers/isValidPotentialDate.js +14 -0
- package/dist/dates/index.d.ts +0 -1
- package/dist/dates/index.js +0 -1
- package/dist/dates/relative/constants/RELATIVE_UNIT_INFO_LIST.js +5 -5
- package/dist/filters/adapters/FDToFlatUI.js +4 -4
- package/dist/filters/adapters/FDToUI.js +3 -3
- package/dist/filters/adapters/UIToFD.js +3 -3
- package/dist/filters/adapters/UIToFlatUI.js +3 -3
- package/dist/filters/adapters/UIToOldLogic.js +6 -6
- package/dist/filters/adapters/adaptFilterData.js +7 -7
- package/dist/filters/adapters/flatUIToFD.js +24 -24
- package/dist/filters/adapters/flatUIToOldLogic.js +42 -49
- package/dist/filters/adapters/flatUIToUI.js +29 -29
- package/dist/filters/adapters/index.d.ts +0 -1
- package/dist/filters/adapters/index.js +0 -1
- package/dist/filters/adapters/logicToFlatUI.js +6 -8
- package/dist/filters/constants/common/FILTER_TOKENS_STRUCTURE_TYPE.d.ts +2 -1
- package/dist/filters/constants/common/FILTER_TOKENS_STRUCTURE_TYPE.js +1 -0
- package/dist/filters/helpers/OLD_getAggFilters.js +5 -4
- package/dist/filters/helpers/backend/buildExpression.js +1 -1
- package/dist/filters/helpers/backend/buildFilters.js +6 -16
- package/dist/filters/helpers/backend/getBackendValidator.js +1 -1
- package/dist/filters/helpers/backend/getBackendValues.js +1 -3
- package/dist/filters/helpers/backend/getLogicByDatasets.js +2 -2
- package/dist/filters/helpers/backend/getLogicByDatasetsColumns.js +2 -2
- package/dist/filters/helpers/backend/getLogicByScopes.js +2 -2
- package/dist/filters/helpers/backend/getLogicByScopesHierarchy.js +0 -2
- package/dist/filters/helpers/common/excludeFiltersByAggregateColumn.js +3 -3
- package/dist/filters/helpers/common/excludeFiltersByParams.js +7 -9
- package/dist/filters/helpers/common/excludeFiltersByScopes.js +3 -3
- package/dist/filters/helpers/common/getFilterLabel.js +1 -1
- package/dist/filters/helpers/common/getFiltersByAggregateColumn.js +3 -3
- package/dist/filters/helpers/common/getFiltersByParams.js +15 -17
- package/dist/filters/helpers/common/getFiltersByScopes.js +3 -3
- package/dist/filters/helpers/common/getFiltersByScopesIds.js +4 -4
- package/dist/filters/helpers/common/getFiltersByVisibility.js +4 -4
- package/dist/filters/helpers/common/mergeFilters.js +23 -19
- package/dist/filters/helpers/common/mergeValues.js +2 -2
- package/dist/filters/helpers/filtersTokensToString.js +4 -1
- package/dist/filters/helpers/getAggFiltersFromFilterData.js +2 -2
- package/dist/filters/helpers/getTokensFromFilters.js +17 -3
- package/dist/filters/helpers/ui/excludeUIFiltersByAggregate.js +2 -2
- package/dist/filters/helpers/ui/excludeUIFlatFiltersByScopes.js +2 -2
- package/dist/filters/helpers/ui/getUIFlatFilterByParams.js +3 -3
- package/dist/filters/helpers/ui/getUIFlatFiltersByParams.js +2 -2
- package/dist/filters/helpers/ui/getUIFlatFiltersByScopes.js +2 -2
- package/dist/filters/helpers/ui/getUIValues.js +9 -11
- package/dist/filters/helpers/ui/transformFilterValues.js +1 -3
- package/dist/filters/services/Filters.api.d.ts +4 -4
- package/dist/filters/services/Filters.api.js +7 -7
- package/dist/filters/services/UChartApi.d.ts +11 -11
- package/dist/filters/services/UChartApi.js +176 -185
- package/dist/filters/services/UChartPaginationApi.d.ts +13 -13
- package/dist/filters/services/UChartPaginationApi.js +198 -212
- package/dist/format/duration/addDurationFormat.d.ts +1 -1
- package/dist/format/duration/addDurationFormat.js +2 -2
- package/dist/format/duration/durationFormatter.d.ts +1 -1
- package/dist/format/duration/durationFormatter.js +7 -6
- package/dist/format/format.js +38 -33
- package/dist/format/localization.js +1 -2
- package/dist/general/mix/importScripts.js +8 -14
- package/dist/general/mix/randomId.js +11 -10
- package/dist/general/object/get.js +4 -4
- package/dist/general/object/getAttribute.js +1 -1
- package/dist/general/object/mapValues.js +2 -2
- package/dist/general/object/mergeDeep.js +6 -4
- package/dist/general/object/serialize.js +3 -3
- package/dist/general/string/padLeadingZeros.js +2 -2
- package/dist/globalization/helpers/getI18nDateGroupLabel.js +13 -10
- package/dist/globalization/helpers/getReverseI18nGroupLabel.js +12 -9
- package/dist/globalization/interfaces/II18nResource.d.ts +1 -1
- package/dist/globalization/interfaces/chart_builder/II18nChartBuilderAxisStyle.d.ts +9 -0
- package/dist/globalization/interfaces/chart_builder/II18nChartBuilderDurationParts.d.ts +1 -0
- package/dist/globalization/interfaces/common/II18nCommon.d.ts +2 -0
- package/dist/globalization/interfaces/filters/II18nTokenBox.d.ts +1 -0
- package/dist/globalization/labels/I18N_DEFAULT.js +2 -2
- package/dist/globalization/labels/chart_builder/I18N_CHART_BUILDER.js +1 -0
- package/dist/globalization/labels/chart_builder/I18N_CHART_BUILDER_STYLE_OPTIONS.js +13 -4
- package/dist/globalization/labels/common/I18N_COMMON.js +4 -0
- package/dist/qrvey/helpers/getLookupAnswers.js +4 -6
- package/dist/qrvey/helpers/getValueWithSuffixes.js +1 -1
- package/dist/services/adapters/index.d.ts +2 -1
- package/dist/services/adapters/index.js +2 -1
- package/dist/services/api/getAllDatasets.api.js +6 -8
- package/dist/services/helpers/Request.js +5 -4
- package/package.json +5 -5
- package/dist/cjs/dates/range/index.d.ts +0 -1
- package/dist/cjs/dates/range/index.js +0 -17
- package/dist/cjs/filters/adapters/transformFilters.d.ts +0 -60
- package/dist/cjs/filters/adapters/transformFilters.js +0 -427
- package/dist/dates/range/index.d.ts +0 -1
- package/dist/dates/range/index.js +0 -1
- package/dist/filters/adapters/transformFilters.d.ts +0 -60
- package/dist/filters/adapters/transformFilters.js +0 -423
|
@@ -8,8 +8,8 @@ import { cloneDeep } from "../../../general/object/cloneDeep";
|
|
|
8
8
|
export function excludeFiltersByAggregateColumn(filterData) {
|
|
9
9
|
if (isEmpty(filterData) || isEmpty(filterData.scopes))
|
|
10
10
|
return;
|
|
11
|
-
|
|
12
|
-
|
|
11
|
+
const _filterData = cloneDeep(filterData);
|
|
12
|
+
_filterData.scopes = _filterData.scopes.reduce((scopes, scope) => {
|
|
13
13
|
if (isEmpty(scope))
|
|
14
14
|
return scopes;
|
|
15
15
|
scope.datasets.forEach((dataset, index) => {
|
|
@@ -22,5 +22,5 @@ export function excludeFiltersByAggregateColumn(filterData) {
|
|
|
22
22
|
scopes.push(scope);
|
|
23
23
|
return scopes;
|
|
24
24
|
}, []);
|
|
25
|
-
return
|
|
25
|
+
return _filterData.scopes.length > 0 ? _filterData : undefined;
|
|
26
26
|
}
|
|
@@ -20,8 +20,8 @@ export function excludeFiltersByParams(filterData, params) {
|
|
|
20
20
|
return;
|
|
21
21
|
if (isEmpty(params))
|
|
22
22
|
return filterData;
|
|
23
|
-
|
|
24
|
-
|
|
23
|
+
const _filterData = cloneDeep(filterData);
|
|
24
|
+
_filterData.scopes = _filterData.scopes
|
|
25
25
|
.map((scope) => {
|
|
26
26
|
if (resolveScopeConditions(scope, params)) {
|
|
27
27
|
return Object.assign(Object.assign({}, scope), { datasets: scope.datasets
|
|
@@ -41,12 +41,10 @@ export function excludeFiltersByParams(filterData, params) {
|
|
|
41
41
|
})
|
|
42
42
|
.filter(Boolean);
|
|
43
43
|
}
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
return value;
|
|
49
|
-
}
|
|
44
|
+
if (params.enableds == null ||
|
|
45
|
+
params.enableds ===
|
|
46
|
+
value.enabled)
|
|
47
|
+
return value;
|
|
50
48
|
})
|
|
51
49
|
.filter(Boolean) });
|
|
52
50
|
}
|
|
@@ -62,7 +60,7 @@ export function excludeFiltersByParams(filterData, params) {
|
|
|
62
60
|
}
|
|
63
61
|
})
|
|
64
62
|
.filter((scope) => !isEmpty(scope) && scope.datasets.length > 0);
|
|
65
|
-
return
|
|
63
|
+
return _filterData.scopes.length > 0 ? _filterData : undefined;
|
|
66
64
|
}
|
|
67
65
|
function resolveScopeConditions(scope, params) {
|
|
68
66
|
return ((params.enableds == null || params.enableds !== scope.enabled) &&
|
|
@@ -9,7 +9,7 @@ import { cloneDeep } from "../../../general/object/cloneDeep";
|
|
|
9
9
|
export function excludeFiltersByScopes(filterData, scopes) {
|
|
10
10
|
if (isEmpty(filterData) || isEmpty(filterData.scopes))
|
|
11
11
|
return;
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
return
|
|
12
|
+
const _filterData = cloneDeep(filterData);
|
|
13
|
+
_filterData.scopes = _filterData.scopes.filter((scope) => !scopes.includes(scope.scope));
|
|
14
|
+
return _filterData.scopes.length > 0 ? _filterData : undefined;
|
|
15
15
|
}
|
|
@@ -6,5 +6,5 @@ import { getFilterColumnLabel } from "./getFilterColumnLabel";
|
|
|
6
6
|
*/
|
|
7
7
|
export function getFilterLabel(filter) {
|
|
8
8
|
const text = filter.extras.filterLabel || filter.column.label;
|
|
9
|
-
return text
|
|
9
|
+
return `${text} ${getFilterColumnLabel(filter.column)}`;
|
|
10
10
|
}
|
|
@@ -8,8 +8,8 @@ import { cloneDeep } from "../../../general/object/cloneDeep";
|
|
|
8
8
|
export function getFiltersByAggregateColumn(filterData) {
|
|
9
9
|
if (isEmpty(filterData) || isEmpty(filterData.scopes))
|
|
10
10
|
return;
|
|
11
|
-
|
|
12
|
-
|
|
11
|
+
const _filterData = cloneDeep(filterData);
|
|
12
|
+
_filterData.scopes = _filterData.scopes.reduce((scopes, scope) => {
|
|
13
13
|
if (isEmpty(scope))
|
|
14
14
|
return scopes;
|
|
15
15
|
scope.datasets.forEach((dataset, index) => {
|
|
@@ -22,5 +22,5 @@ export function getFiltersByAggregateColumn(filterData) {
|
|
|
22
22
|
scopes.push(scope);
|
|
23
23
|
return scopes;
|
|
24
24
|
}, []);
|
|
25
|
-
return
|
|
25
|
+
return _filterData.scopes.length > 0 ? _filterData : undefined;
|
|
26
26
|
}
|
|
@@ -25,17 +25,17 @@ export function getFiltersByParams(filterData, params, settings) {
|
|
|
25
25
|
return;
|
|
26
26
|
if (isEmpty(params))
|
|
27
27
|
return filterData;
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
28
|
+
const _filterData = cloneDeep(filterData);
|
|
29
|
+
const defaultSettings = getParamsToGetFilterSettings(settings);
|
|
30
|
+
_filterData.scopes = _filterData.scopes
|
|
31
31
|
.map((scope) => {
|
|
32
|
-
if (resolveScopeConditions(scope, params,
|
|
32
|
+
if (resolveScopeConditions(scope, params, defaultSettings.letPassUndefinedProperties.scope, defaultSettings.letPassUndefinedParams.scope)) {
|
|
33
33
|
return Object.assign(Object.assign({}, scope), { datasets: scope.datasets
|
|
34
34
|
.map((dataset) => {
|
|
35
|
-
if (resolveDatasetConditions(dataset, params,
|
|
35
|
+
if (resolveDatasetConditions(dataset, params, defaultSettings.letPassUndefinedProperties.dataset, defaultSettings.letPassUndefinedParams.dataset)) {
|
|
36
36
|
return Object.assign(Object.assign({}, dataset), { filters: dataset.filters
|
|
37
37
|
.map((filter) => {
|
|
38
|
-
if (resolveFilterConditions(filter, params,
|
|
38
|
+
if (resolveFilterConditions(filter, params, defaultSettings.letPassUndefinedProperties.filter, defaultSettings.letPassUndefinedParams.filter)) {
|
|
39
39
|
return Object.assign(Object.assign({}, filter), { values: (filter.values || [])
|
|
40
40
|
.map((value) => {
|
|
41
41
|
if (Array.isArray(value) && value.length > 0) {
|
|
@@ -48,13 +48,11 @@ export function getFiltersByParams(filterData, params, settings) {
|
|
|
48
48
|
})
|
|
49
49
|
.filter(Boolean);
|
|
50
50
|
}
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
return value;
|
|
57
|
-
}
|
|
51
|
+
if (!_hasProperty(params, "enableds") ||
|
|
52
|
+
!_hasProperty(params.enableds, "values") ||
|
|
53
|
+
params.enableds.values ===
|
|
54
|
+
value.enabled)
|
|
55
|
+
return value;
|
|
58
56
|
})
|
|
59
57
|
.filter(Boolean) });
|
|
60
58
|
}
|
|
@@ -62,18 +60,18 @@ export function getFiltersByParams(filterData, params, settings) {
|
|
|
62
60
|
.filter((filter) => {
|
|
63
61
|
var _a;
|
|
64
62
|
return !isEmpty(filter) &&
|
|
65
|
-
(!
|
|
63
|
+
(!defaultSettings.filterEmptyArrays.filter ||
|
|
66
64
|
filter.selectAll ||
|
|
67
65
|
((_a = filter.values) === null || _a === void 0 ? void 0 : _a.length) > 0);
|
|
68
66
|
}) });
|
|
69
67
|
}
|
|
70
68
|
})
|
|
71
69
|
.filter((dataset) => !isEmpty(dataset) &&
|
|
72
|
-
(!
|
|
70
|
+
(!defaultSettings.filterEmptyArrays.dataset ||
|
|
73
71
|
dataset.filters.length > 0)) });
|
|
74
72
|
}
|
|
75
73
|
})
|
|
76
74
|
.filter((scope) => !isEmpty(scope) &&
|
|
77
|
-
(!
|
|
78
|
-
return
|
|
75
|
+
(!defaultSettings.filterEmptyArrays.scope || scope.datasets.length > 0));
|
|
76
|
+
return _filterData.scopes.length > 0 ? _filterData : undefined;
|
|
79
77
|
}
|
|
@@ -9,7 +9,7 @@ import { cloneDeep } from "../../../general/object/cloneDeep";
|
|
|
9
9
|
export function getFiltersByScopes(filterData, scopes) {
|
|
10
10
|
if (isEmpty(filterData) || isEmpty(filterData.scopes))
|
|
11
11
|
return;
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
return
|
|
12
|
+
const _filterData = cloneDeep(filterData);
|
|
13
|
+
_filterData.scopes = _filterData.scopes.filter((scope) => scopes.includes(scope.scope));
|
|
14
|
+
return _filterData.scopes.length > 0 ? _filterData : undefined;
|
|
15
15
|
}
|
|
@@ -10,13 +10,13 @@ import { FILTER_SCOPE } from "../../constants/common/FILTER_SCOPE";
|
|
|
10
10
|
export function getFiltersByScopesIds(filterData, scopes = []) {
|
|
11
11
|
if (isEmpty(filterData) || isEmpty(filterData.scopes))
|
|
12
12
|
return;
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
const filteredScopes =
|
|
13
|
+
const _filterData = cloneDeep(filterData);
|
|
14
|
+
_filterData.scopes = scopes.reduce((newScopes, scope) => {
|
|
15
|
+
const filteredScopes = _filterData.scopes.filter((fScope) => scope.label === fScope.scope &&
|
|
16
16
|
(scope.id === fScope.scopeid ||
|
|
17
17
|
(fScope.scope === FILTER_SCOPE.GLOBAL && fScope.scopeid == null)) &&
|
|
18
18
|
fScope.datasets.length > 0);
|
|
19
19
|
return newScopes.concat(filteredScopes);
|
|
20
20
|
}, []);
|
|
21
|
-
return
|
|
21
|
+
return _filterData.scopes.length > 0 ? _filterData : undefined;
|
|
22
22
|
}
|
|
@@ -11,8 +11,8 @@ import { cloneDeep } from "../../../general/object/cloneDeep";
|
|
|
11
11
|
export function getFiltersByVisibility(filterData, scopes) {
|
|
12
12
|
if (isEmpty(filterData) || isEmpty(filterData.scopes))
|
|
13
13
|
return;
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
return
|
|
14
|
+
let _filterData = cloneDeep(filterData);
|
|
15
|
+
_filterData = getFiltersByScopesIds(_filterData, scopes);
|
|
16
|
+
_filterData = getFiltersByParams(_filterData, { enableds: { datasets: true, scopes: true, values: true } }, { filterEmptyArrays: { filter: false } });
|
|
17
|
+
return _filterData;
|
|
18
18
|
}
|
|
@@ -22,14 +22,14 @@ export function mergeFilters(filterData1, filterData2, settings) {
|
|
|
22
22
|
}
|
|
23
23
|
if (isEmpty(filterData2) || isEmpty(filterData2.scopes))
|
|
24
24
|
return filterData1;
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
25
|
+
const _filterData1 = cloneDeep(filterData1);
|
|
26
|
+
const _filterData2 = cloneDeep(filterData2);
|
|
27
|
+
const defaultSettings = getMergeFiltersSettings(settings);
|
|
28
28
|
return {
|
|
29
|
-
enabled:
|
|
30
|
-
scopes: mergeScopes(
|
|
31
|
-
section:
|
|
32
|
-
version:
|
|
29
|
+
enabled: _filterData1.enabled,
|
|
30
|
+
scopes: mergeScopes(_filterData1.scopes, _filterData2.scopes, defaultSettings),
|
|
31
|
+
section: _filterData1.section,
|
|
32
|
+
version: _filterData1.version,
|
|
33
33
|
};
|
|
34
34
|
}
|
|
35
35
|
/**
|
|
@@ -45,11 +45,12 @@ function mergeScopes(scopes1 = [], scopes2 = [], settings) {
|
|
|
45
45
|
scope: scope1.scope,
|
|
46
46
|
scopeid: scope1.scopeid,
|
|
47
47
|
}));
|
|
48
|
+
let _scope1 = scope1;
|
|
48
49
|
if (scope2Index > -1) {
|
|
49
|
-
|
|
50
|
+
_scope1 = Object.assign(Object.assign({}, scopes2[scope2Index]), { datasets: mergeDatasets(scope1.datasets, scopes2[scope2Index].datasets, settings) });
|
|
50
51
|
scopes2.splice(scope2Index, 1);
|
|
51
52
|
}
|
|
52
|
-
scopes.push(
|
|
53
|
+
scopes.push(_scope1);
|
|
53
54
|
return scopes;
|
|
54
55
|
}, []);
|
|
55
56
|
if (scopes2.length > 0)
|
|
@@ -68,11 +69,12 @@ function mergeDatasets(datasets1 = [], datasets2 = [], settings) {
|
|
|
68
69
|
const dataset2Index = datasets2.findIndex((dataset2) => resolveDatasetConditions(dataset2, {
|
|
69
70
|
qrveyid: dataset1.qrveyid,
|
|
70
71
|
}));
|
|
72
|
+
let _dataset1 = dataset1;
|
|
71
73
|
if (dataset2Index > -1) {
|
|
72
|
-
|
|
74
|
+
_dataset1 = Object.assign(Object.assign({}, datasets2[dataset2Index]), { filters: mergeFilterss(dataset1.filters, datasets2[dataset2Index].filters, settings) });
|
|
73
75
|
datasets2.splice(dataset2Index, 1);
|
|
74
76
|
}
|
|
75
|
-
datasets.push(
|
|
77
|
+
datasets.push(_dataset1);
|
|
76
78
|
return datasets;
|
|
77
79
|
}, []);
|
|
78
80
|
if (datasets2.length > 0)
|
|
@@ -95,18 +97,19 @@ function mergeFilterss(filters1 = [], filters2 = [], settings) {
|
|
|
95
97
|
property: filter1.property,
|
|
96
98
|
validator: filter1.validator,
|
|
97
99
|
}));
|
|
100
|
+
let _filter1 = filter1;
|
|
98
101
|
if (filter2Index > -1) {
|
|
99
|
-
|
|
100
|
-
|
|
102
|
+
_filter1 = Object.assign(Object.assign({}, _filter1), { values: mergeValues(_filter1, filters2[filter2Index], settings) });
|
|
103
|
+
_filter1 = mergeFilterProps(_filter1, filters2[filter2Index], settings);
|
|
101
104
|
filters2.splice(filter2Index, 1);
|
|
102
105
|
}
|
|
103
106
|
else {
|
|
104
|
-
|
|
107
|
+
_filter1 = Object.assign(Object.assign({}, _filter1), { operator: settings.setGroupedColumnOperator
|
|
105
108
|
? FILTER_GROUPED_COLUMN_OPERATOR
|
|
106
|
-
:
|
|
109
|
+
: _filter1.operator });
|
|
107
110
|
}
|
|
108
|
-
|
|
109
|
-
filters.push(
|
|
111
|
+
_filter1.filterid = getFilterid(_filter1);
|
|
112
|
+
filters.push(_filter1);
|
|
110
113
|
return filters;
|
|
111
114
|
}, []);
|
|
112
115
|
if (filters2.length > 0)
|
|
@@ -122,8 +125,9 @@ function mergeFilterss(filters1 = [], filters2 = [], settings) {
|
|
|
122
125
|
*/
|
|
123
126
|
function mergeFilterProps(filter1, filter2, settings) {
|
|
124
127
|
var _a, _b, _c;
|
|
128
|
+
let _filter1 = filter1;
|
|
125
129
|
if (settings.overwriteFilterProps) {
|
|
126
|
-
|
|
130
|
+
_filter1 = Object.assign(Object.assign({}, filter1), { collapsed: (_a = filter2.collapsed) !== null && _a !== void 0 ? _a : filter1.collapsed, displayed: (_b = filter2.displayed) !== null && _b !== void 0 ? _b : filter1.displayed, dateSection: filter2.dateSection, extras: filter2.extras, enabled: (_c = filter2.enabled) !== null && _c !== void 0 ? _c : filter1.enabled, operator: filter2.operator || filter1.operator, filterid: filter2.filterid, lookupDisplayIndex: filter2.lookupDisplayIndex, nullValues: filter2.nullValues, selectAll: filter2.selectAll });
|
|
127
131
|
}
|
|
128
|
-
return
|
|
132
|
+
return _filter1;
|
|
129
133
|
}
|
|
@@ -14,11 +14,11 @@ import { isRegularValidator } from "./isRegularValidator";
|
|
|
14
14
|
export function mergeValues(filter1, filter2, settings) {
|
|
15
15
|
if (isEmpty(filter1) && isEmpty(filter2))
|
|
16
16
|
return [];
|
|
17
|
-
|
|
17
|
+
const defaultSettings = getMergeValuesSettings(settings);
|
|
18
18
|
let newValues = [];
|
|
19
19
|
let filter1Values = filter1.values || [];
|
|
20
20
|
const filter2Values = filter2.values || [];
|
|
21
|
-
if (
|
|
21
|
+
if (defaultSettings.overwriteValues) {
|
|
22
22
|
filter1Values = filter2Values;
|
|
23
23
|
newValues = filter1Values;
|
|
24
24
|
}
|
|
@@ -7,7 +7,10 @@ import { FILTER_TOKENS_STRUCTURE_TYPE } from "../constants/common/FILTER_TOKENS_
|
|
|
7
7
|
export function filtersTokensToString(tokens) {
|
|
8
8
|
let str = "";
|
|
9
9
|
for (const token of tokens) {
|
|
10
|
-
if (
|
|
10
|
+
if ([
|
|
11
|
+
FILTER_TOKENS_STRUCTURE_TYPE.SCOPE,
|
|
12
|
+
FILTER_TOKENS_STRUCTURE_TYPE.CHART_NAME,
|
|
13
|
+
].includes(token.type)) {
|
|
11
14
|
str += `\n`;
|
|
12
15
|
}
|
|
13
16
|
str += `${token.token} `;
|
|
@@ -8,7 +8,7 @@ import { getFiltersByAggregateColumn } from "./common/getFiltersByAggregateColum
|
|
|
8
8
|
* @returns the aggFilters structure
|
|
9
9
|
*/
|
|
10
10
|
export function getAggFiltersFromFilterData(filterData, _summaries) {
|
|
11
|
-
|
|
12
|
-
if (isEmpty(
|
|
11
|
+
const _filterData = Object.assign({}, getFiltersByAggregateColumn(filterData));
|
|
12
|
+
if (isEmpty(_filterData))
|
|
13
13
|
return;
|
|
14
14
|
}
|
|
@@ -2,6 +2,7 @@ import { getUIValues } from "./ui/getUIValues";
|
|
|
2
2
|
import { getFilterPropertyLabel } from "./ui/getFilterPropertyLabel";
|
|
3
3
|
import { FILTER_TOKENS_STRUCTURE_TYPE } from "../constants/common/FILTER_TOKENS_STRUCTURE_TYPE";
|
|
4
4
|
import { isEmpty } from "../../general/mix/isEmpty";
|
|
5
|
+
import { FILTER_SCOPE } from "../constants";
|
|
5
6
|
/**
|
|
6
7
|
* It takes a filter object and returns an array of tokens that represent the filter
|
|
7
8
|
* @param {IFUData} filters - The filters object.
|
|
@@ -9,7 +10,7 @@ import { isEmpty } from "../../general/mix/isEmpty";
|
|
|
9
10
|
* @returns {IFFilterTokens[]} An array of tokens that represents the filters object
|
|
10
11
|
*/
|
|
11
12
|
export function getTokensFromFilters(filters, options) {
|
|
12
|
-
var _a, _b, _c;
|
|
13
|
+
var _a, _b, _c, _d;
|
|
13
14
|
const tokens = [];
|
|
14
15
|
const i18nService = options.i18nService;
|
|
15
16
|
const settings = {
|
|
@@ -55,11 +56,24 @@ export function getTokensFromFilters(filters, options) {
|
|
|
55
56
|
const values = getUIValues(filter, settings);
|
|
56
57
|
if (!thereIsFiltersWithValues)
|
|
57
58
|
thereIsFiltersWithValues = true;
|
|
59
|
+
if (options.showChartName && scope.scope === FILTER_SCOPE.CHART) {
|
|
60
|
+
const searchToken = tokens.find((token) => token.token === filter.extras.filterLabel + ":");
|
|
61
|
+
if (!searchToken) {
|
|
62
|
+
if (((_b = tokens[tokens.length - 1]) === null || _b === void 0 ? void 0 : _b.type) ===
|
|
63
|
+
FILTER_TOKENS_STRUCTURE_TYPE.LOGICAL_OPERATOR) {
|
|
64
|
+
tokens.pop();
|
|
65
|
+
}
|
|
66
|
+
tokens.push({
|
|
67
|
+
token: filter.extras.filterLabel + ":",
|
|
68
|
+
type: FILTER_TOKENS_STRUCTURE_TYPE.CHART_NAME,
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
}
|
|
58
72
|
let columnLabel = filter.column.label;
|
|
59
|
-
if ((
|
|
73
|
+
if ((_c = filter === null || filter === void 0 ? void 0 : filter.column) === null || _c === void 0 ? void 0 : _c.aggregate) {
|
|
60
74
|
columnLabel +=
|
|
61
75
|
" (" +
|
|
62
|
-
i18nService.translate(`common.aggregate_labels.${(
|
|
76
|
+
i18nService.translate(`common.aggregate_labels.${(_d = filter === null || filter === void 0 ? void 0 : filter.column) === null || _d === void 0 ? void 0 : _d.aggregate.toLowerCase()}`) +
|
|
63
77
|
")";
|
|
64
78
|
}
|
|
65
79
|
tokens.push({
|
|
@@ -5,6 +5,6 @@ import { cloneDeep } from "../../../general/object/cloneDeep";
|
|
|
5
5
|
* @returns a new Flat UI Filters that were excluded the aggregate filters
|
|
6
6
|
*/
|
|
7
7
|
export function excludeUIFiltersByAggregate(uFilters = []) {
|
|
8
|
-
|
|
9
|
-
return
|
|
8
|
+
const _uFilters = cloneDeep(uFilters);
|
|
9
|
+
return _uFilters.filter((uFilter) => uFilter.column.aggregate == null);
|
|
10
10
|
}
|
|
@@ -9,6 +9,6 @@ import { cloneDeep } from "../../../general/object/cloneDeep";
|
|
|
9
9
|
export function excludeUIFlatFiltersByScopes(uFilters = [], scopes = []) {
|
|
10
10
|
if (isEmpty(uFilters))
|
|
11
11
|
return [];
|
|
12
|
-
|
|
13
|
-
return
|
|
12
|
+
const _uFilters = cloneDeep(uFilters);
|
|
13
|
+
return _uFilters.filter((uFilter) => !scopes.includes(uFilter.extras.scope));
|
|
14
14
|
}
|
|
@@ -16,8 +16,8 @@ import { resolveUIFlatFilterByParams } from "./resolveUIFlatFilterByParams";
|
|
|
16
16
|
export function getUIFlatFilterByParams(uFilters = [], params = {}, getIndex = false) {
|
|
17
17
|
if (isEmpty(params))
|
|
18
18
|
return;
|
|
19
|
-
|
|
19
|
+
const _uFilters = cloneDeep(uFilters);
|
|
20
20
|
return getIndex
|
|
21
|
-
?
|
|
22
|
-
:
|
|
21
|
+
? _uFilters.findIndex((filter) => resolveUIFlatFilterByParams(filter, params))
|
|
22
|
+
: _uFilters.find((filter) => resolveUIFlatFilterByParams(filter, params));
|
|
23
23
|
}
|
|
@@ -17,6 +17,6 @@ import { resolveUIFlatFilterByParams } from "./resolveUIFlatFilterByParams";
|
|
|
17
17
|
export function getUIFlatFiltersByParams(uFilters = [], params = {}) {
|
|
18
18
|
if (isEmpty(params))
|
|
19
19
|
return;
|
|
20
|
-
|
|
21
|
-
return
|
|
20
|
+
const _uFilters = cloneDeep(uFilters);
|
|
21
|
+
return _uFilters.filter((filter) => resolveUIFlatFilterByParams(filter, params));
|
|
22
22
|
}
|
|
@@ -9,6 +9,6 @@ import { cloneDeep } from "../../../general/object/cloneDeep";
|
|
|
9
9
|
export function getUIFlatFiltersByScopes(uFilters = [], scopes = []) {
|
|
10
10
|
if (isEmpty(uFilters))
|
|
11
11
|
return [];
|
|
12
|
-
|
|
13
|
-
return
|
|
12
|
+
const _uFilters = cloneDeep(uFilters);
|
|
13
|
+
return _uFilters.filter((uFilter) => scopes.includes(uFilter.extras.scope));
|
|
14
14
|
}
|
|
@@ -14,29 +14,29 @@ import { I18N_RELATIVE_CONTAINER } from "../../../globalization/labels/filters/I
|
|
|
14
14
|
* @returns an array of values
|
|
15
15
|
*/
|
|
16
16
|
export function getUIValues(filter, settings) {
|
|
17
|
-
|
|
17
|
+
const defaultSettings = getUiValuesSettings(settings);
|
|
18
18
|
const values = filter.values || [];
|
|
19
19
|
switch (filter.validator) {
|
|
20
20
|
case FILTER_VALIDATOR.AFTER:
|
|
21
21
|
case FILTER_VALIDATOR.GREATER_THAN:
|
|
22
22
|
case FILTER_VALIDATOR.AFTER_ON:
|
|
23
23
|
case FILTER_VALIDATOR.GREATER_THAN_EQUAL:
|
|
24
|
-
return getUiRangeAfterValues(values, filter,
|
|
24
|
+
return getUiRangeAfterValues(values, filter, defaultSettings);
|
|
25
25
|
case FILTER_VALIDATOR.BEFORE_ON:
|
|
26
26
|
case FILTER_VALIDATOR.LESS_THAN_EQUAL:
|
|
27
27
|
case FILTER_VALIDATOR.BEFORE:
|
|
28
28
|
case FILTER_VALIDATOR.LESS_THAN:
|
|
29
|
-
return getUiRangeBeforeValues(values, filter,
|
|
29
|
+
return getUiRangeBeforeValues(values, filter, defaultSettings);
|
|
30
30
|
case FILTER_VALIDATOR.BETWEEN_INCLUSIVE:
|
|
31
31
|
case FILTER_VALIDATOR.BETWEEN_EXCLUSIVE:
|
|
32
|
-
return getUiRangeBetweenValues(values, filter,
|
|
32
|
+
return getUiRangeBetweenValues(values, filter, defaultSettings);
|
|
33
33
|
case FILTER_VALIDATOR.IS_NULL:
|
|
34
34
|
case FILTER_VALIDATOR.IS_NOT_NULL:
|
|
35
|
-
return getUiNullValues(values, filter,
|
|
35
|
+
return getUiNullValues(values, filter, defaultSettings);
|
|
36
36
|
case FILTER_VALIDATOR.IN:
|
|
37
|
-
return getUiInValues(values,
|
|
37
|
+
return getUiInValues(values, defaultSettings);
|
|
38
38
|
default:
|
|
39
|
-
return getUiEqualValues(values, filter,
|
|
39
|
+
return getUiEqualValues(values, filter, defaultSettings);
|
|
40
40
|
}
|
|
41
41
|
}
|
|
42
42
|
function getUiRangeAfterValues(values, filter, settings) {
|
|
@@ -54,7 +54,7 @@ function getUiRangeBetweenValues(values, filter, settings) {
|
|
|
54
54
|
function getUiNullValues(values, filter, settings) {
|
|
55
55
|
const value = values[0];
|
|
56
56
|
const valueLabel = (settings === null || settings === void 0 ? void 0 : settings.translate)
|
|
57
|
-
? settings.translate(
|
|
57
|
+
? settings.translate(`filter.validators.${filter.validator.toLowerCase()}_label`)
|
|
58
58
|
: FILTER_VALIDATOR_INFO[filter.validator].label;
|
|
59
59
|
return [getRegularValue(Object.assign(Object.assign({}, value), { value: valueLabel }), settings)];
|
|
60
60
|
}
|
|
@@ -134,7 +134,5 @@ function getRangeSeparator(settings) {
|
|
|
134
134
|
if (!isEmpty(settings.translate) && !isEmpty(settings.rangeSeparatorPath)) {
|
|
135
135
|
return settings.translate(settings.rangeSeparatorPath);
|
|
136
136
|
}
|
|
137
|
-
|
|
138
|
-
return settings.rangeSeparator;
|
|
139
|
-
}
|
|
137
|
+
return settings.rangeSeparator;
|
|
140
138
|
}
|
|
@@ -13,7 +13,5 @@ export function transformFilterValues(filter, settings) {
|
|
|
13
13
|
else if (isRangeValidator(filter.validator)) {
|
|
14
14
|
return values.map((value) => (Object.assign(Object.assign({}, value), { min: transformValue(value.min, transformValueSettings), max: transformValue(value.max, transformValueSettings) })));
|
|
15
15
|
}
|
|
16
|
-
|
|
17
|
-
return values;
|
|
18
|
-
}
|
|
16
|
+
return values;
|
|
19
17
|
}
|
|
@@ -35,14 +35,14 @@ export declare class FiltersApi {
|
|
|
35
35
|
* @returns a promise with a preview of resulting data.
|
|
36
36
|
*/
|
|
37
37
|
private getDataValues;
|
|
38
|
-
private getLogic;
|
|
39
|
-
private getFilter;
|
|
40
|
-
private getChartRequest;
|
|
38
|
+
private static getLogic;
|
|
39
|
+
private static getFilter;
|
|
40
|
+
private static getChartRequest;
|
|
41
41
|
/**
|
|
42
42
|
* Gets the available scopes and scope IDs
|
|
43
43
|
* @returns a collection of the pair Scopes and Scope IDs
|
|
44
44
|
*/
|
|
45
|
-
private getAvailableScopeIds;
|
|
45
|
+
private static getAvailableScopeIds;
|
|
46
46
|
/**
|
|
47
47
|
* Set the config into the Filter Builder Api class
|
|
48
48
|
* @param config the config.
|
|
@@ -97,12 +97,12 @@ export class FiltersApi {
|
|
|
97
97
|
else {
|
|
98
98
|
api = this.chartPaginationApi;
|
|
99
99
|
}
|
|
100
|
-
return api.getChartResult(this.config,
|
|
100
|
+
return api.getChartResult(this.config, FiltersApi.getFilter(config), FiltersApi.getLogic(config), FiltersApi.getChartRequest(config), resetApi);
|
|
101
101
|
});
|
|
102
102
|
}
|
|
103
|
-
getLogic(config) {
|
|
103
|
+
static getLogic(config) {
|
|
104
104
|
var _a;
|
|
105
|
-
const scopes =
|
|
105
|
+
const scopes = FiltersApi.getAvailableScopeIds(config);
|
|
106
106
|
let filterData = getFiltersByVisibility(config.filterData, scopes);
|
|
107
107
|
const dataset = config.datasets.find((d) => { var _a; return d.qrveyid === ((_a = config.filter) === null || _a === void 0 ? void 0 : _a.column.qrveyid); });
|
|
108
108
|
filterData = getFiltersByParams(filterData, { qrveyid: dataset === null || dataset === void 0 ? void 0 : dataset.qrveyid }, {
|
|
@@ -117,21 +117,21 @@ export class FiltersApi {
|
|
|
117
117
|
...(getLogicByDatasets(buildUserFilters(config.userFilters), isEmpty(dataset) ? [] : [dataset.qrveyid]) || []),
|
|
118
118
|
];
|
|
119
119
|
}
|
|
120
|
-
getFilter(config) {
|
|
120
|
+
static getFilter(config) {
|
|
121
121
|
return Object.assign(Object.assign({}, config.filter), { values: !isEmpty(config.valueText)
|
|
122
122
|
? [{ value: config.valueText, enabled: true }]
|
|
123
123
|
: undefined });
|
|
124
124
|
}
|
|
125
|
-
getChartRequest(config) {
|
|
125
|
+
static getChartRequest(config) {
|
|
126
126
|
var _a;
|
|
127
|
-
const scopes =
|
|
127
|
+
const scopes = FiltersApi.getAvailableScopeIds(config);
|
|
128
128
|
return applyHierarchyForAggFilters(config.chartRequest, scopes, (_a = config.filter) === null || _a === void 0 ? void 0 : _a.extras.scope);
|
|
129
129
|
}
|
|
130
130
|
/**
|
|
131
131
|
* Gets the available scopes and scope IDs
|
|
132
132
|
* @returns a collection of the pair Scopes and Scope IDs
|
|
133
133
|
*/
|
|
134
|
-
getAvailableScopeIds(config) {
|
|
134
|
+
static getAvailableScopeIds(config) {
|
|
135
135
|
var _a, _b, _c, _d, _e, _f, _g, _h, _j;
|
|
136
136
|
return getAvailableScopes(Object.assign(Object.assign({}, getAvailableScopesIDsByConfig(config)), { panelid: FILTER_SCOPE.CHART === ((_a = config.filter) === null || _a === void 0 ? void 0 : _a.extras.scope)
|
|
137
137
|
? (_b = config.filter) === null || _b === void 0 ? void 0 : _b.extras.scopeid
|