@qrvey/utils 1.1.0-9 → 1.1.2-1
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/.eslintignore +5 -0
- package/.eslintrc.json +37 -0
- package/README.md +474 -285
- package/bitbucket-pipelines.yml +25 -0
- package/dist/cjs/constants/COLUMN.js +0 -1
- package/dist/cjs/constants/COLUMN_PROPERTY.d.ts +6 -0
- package/dist/cjs/constants/COLUMN_PROPERTY.js +0 -1
- package/dist/cjs/constants/COLUMN_PROPERTY_VALUE.js +4 -1
- package/dist/cjs/date/constants/DATE_DAY_HOURS.d.ts +1 -0
- package/dist/cjs/date/constants/DATE_DAY_HOURS.js +29 -0
- package/dist/cjs/date/constants/DATE_HOUR_MINUTES.d.ts +1 -0
- package/dist/cjs/date/constants/DATE_HOUR_MINUTES.js +65 -0
- package/dist/cjs/date/constants/DATE_MINUTE_SECONDS.d.ts +1 -0
- package/dist/cjs/date/constants/DATE_MINUTE_SECONDS.js +5 -0
- package/dist/cjs/date/constants/DATE_MONTH_DAYS.d.ts +1 -0
- package/dist/cjs/date/constants/DATE_MONTH_DAYS.js +36 -0
- package/dist/cjs/date/constants/DATE_PROPERTY.js +0 -1
- package/dist/cjs/date/constants/DATE_PROPERTY_VALUE.d.ts +8 -0
- package/dist/cjs/date/constants/DATE_PROPERTY_VALUE.js +17 -0
- package/dist/cjs/date/constants/DATE_P_PROPERTIES.d.ts +2 -0
- package/dist/cjs/date/constants/DATE_P_PROPERTIES.js +11 -0
- package/dist/cjs/date/constants/DATE_P_VALUES.d.ts +6 -0
- package/dist/cjs/date/constants/DATE_P_VALUES.js +8 -0
- package/dist/cjs/date/constants/DATE_TIME_P_VALUES.d.ts +6 -0
- package/dist/cjs/date/constants/DATE_TIME_P_VALUES.js +8 -0
- package/dist/cjs/date/constants/DATE_TIME_VALUES.js +1 -1
- package/dist/cjs/date/constants/DATE_WEEK_DAYS.d.ts +1 -0
- package/dist/cjs/date/constants/DATE_WEEK_DAYS.js +6 -0
- package/dist/cjs/date/constants/DATE_YEAR_DAYS.d.ts +1 -0
- package/dist/cjs/date/constants/DATE_YEAR_DAYS.js +370 -0
- package/dist/cjs/date/constants/DATE_YEAR_MONTHS.d.ts +1 -0
- package/dist/cjs/date/constants/DATE_YEAR_MONTHS.js +4 -0
- package/dist/cjs/date/constants/DATE_YEAR_QUARTERS.d.ts +1 -0
- package/dist/cjs/date/constants/DATE_YEAR_QUARTERS.js +4 -0
- package/dist/cjs/date/constants/index.d.ts +12 -0
- package/dist/cjs/date/constants/index.js +12 -0
- package/dist/cjs/date/range/getDateRange.js +26 -21
- package/dist/cjs/date/relative/Adapter.js +1 -1
- package/dist/cjs/date/relative/constants/DATE_FORMATS.d.ts +1 -1
- package/dist/cjs/date/relative/constants/DATE_FORMATS.js +3 -3
- package/dist/cjs/date/relative/helpers/formatStatement.js +6 -6
- package/dist/cjs/filters/adapters/FDToFlatUI.js +5 -12
- package/dist/cjs/filters/adapters/FDToUI.js +2 -3
- package/dist/cjs/filters/adapters/UIToFlatUI.js +5 -12
- package/dist/cjs/filters/adapters/UIToOldLogic.js +9 -1
- package/dist/cjs/filters/adapters/adaptFilterData.js +1 -1
- package/dist/cjs/filters/adapters/flatUIToFD.js +3 -7
- package/dist/cjs/filters/adapters/flatUIToOldLogic.js +41 -62
- package/dist/cjs/filters/adapters/flatUIToUI.js +2 -7
- package/dist/cjs/filters/adapters/logicToFlatUI.js +89 -74
- package/dist/cjs/filters/adapters/transformFilters.d.ts +1 -1
- package/dist/cjs/filters/adapters/transformFilters.js +18 -25
- package/dist/cjs/filters/constants/backend/FILTER_BACKEND_VALIDATOR.js +0 -1
- package/dist/cjs/filters/constants/common/FILTER_GROUPED_COLUMN_OPERATOR.d.ts +2 -0
- package/dist/cjs/filters/constants/common/FILTER_GROUPED_COLUMN_OPERATOR.js +4 -0
- package/dist/cjs/filters/constants/common/FILTER_OPERATOR.js +0 -1
- package/dist/cjs/filters/constants/common/FILTER_VALIDATOR.js +0 -1
- package/dist/cjs/filters/constants/common/index.d.ts +1 -0
- package/dist/cjs/filters/constants/common/index.js +1 -0
- package/dist/cjs/filters/helpers/backend/buildExpression.d.ts +6 -0
- package/dist/cjs/filters/helpers/backend/buildExpression.js +9 -2
- package/dist/cjs/filters/helpers/backend/getBackendGroupValue.js +2 -1
- package/dist/cjs/filters/helpers/backend/getBackendProperty.js +7 -2
- package/dist/cjs/filters/helpers/backend/getBackendValues.js +34 -18
- package/dist/cjs/filters/helpers/common/arePropertiesDateP.d.ts +8 -0
- package/dist/cjs/filters/helpers/common/arePropertiesDateP.js +16 -0
- package/dist/cjs/filters/helpers/common/getFilterColumnLabel.js +1 -1
- package/dist/cjs/filters/helpers/common/getFilterid.js +1 -1
- package/dist/cjs/filters/helpers/common/getFiltersByParams.js +5 -5
- package/dist/cjs/filters/helpers/common/getFiltersByVisibility.js +1 -1
- package/dist/cjs/filters/helpers/common/getMergeFiltersSettings.d.ts +7 -0
- package/dist/cjs/filters/helpers/common/getMergeFiltersSettings.js +16 -0
- package/dist/cjs/filters/helpers/common/getParamsToGetFilterSettings.d.ts +5 -0
- package/dist/cjs/filters/helpers/common/getParamsToGetFilterSettings.js +11 -1
- package/dist/cjs/filters/helpers/common/index.d.ts +2 -0
- package/dist/cjs/filters/helpers/common/index.js +2 -0
- package/dist/cjs/filters/helpers/common/mergeFilters.d.ts +2 -1
- package/dist/cjs/filters/helpers/common/mergeFilters.js +27 -10
- package/dist/cjs/filters/helpers/common/resolveDatasetConditions.js +1 -1
- package/dist/cjs/filters/helpers/common/resolveFilterConditions.js +2 -3
- package/dist/cjs/filters/helpers/common/resolveScopeConditions.js +1 -1
- package/dist/cjs/filters/helpers/getAggFiltersFromFilterData.d.ts +1 -1
- package/dist/cjs/filters/helpers/getAggFiltersFromFilterData.js +18 -19
- package/dist/cjs/filters/helpers/getScopesByHierarchy.js +2 -2
- package/dist/cjs/filters/helpers/ui/excludeUIFlatFiltersByScopes.d.ts +1 -1
- package/dist/cjs/filters/helpers/ui/excludeUIFlatFiltersByScopes.js +1 -1
- package/dist/cjs/filters/helpers/ui/getUIFlatFilterByParams.d.ts +1 -1
- package/dist/cjs/filters/helpers/ui/getUIFlatFilterByParams.js +1 -1
- package/dist/cjs/filters/helpers/ui/getUIFlatFiltersByParams.d.ts +1 -1
- package/dist/cjs/filters/helpers/ui/getUIFlatFiltersByParams.js +1 -1
- package/dist/cjs/filters/helpers/ui/getUIFlatFiltersByScopes.d.ts +1 -1
- package/dist/cjs/filters/helpers/ui/getUIFlatFiltersByScopes.js +1 -1
- package/dist/cjs/filters/helpers/ui/getUIValues.js +6 -5
- package/dist/cjs/filters/interfaces/OLD_IFilterDetail.d.ts +3 -0
- package/dist/cjs/filters/interfaces/common/IFSFilterExtras.d.ts +3 -0
- package/dist/cjs/filters/interfaces/common/IFSFilterExtrasInfo.d.ts +4 -0
- package/dist/cjs/filters/interfaces/common/IFSFilterExtrasInfo.js +2 -0
- package/dist/cjs/filters/interfaces/common/IFSMergeFiltersSettings.d.ts +7 -0
- package/dist/cjs/filters/interfaces/common/IFSMergeFiltersSettings.js +2 -0
- package/dist/cjs/filters/interfaces/common/IFSParamsToGetFilter.d.ts +2 -1
- package/dist/cjs/filters/interfaces/common/IFSParamsToGetFilterEnableds.d.ts +9 -0
- package/dist/cjs/filters/interfaces/common/IFSParamsToGetFilterEnableds.js +2 -0
- package/dist/cjs/filters/interfaces/common/IFSParamsToGetFilterSettings.d.ts +5 -0
- package/dist/cjs/filters/interfaces/common/index.d.ts +3 -0
- package/dist/cjs/filters/interfaces/common/index.js +3 -0
- package/dist/cjs/filters/interfaces/panel/IFPSettingsFilterPanelBodyScopeScope.d.ts +1 -0
- package/dist/cjs/filters/interfaces/panel/IFPSettingsFilterPanelHeader.d.ts +1 -0
- package/dist/cjs/filters/interfaces/panel/IFPSettingsFilterPanelSettings.d.ts +4 -0
- package/dist/cjs/filters/interfaces/panel/IFPSettingsFilterPanelSettingsScope.d.ts +7 -0
- package/dist/cjs/filters/interfaces/panel/IFPSettingsFilterPanelSettingsScope.js +2 -0
- package/dist/cjs/filters/interfaces/panel/index.d.ts +1 -0
- package/dist/cjs/filters/interfaces/panel/index.js +1 -0
- package/dist/cjs/format/definition.d.ts +3 -2
- package/dist/cjs/format/format.d.ts +1 -1
- package/dist/cjs/format/format.js +25 -26
- package/dist/cjs/general/array/delete.d.ts +4 -4
- package/dist/cjs/general/array/delete.js +8 -6
- package/dist/cjs/general/array/filterNestedTree.js +1 -1
- package/dist/cjs/general/array/flattenDeep.d.ts +1 -1
- package/dist/cjs/general/array/flattenDeep.js +4 -2
- package/dist/cjs/general/array/getFirstIndexFromArray.d.ts +1 -1
- package/dist/cjs/general/array/getFirstIndexFromArray.js +7 -5
- package/dist/cjs/general/array/getLastIndexFromArray.d.ts +1 -1
- package/dist/cjs/general/array/getLastIndexFromArray.js +6 -4
- package/dist/cjs/general/function/debounce.d.ts +1 -1
- package/dist/cjs/general/function/throttled.d.ts +1 -1
- package/dist/cjs/general/function/throttled.js +1 -1
- package/dist/cjs/general/mix/importScripts.d.ts +1 -1
- package/dist/cjs/general/mix/isEmpty.d.ts +5 -4
- package/dist/cjs/general/mix/isEmpty.js +12 -6
- package/dist/cjs/general/mix/randomId.d.ts +1 -1
- package/dist/cjs/general/mix/randomId.js +1 -2
- package/dist/cjs/general/mix/size.d.ts +1 -1
- package/dist/cjs/general/object/cloneDeep.d.ts +4 -4
- package/dist/cjs/general/object/cloneDeep.js +14 -6
- package/dist/cjs/general/object/get.d.ts +47 -15
- package/dist/cjs/general/object/get.js +61 -37
- package/dist/cjs/general/object/getAttribute.d.ts +1 -1
- package/dist/cjs/general/object/hasProperty.d.ts +1 -1
- package/dist/cjs/general/object/hasProperty.js +1 -1
- package/dist/cjs/general/object/index.d.ts +1 -0
- package/dist/cjs/general/object/index.js +1 -0
- package/dist/cjs/general/object/isObject.d.ts +6 -0
- package/dist/cjs/general/object/isObject.js +12 -0
- package/dist/cjs/general/object/mapValues.d.ts +1 -1
- package/dist/cjs/general/object/mapValues.js +0 -1
- package/dist/cjs/general/object/omit.js +1 -1
- package/dist/cjs/general/object/pick.js +0 -1
- package/dist/cjs/index.d.ts +2 -0
- package/dist/cjs/index.js +2 -0
- package/dist/cjs/qrvey/getColumnsLabel.js +4 -4
- package/dist/cjs/qrvey/index.d.ts +3 -0
- package/dist/cjs/qrvey/index.js +15 -0
- package/dist/cjs/tokens/index.d.ts +1 -0
- package/dist/cjs/tokens/index.js +13 -0
- package/dist/cjs/tokens/isTokenLabel.d.ts +6 -0
- package/dist/cjs/tokens/isTokenLabel.js +16 -0
- package/dist/constants/COLUMN.js +0 -1
- package/dist/constants/COLUMN_PROPERTY.d.ts +6 -0
- package/dist/constants/COLUMN_PROPERTY.js +0 -1
- package/dist/constants/COLUMN_PROPERTY_VALUE.js +4 -1
- package/dist/date/constants/DATE_DAY_HOURS.d.ts +1 -0
- package/dist/date/constants/DATE_DAY_HOURS.js +26 -0
- package/dist/date/constants/DATE_HOUR_MINUTES.d.ts +1 -0
- package/dist/date/constants/DATE_HOUR_MINUTES.js +62 -0
- package/dist/date/constants/DATE_MINUTE_SECONDS.d.ts +1 -0
- package/dist/date/constants/DATE_MINUTE_SECONDS.js +2 -0
- package/dist/date/constants/DATE_MONTH_DAYS.d.ts +1 -0
- package/dist/date/constants/DATE_MONTH_DAYS.js +33 -0
- package/dist/date/constants/DATE_PROPERTY.js +0 -1
- package/dist/date/constants/DATE_PROPERTY_VALUE.d.ts +8 -0
- package/dist/date/constants/DATE_PROPERTY_VALUE.js +14 -0
- package/dist/date/constants/DATE_P_PROPERTIES.d.ts +2 -0
- package/dist/date/constants/DATE_P_PROPERTIES.js +8 -0
- package/dist/date/constants/DATE_P_VALUES.d.ts +6 -0
- package/dist/date/constants/DATE_P_VALUES.js +5 -0
- package/dist/date/constants/DATE_TIME_P_VALUES.d.ts +6 -0
- package/dist/date/constants/DATE_TIME_P_VALUES.js +5 -0
- package/dist/date/constants/DATE_TIME_VALUES.js +1 -1
- package/dist/date/constants/DATE_WEEK_DAYS.d.ts +1 -0
- package/dist/date/constants/DATE_WEEK_DAYS.js +3 -0
- package/dist/date/constants/DATE_YEAR_DAYS.d.ts +1 -0
- package/dist/date/constants/DATE_YEAR_DAYS.js +367 -0
- package/dist/date/constants/DATE_YEAR_MONTHS.d.ts +1 -0
- package/dist/date/constants/DATE_YEAR_MONTHS.js +1 -0
- package/dist/date/constants/DATE_YEAR_QUARTERS.d.ts +1 -0
- package/dist/date/constants/DATE_YEAR_QUARTERS.js +1 -0
- package/dist/date/constants/index.d.ts +12 -0
- package/dist/date/constants/index.js +12 -0
- package/dist/date/range/getDateRange.js +26 -21
- package/dist/date/relative/Adapter.js +2 -2
- package/dist/date/relative/constants/DATE_FORMATS.d.ts +1 -1
- package/dist/date/relative/constants/DATE_FORMATS.js +3 -3
- package/dist/date/relative/helpers/formatStatement.js +7 -7
- package/dist/filters/adapters/FDToFlatUI.js +5 -12
- package/dist/filters/adapters/FDToUI.js +2 -3
- package/dist/filters/adapters/UIToFlatUI.js +5 -12
- package/dist/filters/adapters/UIToOldLogic.js +9 -1
- package/dist/filters/adapters/adaptFilterData.js +1 -1
- package/dist/filters/adapters/flatUIToFD.js +3 -7
- package/dist/filters/adapters/flatUIToOldLogic.js +42 -63
- package/dist/filters/adapters/flatUIToUI.js +3 -8
- package/dist/filters/adapters/logicToFlatUI.js +91 -76
- package/dist/filters/adapters/transformFilters.d.ts +1 -1
- package/dist/filters/adapters/transformFilters.js +19 -26
- package/dist/filters/constants/backend/FILTER_BACKEND_VALIDATOR.js +0 -1
- package/dist/filters/constants/common/FILTER_GROUPED_COLUMN_OPERATOR.d.ts +2 -0
- package/dist/filters/constants/common/FILTER_GROUPED_COLUMN_OPERATOR.js +1 -0
- package/dist/filters/constants/common/FILTER_OPERATOR.js +0 -1
- package/dist/filters/constants/common/FILTER_VALIDATOR.js +0 -1
- package/dist/filters/constants/common/index.d.ts +1 -0
- package/dist/filters/constants/common/index.js +1 -0
- package/dist/filters/helpers/backend/buildExpression.d.ts +6 -0
- package/dist/filters/helpers/backend/buildExpression.js +9 -2
- package/dist/filters/helpers/backend/getBackendGroupValue.js +2 -1
- package/dist/filters/helpers/backend/getBackendProperty.js +8 -3
- package/dist/filters/helpers/backend/getBackendValues.js +34 -18
- package/dist/filters/helpers/common/arePropertiesDateP.d.ts +8 -0
- package/dist/filters/helpers/common/arePropertiesDateP.js +12 -0
- package/dist/filters/helpers/common/getFilterColumnLabel.js +1 -1
- package/dist/filters/helpers/common/getFilterid.js +1 -1
- package/dist/filters/helpers/common/getFiltersByParams.js +6 -6
- package/dist/filters/helpers/common/getFiltersByVisibility.js +1 -1
- package/dist/filters/helpers/common/getMergeFiltersSettings.d.ts +7 -0
- package/dist/filters/helpers/common/getMergeFiltersSettings.js +12 -0
- package/dist/filters/helpers/common/getParamsToGetFilterSettings.d.ts +5 -0
- package/dist/filters/helpers/common/getParamsToGetFilterSettings.js +11 -1
- package/dist/filters/helpers/common/index.d.ts +2 -0
- package/dist/filters/helpers/common/index.js +2 -0
- package/dist/filters/helpers/common/mergeFilters.d.ts +2 -1
- package/dist/filters/helpers/common/mergeFilters.js +27 -10
- package/dist/filters/helpers/common/resolveDatasetConditions.js +1 -1
- package/dist/filters/helpers/common/resolveFilterConditions.js +2 -3
- package/dist/filters/helpers/common/resolveScopeConditions.js +1 -1
- package/dist/filters/helpers/getAggFiltersFromFilterData.d.ts +1 -1
- package/dist/filters/helpers/getAggFiltersFromFilterData.js +18 -19
- package/dist/filters/helpers/getScopesByHierarchy.js +2 -2
- package/dist/filters/helpers/ui/excludeUIFlatFiltersByScopes.d.ts +1 -1
- package/dist/filters/helpers/ui/excludeUIFlatFiltersByScopes.js +1 -1
- package/dist/filters/helpers/ui/getUIFlatFilterByParams.d.ts +1 -1
- package/dist/filters/helpers/ui/getUIFlatFilterByParams.js +1 -1
- package/dist/filters/helpers/ui/getUIFlatFiltersByParams.d.ts +1 -1
- package/dist/filters/helpers/ui/getUIFlatFiltersByParams.js +1 -1
- package/dist/filters/helpers/ui/getUIFlatFiltersByScopes.d.ts +1 -1
- package/dist/filters/helpers/ui/getUIFlatFiltersByScopes.js +1 -1
- package/dist/filters/helpers/ui/getUIValues.js +6 -5
- package/dist/filters/interfaces/OLD_IFilterDetail.d.ts +3 -0
- package/dist/filters/interfaces/common/IFSFilterExtras.d.ts +3 -0
- package/dist/filters/interfaces/common/IFSFilterExtrasInfo.d.ts +4 -0
- package/dist/filters/interfaces/common/IFSFilterExtrasInfo.js +1 -0
- package/dist/filters/interfaces/common/IFSMergeFiltersSettings.d.ts +7 -0
- package/dist/filters/interfaces/common/IFSMergeFiltersSettings.js +1 -0
- package/dist/filters/interfaces/common/IFSParamsToGetFilter.d.ts +2 -1
- package/dist/filters/interfaces/common/IFSParamsToGetFilterEnableds.d.ts +9 -0
- package/dist/filters/interfaces/common/IFSParamsToGetFilterEnableds.js +1 -0
- package/dist/filters/interfaces/common/IFSParamsToGetFilterSettings.d.ts +5 -0
- package/dist/filters/interfaces/common/index.d.ts +3 -0
- package/dist/filters/interfaces/common/index.js +3 -0
- package/dist/filters/interfaces/panel/IFPSettingsFilterPanelBodyScopeScope.d.ts +1 -0
- package/dist/filters/interfaces/panel/IFPSettingsFilterPanelHeader.d.ts +1 -0
- package/dist/filters/interfaces/panel/IFPSettingsFilterPanelSettings.d.ts +4 -0
- package/dist/filters/interfaces/panel/IFPSettingsFilterPanelSettingsScope.d.ts +7 -0
- package/dist/filters/interfaces/panel/IFPSettingsFilterPanelSettingsScope.js +1 -0
- package/dist/filters/interfaces/panel/index.d.ts +1 -0
- package/dist/filters/interfaces/panel/index.js +1 -0
- package/dist/format/definition.d.ts +3 -2
- package/dist/format/format.d.ts +1 -1
- package/dist/format/format.js +12 -13
- package/dist/general/array/delete.d.ts +4 -4
- package/dist/general/array/delete.js +8 -6
- package/dist/general/array/filterNestedTree.js +1 -1
- package/dist/general/array/flattenDeep.d.ts +1 -1
- package/dist/general/array/flattenDeep.js +4 -2
- package/dist/general/array/getFirstIndexFromArray.d.ts +1 -1
- package/dist/general/array/getFirstIndexFromArray.js +7 -5
- package/dist/general/array/getLastIndexFromArray.d.ts +1 -1
- package/dist/general/array/getLastIndexFromArray.js +6 -4
- package/dist/general/function/debounce.d.ts +1 -1
- package/dist/general/function/throttled.d.ts +1 -1
- package/dist/general/function/throttled.js +1 -1
- package/dist/general/mix/importScripts.d.ts +1 -1
- package/dist/general/mix/isEmpty.d.ts +5 -4
- package/dist/general/mix/isEmpty.js +12 -6
- package/dist/general/mix/randomId.d.ts +1 -1
- package/dist/general/mix/randomId.js +1 -2
- package/dist/general/mix/size.d.ts +1 -1
- package/dist/general/object/cloneDeep.d.ts +4 -4
- package/dist/general/object/cloneDeep.js +14 -6
- package/dist/general/object/get.d.ts +47 -15
- package/dist/general/object/get.js +59 -34
- package/dist/general/object/getAttribute.d.ts +1 -1
- package/dist/general/object/hasProperty.d.ts +1 -1
- package/dist/general/object/hasProperty.js +1 -1
- package/dist/general/object/index.d.ts +1 -0
- package/dist/general/object/index.js +1 -0
- package/dist/general/object/isObject.d.ts +6 -0
- package/dist/general/object/isObject.js +8 -0
- package/dist/general/object/mapValues.d.ts +1 -1
- package/dist/general/object/mapValues.js +0 -1
- package/dist/general/object/omit.js +1 -1
- package/dist/general/object/pick.js +0 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.js +2 -0
- package/dist/qrvey/getColumnsLabel.js +5 -5
- package/dist/qrvey/index.d.ts +3 -0
- package/dist/qrvey/index.js +3 -0
- package/dist/tokens/index.d.ts +1 -0
- package/dist/tokens/index.js +1 -0
- package/dist/tokens/isTokenLabel.d.ts +6 -0
- package/dist/tokens/isTokenLabel.js +12 -0
- package/package.json +17 -10
- package/prepareToPublish.js +52 -0
- package/src/constants/COLUMN.ts +1 -1
- package/src/constants/COLUMN_PROPERTY.ts +13 -2
- package/src/constants/COLUMN_PROPERTY_VALUE.ts +6 -1
- package/src/date/constants/DATE_DAY_HOURS.ts +27 -0
- package/src/date/constants/DATE_HOUR_MINUTES.ts +63 -0
- package/src/date/constants/DATE_MINUTE_SECONDS.ts +3 -0
- package/src/date/constants/DATE_MONTH_DAYS.ts +34 -0
- package/src/date/constants/DATE_PROPERTY.ts +1 -1
- package/src/date/constants/DATE_PROPERTY_VALUE.ts +16 -0
- package/src/date/constants/DATE_P_PROPERTIES.ts +10 -0
- package/src/date/constants/DATE_P_VALUES.ts +7 -0
- package/src/date/constants/DATE_TIME_PROPERTIES.ts +0 -1
- package/src/date/constants/DATE_TIME_P_VALUES.ts +7 -0
- package/src/date/constants/DATE_TIME_VALUES.ts +1 -1
- package/src/date/constants/DATE_WEEK_DAYS.ts +4 -0
- package/src/date/constants/DATE_YEAR_DAYS.ts +368 -0
- package/src/date/constants/DATE_YEAR_MONTHS.ts +2 -0
- package/src/date/constants/DATE_YEAR_QUARTERS.ts +1 -0
- package/src/date/constants/index.ts +12 -0
- package/src/date/range/getDateRange.ts +46 -42
- package/src/date/relative/Adapter.ts +2 -2
- package/src/date/relative/constants/DATE_FORMATS.ts +3 -4
- package/src/date/relative/constants/RELATIVE_CURSOR_VALUE.ts +1 -1
- package/src/date/relative/helpers/formatStatement.ts +8 -8
- package/src/date/relative/index.ts +1 -1
- package/src/filters/adapters/FDToFlatUI.ts +7 -3
- package/src/filters/adapters/FDToUI.ts +5 -6
- package/src/filters/adapters/UIToFD.ts +1 -1
- package/src/filters/adapters/UIToFlatUI.ts +9 -5
- package/src/filters/adapters/UIToOldLogic.ts +11 -3
- package/src/filters/adapters/adaptFilterData.ts +1 -1
- package/src/filters/adapters/flatUIToFD.ts +5 -1
- package/src/filters/adapters/flatUIToOldLogic.ts +57 -71
- package/src/filters/adapters/flatUIToUI.ts +4 -1
- package/src/filters/adapters/logicToFlatUI.ts +101 -77
- package/src/filters/adapters/transformFilters.ts +22 -30
- package/src/filters/constants/backend/FILTER_BACKEND_VALIDATOR.ts +1 -1
- package/src/filters/constants/common/FILTER_GROUPED_COLUMN_OPERATOR.ts +3 -0
- package/src/filters/constants/common/FILTER_OPERATOR.ts +1 -1
- package/src/filters/constants/common/FILTER_VALIDATOR.ts +1 -1
- package/src/filters/constants/common/index.ts +1 -0
- package/src/filters/helpers/backend/buildExpression.ts +11 -3
- package/src/filters/helpers/backend/buildFilters.ts +2 -2
- package/src/filters/helpers/backend/getBackendGroupValue.ts +2 -1
- package/src/filters/helpers/backend/getBackendProperty.ts +6 -3
- package/src/filters/helpers/backend/getBackendValues.ts +27 -23
- package/src/filters/helpers/builder/getFilterBuilderGeneralConfig.ts +1 -1
- package/src/filters/helpers/common/areFiltersEquals.ts +1 -1
- package/src/filters/helpers/common/arePropertiesDateP.ts +14 -0
- package/src/filters/helpers/common/excludeFiltersByParams.ts +1 -1
- package/src/filters/helpers/common/getFilterColumnLabel.ts +1 -1
- package/src/filters/helpers/common/getFilterLabel.ts +1 -1
- package/src/filters/helpers/common/getFilterid.ts +1 -1
- package/src/filters/helpers/common/getFiltersByAggregateColumn.ts +1 -1
- package/src/filters/helpers/common/getFiltersByParams.ts +6 -7
- package/src/filters/helpers/common/getFiltersByVisibility.ts +1 -1
- package/src/filters/helpers/common/getMergeFiltersSettings.ts +13 -0
- package/src/filters/helpers/common/getParamsToGetFilterSettings.ts +11 -1
- package/src/filters/helpers/common/index.ts +2 -0
- package/src/filters/helpers/common/isInValidator.ts +1 -1
- package/src/filters/helpers/common/mergeFilters.ts +30 -17
- package/src/filters/helpers/common/resolveDatasetConditions.ts +1 -1
- package/src/filters/helpers/common/resolveFilterConditions.ts +2 -3
- package/src/filters/helpers/common/resolveScopeConditions.ts +1 -1
- package/src/filters/helpers/getAggFiltersFromFilterData.ts +20 -23
- package/src/filters/helpers/getAvailableScopesIDsByConfig.ts +1 -1
- package/src/filters/helpers/getScopesByHierarchy.ts +2 -2
- package/src/filters/helpers/ui/excludeUIFlatFiltersByScopes.ts +2 -2
- package/src/filters/helpers/ui/getUIFlatFilterByParams.ts +1 -1
- package/src/filters/helpers/ui/getUIFlatFiltersByParams.ts +1 -1
- package/src/filters/helpers/ui/getUIFlatFiltersByScopes.ts +1 -1
- package/src/filters/helpers/ui/getUIValues.ts +9 -9
- package/src/filters/helpers/ui/resolveUIFlatFiltersByParams.ts +1 -1
- package/src/filters/interfaces/OLD_IFilterDetail.ts +4 -0
- package/src/filters/interfaces/backend/IFBExpression.ts +1 -1
- package/src/filters/interfaces/common/IFSFilterExtras.ts +4 -0
- package/src/filters/interfaces/common/IFSFilterExtrasInfo.ts +5 -0
- package/src/filters/interfaces/common/IFSMergeFiltersSettings.ts +8 -0
- package/src/filters/interfaces/common/IFSParamsToGetFilter.ts +2 -1
- package/src/filters/interfaces/common/IFSParamsToGetFilterEnableds.ts +9 -0
- package/src/filters/interfaces/common/IFSParamsToGetFilterSettings.ts +5 -0
- package/src/filters/interfaces/common/index.ts +3 -0
- package/src/filters/interfaces/panel/IFPSettingsFilterPanelBodyScopeScope.ts +1 -0
- package/src/filters/interfaces/panel/IFPSettingsFilterPanelHeader.ts +1 -0
- package/src/filters/interfaces/panel/IFPSettingsFilterPanelSettings.ts +4 -0
- package/src/filters/interfaces/panel/IFPSettingsFilterPanelSettingsScope.ts +7 -0
- package/src/filters/interfaces/panel/IFilterPanelConfig.ts +0 -2
- package/src/filters/interfaces/panel/index.ts +1 -0
- package/src/filters/interfaces/ui/IFUFilterExtras.ts +1 -1
- package/src/format/definition.ts +7 -8
- package/src/format/format.ts +19 -22
- package/src/general/array/delete.ts +10 -6
- package/src/general/array/filterNestedTree.ts +1 -1
- package/src/general/array/flattenDeep.ts +3 -2
- package/src/general/array/getFirstIndexFromArray.ts +8 -6
- package/src/general/array/getLastIndexFromArray.ts +7 -5
- package/src/general/function/debounce.ts +2 -2
- package/src/general/function/throttled.ts +3 -3
- package/src/general/mix/importScripts.ts +1 -1
- package/src/general/mix/isEmpty.ts +12 -7
- package/src/general/mix/isNull.ts +2 -2
- package/src/general/mix/randomId.ts +2 -2
- package/src/general/mix/size.ts +1 -1
- package/src/general/object/cloneDeep.ts +15 -6
- package/src/general/object/get.ts +59 -31
- package/src/general/object/getAttribute.ts +1 -1
- package/src/general/object/hasProperty.ts +1 -1
- package/src/general/object/index.ts +3 -2
- package/src/general/object/isObject.ts +8 -0
- package/src/general/object/mapValues.ts +2 -2
- package/src/general/object/omit.ts +2 -2
- package/src/general/object/pick.ts +1 -1
- package/src/general/string/capitalize.ts +1 -1
- package/src/index.ts +3 -1
- package/src/qrvey/getColumnsLabel.ts +5 -5
- package/src/qrvey/index.ts +3 -0
- package/src/qrvey/isComplexColumn.ts +1 -1
- package/src/qrvey/isDateColumn.ts +1 -1
- package/src/stencil/decorators/Config.ts +2 -2
- package/src/tokens/index.ts +1 -0
- package/src/tokens/isTokenLabel.ts +13 -0
- package/src/typescript/decorators/Debounce.ts +2 -2
- package/src/typescript/decorators/Throttled.ts +2 -2
- package/test/format.test.js +97 -5
- package/test/general/array/delete.test.js +64 -0
- package/test/general/array/flattenDeep.test.js +44 -0
- package/test/general/array/getFirstIndexFromArray.test.js +56 -0
- package/test/general/array/getLastIndexFromArray.test.js +56 -0
- package/test/general/mix/isEmpty.test.js +144 -0
- package/test/general/object/cloneDeep.test.js +152 -0
- package/test/general/object/get.test.js +247 -0
- package/test/relative.test.js +24 -24
|
@@ -1,10 +1,15 @@
|
|
|
1
|
-
import { size } from './size';
|
|
2
|
-
|
|
3
1
|
/**
|
|
4
|
-
*
|
|
5
|
-
* @param
|
|
6
|
-
* @
|
|
2
|
+
* Validates if the given argument is empty
|
|
3
|
+
* @param variable the given variable
|
|
4
|
+
* @param includeFalsy flag to determine include the falsy variables into the validation
|
|
5
|
+
* @returns true: the given argument is empty; false: is not.
|
|
7
6
|
*/
|
|
8
|
-
export function isEmpty(
|
|
9
|
-
return
|
|
7
|
+
export function isEmpty<T = any>(variable: T, includeFalsy = false): boolean {
|
|
8
|
+
return typeof variable == 'undefined'
|
|
9
|
+
|| variable == null
|
|
10
|
+
|| (typeof variable == 'number' && includeFalsy && (Number(variable) === 0 || Object.is(variable, -0) || isNaN(variable)))
|
|
11
|
+
|| (typeof variable == 'string' && variable === "")
|
|
12
|
+
|| (typeof variable == 'boolean' && includeFalsy && variable === false)
|
|
13
|
+
|| (Array.isArray(variable) && variable.length === 0)
|
|
14
|
+
|| (variable.constructor === Object && Object.entries(variable).length === 0);
|
|
10
15
|
}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* @param {Number} length size of the generated string. Default 8
|
|
4
4
|
* @return {String}
|
|
5
5
|
*/
|
|
6
|
-
export function randomId (
|
|
6
|
+
export function randomId (_length = 8): string {
|
|
7
7
|
const charSet = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_';
|
|
8
8
|
let id = '';
|
|
9
9
|
for (let i = 0; i < 8; i++) {
|
|
@@ -11,4 +11,4 @@ export function randomId (length = 8) {
|
|
|
11
11
|
id += charSet[randPos];
|
|
12
12
|
}
|
|
13
13
|
return id;
|
|
14
|
-
|
|
14
|
+
}
|
package/src/general/mix/size.ts
CHANGED
|
@@ -1,9 +1,18 @@
|
|
|
1
|
+
import { isEmpty } from "../mix";
|
|
2
|
+
|
|
1
3
|
/**
|
|
2
|
-
* A
|
|
3
|
-
*
|
|
4
|
+
* A simple Deep Cloning function. Valid only for primivite values and object with primitive values.
|
|
5
|
+
* Not to use this function with inner objects and functions
|
|
4
6
|
* @param obj The object
|
|
5
|
-
* @returns The new reference object
|
|
7
|
+
* @returns The new reference object or the given object if the parsing is incorrect or empty
|
|
6
8
|
*/
|
|
7
|
-
export
|
|
8
|
-
|
|
9
|
-
|
|
9
|
+
export function cloneDeep<T = any>(obj: T): T {
|
|
10
|
+
if (isEmpty(obj)) return obj;
|
|
11
|
+
|
|
12
|
+
const stringObject = JSON.stringify(obj);
|
|
13
|
+
if (!isEmpty(stringObject)) {
|
|
14
|
+
const parsedObject = JSON.parse(stringObject) as T;
|
|
15
|
+
return !isEmpty(parsedObject) ? parsedObject : obj;
|
|
16
|
+
}
|
|
17
|
+
return obj;
|
|
18
|
+
}
|
|
@@ -1,38 +1,66 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Like lodash _.get.
|
|
3
|
+
* Gets the value at path of object. If the resolved value is undefined, the defaultValue is returned in its place.
|
|
4
|
+
*
|
|
5
|
+
* Empty arrays and empty objects are returned but the defaultValue is not
|
|
6
|
+
* Undefined and null values will return the defaultValue.
|
|
7
|
+
*
|
|
8
|
+
* @param baseObject The object to query
|
|
9
|
+
* @param path The string path or collection of string paths of the property to get.
|
|
10
|
+
* @param defaultValue The value returned for undefined resolved values.
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
* // returns 'Hello'
|
|
14
|
+
* _get({ item1: 'Hello', item2: 'World' }, 'item1')
|
|
15
|
+
* @example
|
|
16
|
+
* // returns 'A simple Hello'
|
|
17
|
+
* _get({ item1: 'Hello', item2: 'World' }, 'item3', 'A simple Hello')
|
|
18
|
+
* @example
|
|
19
|
+
* // returns 'Hello Again'
|
|
20
|
+
* _get({ item1: { item11: 'Hello Again' }, item2: {} }, 'item1.item11')
|
|
21
|
+
* @example
|
|
22
|
+
* // returns 'Hello 2'
|
|
23
|
+
* _get({ item1: ['Hello 1', 'Hello 2' }, item2: [] }, 'item1[1]')
|
|
24
|
+
* @example
|
|
25
|
+
* // returns 'Hello Again'
|
|
26
|
+
* _get({ item1: { item11: 'Hello Again' }, item2: {} }, ['item1', 'item11'])
|
|
27
|
+
* @returns the resolved value.
|
|
28
|
+
*/
|
|
29
|
+
export function _get(baseObject: any, path: string | string[], defaultValue?: any): any {
|
|
30
|
+
if (validateToReturnDefaultValue(baseObject, path)) return defaultValue;
|
|
22
31
|
|
|
23
|
-
|
|
32
|
+
const keys = Array.isArray(path) ? path : path.replace(/(\[(\d)\])/g, '.$2').split('.').filter(k => k.length);
|
|
33
|
+
baseObject = baseObject[keys[0]];
|
|
34
|
+
if (baseObject !== undefined && keys.length > 1) {
|
|
35
|
+
return _get(baseObject, keys.slice(1), defaultValue);
|
|
24
36
|
}
|
|
37
|
+
return baseObject === undefined ? defaultValue : baseObject;
|
|
38
|
+
}
|
|
25
39
|
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
40
|
+
function validateToReturnDefaultValue(baseObject: any, path: string | string[]): boolean {
|
|
41
|
+
return baseObject == null ||
|
|
42
|
+
path == null ||
|
|
43
|
+
(typeof path !== 'string' && !Array.isArray(path));
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
/**
|
|
48
|
+
*
|
|
49
|
+
* /**
|
|
50
|
+
* Like lodash _.get.
|
|
51
|
+
* Gets the value at path of object. If the resolved value is undefined, the defaultValue is returned in its place.
|
|
52
|
+
* @param baseObject The object to query
|
|
53
|
+
* @param path The path of the property to get.
|
|
54
|
+
* @param defaultValue The value returned for undefined resolved values.
|
|
55
|
+
* @returns the resolved value.
|
|
56
|
+
export function get(baseObject: any, path: string, defaultValue?: any): any {
|
|
30
57
|
function fn() {
|
|
31
58
|
try {
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
} catch (e) { return fallback; }
|
|
59
|
+
const value = eval(`this.${path}`.replace('.[', '['));
|
|
60
|
+
return typeof value !== 'undefined' ? value : defaultValue;
|
|
61
|
+
} catch (e) { return defaultValue; }
|
|
36
62
|
}
|
|
37
63
|
return fn.apply(baseObject, null);
|
|
38
|
-
}
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
*/
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
* getAttribute(obj, 'snake_case') //it search for: obj.snake_case || obj.snakeCase || obj.SnakeCase || obj.snakecase || obj.SNAKECASE
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
|
-
export function getAttribute(obj:
|
|
11
|
+
export function getAttribute(obj: any, key: string) {
|
|
12
12
|
// getAttr: key should be lower_underscore_case
|
|
13
13
|
const camel = key.replace(/_(.)/g, (_, a) => a.toUpperCase());
|
|
14
14
|
const pascal = camel.replace(/(.)/, (_, a) => a.toUpperCase());
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
export * from './cloneDeep'
|
|
1
|
+
export * from './cloneDeep';
|
|
2
2
|
export * from './get';
|
|
3
3
|
export * from './getAttribute';
|
|
4
4
|
export * from './hasProperty';
|
|
5
|
+
export * from './isObject';
|
|
5
6
|
export * from './omit';
|
|
6
7
|
export * from './pick';
|
|
7
|
-
export * from './mapValues';
|
|
8
|
+
export * from './mapValues';
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Checks if the given argument is an object type
|
|
3
|
+
* @param obj the variable to check
|
|
4
|
+
* @returns True: It is an object; False: It is not.
|
|
5
|
+
*/
|
|
6
|
+
export function isObject(obj: any): boolean {
|
|
7
|
+
return Object.prototype.toString.call(obj) === '[object Object]';
|
|
8
|
+
}
|
|
@@ -8,10 +8,10 @@ const defaultIteratee = v => v;
|
|
|
8
8
|
* @param {Function} iteratee The executed per iteration.
|
|
9
9
|
* @returns {Object} New mapped object.
|
|
10
10
|
*/
|
|
11
|
-
export function mapValues(baseObject:
|
|
11
|
+
export function mapValues(baseObject: any, iteratee: (prop: any, i: any) => any) {
|
|
12
12
|
const newObject = {};
|
|
13
13
|
iteratee = typeof iteratee === 'function' ? iteratee : defaultIteratee;
|
|
14
14
|
for (const key in baseObject)
|
|
15
15
|
newObject[key] = iteratee(baseObject[key], key);
|
|
16
16
|
return newObject;
|
|
17
|
-
}
|
|
17
|
+
}
|
package/src/index.ts
CHANGED
|
@@ -3,6 +3,8 @@ export * from './date/index';
|
|
|
3
3
|
export * from './filters/index';
|
|
4
4
|
export * from './general/index';
|
|
5
5
|
export * from './interfaces/index';
|
|
6
|
+
export * from './qrvey/index';
|
|
6
7
|
export * from './stencil/index';
|
|
7
8
|
export * from './typescript/index';
|
|
8
|
-
export * from './
|
|
9
|
+
export * from './tokens/index';
|
|
10
|
+
export * from './format/index';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { _get, isEmpty } from "../general/index";
|
|
2
2
|
import { IQrveyColumn } from "../interfaces/Qrvey.Interface";
|
|
3
3
|
import { isComplexColumn } from "./isComplexColumn";
|
|
4
4
|
|
|
@@ -9,9 +9,9 @@ import { isComplexColumn } from "./isComplexColumn";
|
|
|
9
9
|
*/
|
|
10
10
|
export function getColumnLabels(column: IQrveyColumn): string {
|
|
11
11
|
const labels: string[] = [];
|
|
12
|
-
if (isComplexColumn(column) && !isEmpty(
|
|
13
|
-
if (!isEmpty(
|
|
14
|
-
if (!isEmpty(
|
|
12
|
+
if (isComplexColumn(column) && !isEmpty(_get(column, 'property.abbreviation'))) labels.push(column.property.abbreviation);
|
|
13
|
+
if (!isEmpty(_get(column, 'aggregate.abbreviation'))) labels.push(column.aggregate.abbreviation);
|
|
14
|
+
if (!isEmpty(_get(column, 'calculation.abbreviation'))) labels.push(column.calculation.abbreviation);
|
|
15
15
|
|
|
16
|
-
return
|
|
16
|
+
return labels.length ? `(${labels.join(' - ')})` : '';
|
|
17
17
|
}
|
package/src/qrvey/index.ts
CHANGED
|
@@ -2,4 +2,4 @@ import { COMPLEX_COLUMN } from "../constants/Qrvey.Const";
|
|
|
2
2
|
import { isEmpty } from "../general/index";
|
|
3
3
|
import { IQrveyColumn } from "../interfaces/Qrvey.Interface";
|
|
4
4
|
|
|
5
|
-
export const isComplexColumn = (column: IQrveyColumn
|
|
5
|
+
export const isComplexColumn = (column: IQrveyColumn): boolean => !isEmpty(column) && COMPLEX_COLUMN.includes(column.type);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { isEmpty } from "../general/index";
|
|
2
2
|
import { IQrveyColumn } from "../interfaces/Qrvey.Interface";
|
|
3
3
|
|
|
4
|
-
export const isDateColumn = (column: IQrveyColumn) => !isEmpty(column) && (column.type === 'DATE' || column.formulaType === 'date');
|
|
4
|
+
export const isDateColumn = (column: IQrveyColumn): boolean => !isEmpty(column) && (column.type === 'DATE' || column.formulaType === 'date');
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './isTokenLabel';
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { isEmpty } from "../general";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Get a text and evaluate if it matchs with a token box label.
|
|
5
|
+
* @param label string to evaluate
|
|
6
|
+
* @return True is label matchs; otherwise false
|
|
7
|
+
*/
|
|
8
|
+
export function isTokenLabel(label = ''): boolean {
|
|
9
|
+
if (isEmpty(label) || typeof label !== 'string') return false;
|
|
10
|
+
|
|
11
|
+
const regex = new RegExp('^({{)([^{}]+)(}})$', 'gi');
|
|
12
|
+
return regex.test(label);
|
|
13
|
+
}
|
|
@@ -7,6 +7,6 @@ import { debounce } from '../../general/function/debounce';
|
|
|
7
7
|
|
|
8
8
|
export function Debounce(time = 500) {
|
|
9
9
|
return (target: any, prop: string, descriptor: PropertyDescriptor) => {
|
|
10
|
-
descriptor.value = debounce(target[prop], time)
|
|
11
|
-
}
|
|
10
|
+
descriptor.value = debounce(target[prop], time);
|
|
11
|
+
};
|
|
12
12
|
}
|
|
@@ -7,6 +7,6 @@ import { throttled } from '../../general/function/throttled';
|
|
|
7
7
|
|
|
8
8
|
export function Throttled(time = 500) {
|
|
9
9
|
return (target: any, prop: string, descriptor: PropertyDescriptor) => {
|
|
10
|
-
descriptor.value = throttled(target[prop], time)
|
|
11
|
-
}
|
|
10
|
+
descriptor.value = throttled(target[prop], time);
|
|
11
|
+
};
|
|
12
12
|
}
|
package/test/format.test.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const { formatValue, defineFormat } = require('../dist/cjs');
|
|
1
|
+
const { formatValue, defineFormat, formatAbbreviated } = require('../dist/cjs');
|
|
2
2
|
|
|
3
3
|
describe('Testing format util', function () {
|
|
4
4
|
test('Number formats', function () {
|
|
@@ -58,11 +58,16 @@ describe('Testing format util', function () {
|
|
|
58
58
|
|
|
59
59
|
const ISOFormatRandom1 = formatValue('2018-01-01T00:00:00', {
|
|
60
60
|
"type": "DATE",
|
|
61
|
-
"format": "Q MMMM Do ddd
|
|
61
|
+
"format": "Q MMMM Do ddd"
|
|
62
62
|
});
|
|
63
|
-
expect(ISOFormatRandom1).toEqual('1 January 1st Mon
|
|
63
|
+
expect(ISOFormatRandom1).toEqual('1 January 1st Mon');
|
|
64
64
|
});
|
|
65
65
|
|
|
66
|
+
test("Format Number Abbreviated", ()=>{
|
|
67
|
+
const numberFormasted = formatAbbreviated(4.419, 0);
|
|
68
|
+
expect(numberFormasted).toEqual("4.419");
|
|
69
|
+
})
|
|
70
|
+
|
|
66
71
|
});
|
|
67
72
|
|
|
68
73
|
describe('Define format tests', function () {
|
|
@@ -335,7 +340,7 @@ describe('Define format tests', function () {
|
|
|
335
340
|
expect(currency).toEqual(' $1,000,000.000');
|
|
336
341
|
});
|
|
337
342
|
|
|
338
|
-
test('Structure format object | Chart selected format', function () {
|
|
343
|
+
test('Structure format object | Chart selected format numbers', function () {
|
|
339
344
|
const column = {
|
|
340
345
|
"origColumnType": "NUMERIC",
|
|
341
346
|
"ignored": false,
|
|
@@ -380,7 +385,7 @@ describe('Define format tests', function () {
|
|
|
380
385
|
expect(format).toEqual({ type: 'NUMERIC', format: 'Abbreviated', decimals: '2' });
|
|
381
386
|
});
|
|
382
387
|
|
|
383
|
-
test('Structure format object | Chart selected format default', function () {
|
|
388
|
+
test('Structure format object | Chart selected format default numbers', function () {
|
|
384
389
|
const column = {
|
|
385
390
|
"origColumnType": "NUMERIC",
|
|
386
391
|
"ignored": false,
|
|
@@ -425,4 +430,91 @@ describe('Define format tests', function () {
|
|
|
425
430
|
const format = defineFormat(column, true);
|
|
426
431
|
expect(format).toEqual({ type: 'NUMERIC', format: 'Currency', decimals: '3' });
|
|
427
432
|
});
|
|
433
|
+
|
|
434
|
+
test('Structure format object | Chart selected format datetime', function () {
|
|
435
|
+
const column = {
|
|
436
|
+
"fieldName": "date_6",
|
|
437
|
+
"type": "DATE",
|
|
438
|
+
"userid": "uwUahnI",
|
|
439
|
+
"qrveyid": "uN0GNVZcC",
|
|
440
|
+
"origColumnName": "L62y05ONx_Datetime Column",
|
|
441
|
+
"datasourceId": "L62y05ONx",
|
|
442
|
+
"checked": true,
|
|
443
|
+
"text": "Datetime Column",
|
|
444
|
+
"id": "1t5DIO2WFk",
|
|
445
|
+
"outputFormat": {
|
|
446
|
+
"type": "DATE",
|
|
447
|
+
"format": "MM/DD/YYYY HH24:MM:SS"
|
|
448
|
+
},
|
|
449
|
+
"createDate": "2021-06-15T18:35:15.263Z",
|
|
450
|
+
"ignored": false,
|
|
451
|
+
"columnLevel": 0,
|
|
452
|
+
"modifyDate": "2021-06-15T18:35:15.263Z",
|
|
453
|
+
"columnPath": "Datetime Column",
|
|
454
|
+
"origColumnType": "DATE",
|
|
455
|
+
"column": "Datetime Column",
|
|
456
|
+
"format": "YYYY-MM-DDTHH:mm:ss.sssZ",
|
|
457
|
+
"questionHash": "uwUahnI@@pJFRFAyJf@@uN0GNVZcC",
|
|
458
|
+
"inputFormat": {
|
|
459
|
+
"format": "YYYY-MM-DD",
|
|
460
|
+
"type": "DATE"
|
|
461
|
+
},
|
|
462
|
+
"appid": "pJFRFAyJf",
|
|
463
|
+
"connectionId": "yw614aWzQ",
|
|
464
|
+
"isArray": false,
|
|
465
|
+
"questionOrder": 2,
|
|
466
|
+
"uniqueId": false,
|
|
467
|
+
"selectedFormat": {
|
|
468
|
+
"type": "DATE",
|
|
469
|
+
"format": "YYYY-MM-DD"
|
|
470
|
+
}
|
|
471
|
+
};
|
|
472
|
+
|
|
473
|
+
const format = defineFormat(column, true);
|
|
474
|
+
expect(format).toEqual({ "type": "DATE", "format": "YYYY-MM-DD" });
|
|
475
|
+
});
|
|
476
|
+
|
|
477
|
+
test('Structure format object | Chart selected format default datetime', function () {
|
|
478
|
+
const column = {
|
|
479
|
+
"fieldName": "date_6",
|
|
480
|
+
"type": "DATE",
|
|
481
|
+
"userid": "uwUahnI",
|
|
482
|
+
"qrveyid": "uN0GNVZcC",
|
|
483
|
+
"origColumnName": "L62y05ONx_Datetime Column",
|
|
484
|
+
"datasourceId": "L62y05ONx",
|
|
485
|
+
"checked": true,
|
|
486
|
+
"text": "Datetime Column",
|
|
487
|
+
"id": "1t5DIO2WFk",
|
|
488
|
+
"outputFormat": {
|
|
489
|
+
"type": "DATE",
|
|
490
|
+
"format": "MM/DD/YYYY HH24:MM:SS"
|
|
491
|
+
},
|
|
492
|
+
"createDate": "2021-06-15T18:35:15.263Z",
|
|
493
|
+
"ignored": false,
|
|
494
|
+
"columnLevel": 0,
|
|
495
|
+
"modifyDate": "2021-06-15T18:35:15.263Z",
|
|
496
|
+
"columnPath": "Datetime Column",
|
|
497
|
+
"origColumnType": "DATE",
|
|
498
|
+
"column": "Datetime Column",
|
|
499
|
+
"format": "YYYY-MM-DDTHH:mm:ss.sssZ",
|
|
500
|
+
"questionHash": "uwUahnI@@pJFRFAyJf@@uN0GNVZcC",
|
|
501
|
+
"inputFormat": {
|
|
502
|
+
"format": "YYYY-MM-DD",
|
|
503
|
+
"type": "DATE"
|
|
504
|
+
},
|
|
505
|
+
"appid": "pJFRFAyJf",
|
|
506
|
+
"connectionId": "yw614aWzQ",
|
|
507
|
+
"isArray": false,
|
|
508
|
+
"questionOrder": 2,
|
|
509
|
+
"uniqueId": false,
|
|
510
|
+
"selectedFormat": {
|
|
511
|
+
"type": "DATE",
|
|
512
|
+
"format": "Default"
|
|
513
|
+
}
|
|
514
|
+
};
|
|
515
|
+
|
|
516
|
+
const format = defineFormat(column, true);
|
|
517
|
+
expect(format).toEqual({ "type": "DATE", "format": "MM/DD/YYYY HH24:MM:SS" });
|
|
518
|
+
});
|
|
519
|
+
|
|
428
520
|
})
|