@reltio/components 1.4.2260 → 1.4.2262
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/AttributesValuesEditor/AttributesValuesEditor.js +8 -2
- package/DataTypeValue/DataTypeValue.js +7 -3
- package/DataTypeValue/DataTypeValue.test.js +26 -2
- package/FilterValueEditor/FilterValueEditor.js +9 -3
- package/FilterValueEditor/helpers.d.ts +6 -2
- package/FilterValueEditor/helpers.js +40 -24
- package/FilterValueEditor/helpers.test.d.ts +1 -0
- package/FilterValueEditor/helpers.test.js +30 -0
- package/HOCs/withFilter/components/ColumnFilter/ColumnFilter.js +10 -3
- package/HOCs/withFilter/components/FilterChip/FilterChip.js +13 -3
- package/InlineSimpleAttributeEditor/InlineSimpleAttributeEditor.js +14 -4
- package/SimpleAttributeEditor/SimpleAttributeEditor.js +8 -4
- package/SimpleAttributeEditor/helpers.d.ts +7 -1
- package/SimpleAttributeEditor/helpers.js +10 -8
- package/SimpleAttributeEditor/helpers.test.js +52 -9
- package/cjs/AttributesValuesEditor/AttributesValuesEditor.js +7 -1
- package/cjs/DataTypeValue/DataTypeValue.js +5 -1
- package/cjs/DataTypeValue/DataTypeValue.test.js +26 -2
- package/cjs/FilterValueEditor/FilterValueEditor.js +8 -2
- package/cjs/FilterValueEditor/helpers.d.ts +6 -2
- package/cjs/FilterValueEditor/helpers.js +40 -24
- package/cjs/FilterValueEditor/helpers.test.d.ts +1 -0
- package/cjs/FilterValueEditor/helpers.test.js +32 -0
- package/cjs/HOCs/withFilter/components/ColumnFilter/ColumnFilter.js +9 -2
- package/cjs/HOCs/withFilter/components/FilterChip/FilterChip.js +11 -1
- package/cjs/InlineSimpleAttributeEditor/InlineSimpleAttributeEditor.js +13 -3
- package/cjs/SimpleAttributeEditor/SimpleAttributeEditor.js +6 -2
- package/cjs/SimpleAttributeEditor/helpers.d.ts +7 -1
- package/cjs/SimpleAttributeEditor/helpers.js +11 -8
- package/cjs/SimpleAttributeEditor/helpers.test.js +51 -8
- package/cjs/contexts/MdmModuleContext/context.d.ts +2 -0
- package/cjs/contexts/MdmModuleContext/hooks.d.ts +1 -0
- package/cjs/contexts/MdmModuleContext/hooks.js +5 -1
- package/cjs/contexts/MdmModuleContext/index.d.ts +1 -1
- package/cjs/contexts/MdmModuleContext/index.js +2 -1
- package/cjs/features/activity-log/RecordUpdates/components/DeltaField/DeltaField.js +4 -1
- package/cjs/features/activity-log/hooks/useSegmentReadableQuery.js +6 -1
- package/cjs/features/activity-log/utils/activities.d.ts +3 -1
- package/cjs/features/activity-log/utils/activities.js +8 -3
- package/cjs/features/activity-log/utils/activities.test.js +21 -0
- package/cjs/features/workflow/ChangeRequestEditor/components/DCRValueEditor/DCRValueEditor.d.ts +2 -2
- package/cjs/features/workflow/ChangeRequestEditor/components/DCRValueEditor/DCRValueEditor.js +8 -1
- package/cjs/features/workflow/ChangeRequestEditor/components/DCRValueEditorFactory/DCRValueEditorFactory.d.ts +4 -4
- package/cjs/features/workflow/ChangeRequestEditor/components/DCRValueEditorFactory/DCRValueEditorFactory.js +8 -4
- package/cjs/helpers/attributesView.d.ts +6 -5
- package/cjs/helpers/attributesView.js +24 -10
- package/cjs/helpers/attributesView.test.js +68 -0
- package/cjs/helpers/basicTable.d.ts +5 -2
- package/cjs/helpers/basicTable.js +9 -9
- package/cjs/helpers/basicTable.test.js +56 -0
- package/cjs/hooks/useReadableSearchState/useReadableSearchState.js +4 -2
- package/cjs/hooks/useReadableSearchState/useReadableSearchState.test.js +2 -2
- package/contexts/MdmModuleContext/context.d.ts +2 -0
- package/contexts/MdmModuleContext/hooks.d.ts +1 -0
- package/contexts/MdmModuleContext/hooks.js +3 -0
- package/contexts/MdmModuleContext/index.d.ts +1 -1
- package/contexts/MdmModuleContext/index.js +1 -1
- package/features/activity-log/RecordUpdates/components/DeltaField/DeltaField.js +5 -2
- package/features/activity-log/hooks/useSegmentReadableQuery.js +7 -2
- package/features/activity-log/utils/activities.d.ts +3 -1
- package/features/activity-log/utils/activities.js +9 -4
- package/features/activity-log/utils/activities.test.js +21 -0
- package/features/workflow/ChangeRequestEditor/components/DCRValueEditor/DCRValueEditor.d.ts +2 -2
- package/features/workflow/ChangeRequestEditor/components/DCRValueEditor/DCRValueEditor.js +8 -1
- package/features/workflow/ChangeRequestEditor/components/DCRValueEditorFactory/DCRValueEditorFactory.d.ts +4 -4
- package/features/workflow/ChangeRequestEditor/components/DCRValueEditorFactory/DCRValueEditorFactory.js +8 -4
- package/helpers/attributesView.d.ts +6 -5
- package/helpers/attributesView.js +24 -10
- package/helpers/attributesView.test.js +69 -1
- package/helpers/basicTable.d.ts +5 -2
- package/helpers/basicTable.js +10 -10
- package/helpers/basicTable.test.js +57 -1
- package/hooks/useReadableSearchState/useReadableSearchState.js +5 -3
- package/hooks/useReadableSearchState/useReadableSearchState.test.js +2 -2
- package/package.json +2 -2
|
@@ -39,8 +39,8 @@ var setUp = function (props, mdmValues) {
|
|
|
39
39
|
};
|
|
40
40
|
describe('DataTypeValue tests', function () {
|
|
41
41
|
var checkFormatDataTypeCall = function (_a) {
|
|
42
|
-
var _b = _a.attributesPresentation, attributesPresentation = _b === void 0 ? defaultAttributesPresentation : _b, _c = _a.dateMask, dateMask = _c === void 0 ? defaultDateMask : _c, _d = _a.dateTimeMask, dateTimeMask = _d === void 0 ? defaultDateTimeMask : _d, dataTypeDefinition = _a.dataTypeDefinition, value = _a.value;
|
|
43
|
-
expect(mdm_sdk_1.formatDataTypeValue).toHaveBeenCalledWith({ attributesPresentation: attributesPresentation, dateMask: dateMask, dateTimeMask: dateTimeMask, dataTypeDefinition: dataTypeDefinition }, value);
|
|
42
|
+
var _b = _a.attributesPresentation, attributesPresentation = _b === void 0 ? defaultAttributesPresentation : _b, _c = _a.dateMask, dateMask = _c === void 0 ? defaultDateMask : _c, _d = _a.dateTimeMask, dateTimeMask = _d === void 0 ? defaultDateTimeMask : _d, dataTypeDefinition = _a.dataTypeDefinition, _e = _a.disableTimestampLocalization, disableTimestampLocalization = _e === void 0 ? false : _e, value = _a.value;
|
|
43
|
+
expect(mdm_sdk_1.formatDataTypeValue).toHaveBeenCalledWith({ attributesPresentation: attributesPresentation, dateMask: dateMask, dateTimeMask: dateTimeMask, dataTypeDefinition: dataTypeDefinition, disableTimestampLocalization: disableTimestampLocalization }, value);
|
|
44
44
|
};
|
|
45
45
|
afterEach(function () {
|
|
46
46
|
jest.clearAllMocks();
|
|
@@ -143,4 +143,28 @@ describe('DataTypeValue tests', function () {
|
|
|
143
143
|
react_2.screen.getByText(value);
|
|
144
144
|
checkFormatDataTypeCall({ dataTypeDefinition: dataTypeDefinition, value: value });
|
|
145
145
|
});
|
|
146
|
+
it('should not crash and keep localization on when dataTypeDefinition has no uri and flag is enabled', function () {
|
|
147
|
+
var value = '2025-07-09T23:10:09.000+0000';
|
|
148
|
+
var dataTypeDefinition = { type: 'Timestamp' };
|
|
149
|
+
var mdmValues = __assign(__assign({}, defaultMdmValues), { disableTimestampLocalization: true });
|
|
150
|
+
setUp({ value: value, dataTypeDefinition: dataTypeDefinition }, mdmValues);
|
|
151
|
+
checkFormatDataTypeCall({ dataTypeDefinition: dataTypeDefinition, value: value, disableTimestampLocalization: false });
|
|
152
|
+
});
|
|
153
|
+
it('should disable localization for regular Timestamp attribute when flag is enabled', function () {
|
|
154
|
+
var value = '2025-07-09T23:10:09.000+0000';
|
|
155
|
+
var dataTypeDefinition = {
|
|
156
|
+
type: 'Timestamp',
|
|
157
|
+
uri: 'configuration/entityTypes/Individual/attributes/HireDate'
|
|
158
|
+
};
|
|
159
|
+
var mdmValues = __assign(__assign({}, defaultMdmValues), { disableTimestampLocalization: true });
|
|
160
|
+
setUp({ value: value, dataTypeDefinition: dataTypeDefinition }, mdmValues);
|
|
161
|
+
checkFormatDataTypeCall({ dataTypeDefinition: dataTypeDefinition, value: value, disableTimestampLocalization: true });
|
|
162
|
+
});
|
|
163
|
+
it('should keep localization on for system Timestamp attribute even when flag is enabled', function () {
|
|
164
|
+
var value = '2025-07-09T23:10:09.000+0000';
|
|
165
|
+
var dataTypeDefinition = { type: 'Timestamp', uri: 'createdTime' };
|
|
166
|
+
var mdmValues = __assign(__assign({}, defaultMdmValues), { disableTimestampLocalization: true });
|
|
167
|
+
setUp({ value: value, dataTypeDefinition: dataTypeDefinition }, mdmValues);
|
|
168
|
+
checkFormatDataTypeCall({ dataTypeDefinition: dataTypeDefinition, value: value, disableTimestampLocalization: false });
|
|
169
|
+
});
|
|
146
170
|
});
|
|
@@ -32,13 +32,19 @@ var mdm_sdk_1 = require("@reltio/mdm-sdk");
|
|
|
32
32
|
var ramda_1 = require("ramda");
|
|
33
33
|
var DateRangeEditor_1 = require("../DateRangeEditor");
|
|
34
34
|
var DataTypeValueEditor_1 = require("../DataTypeValueEditor");
|
|
35
|
+
var MdmModuleContext_1 = require("../contexts/MdmModuleContext");
|
|
35
36
|
var RangeDataTypeValueEditor_1 = require("./components/RangeDataTypeValueEditor");
|
|
36
37
|
var helpers_1 = require("./helpers");
|
|
37
38
|
var FilterValueEditor = function (_a) {
|
|
38
39
|
var _b = _a.filter, _c = _b.values, values = _c === void 0 ? [] : _c, fieldName = _b.fieldName, filter = _b.filter, onChange = _a.onChange, dataTypeDefinition = _a.dataTypeDefinition, orientation = _a.orientation, TextFieldProps = _a.TextFieldProps, otherProps = __rest(_a, ["filter", "onChange", "dataTypeDefinition", "orientation", "TextFieldProps"]);
|
|
39
40
|
var dataType = dataTypeDefinition.type;
|
|
40
|
-
var
|
|
41
|
-
var
|
|
41
|
+
var disableTimestampLocalizationFlag = (0, MdmModuleContext_1.useMdmDisableTimestampLocalization)();
|
|
42
|
+
var disableTimestampLocalization = (0, mdm_sdk_1.shouldDisableTimestampLocalizationForAttribute)(dataTypeDefinition, {
|
|
43
|
+
disableTimestampLocalization: disableTimestampLocalizationFlag
|
|
44
|
+
});
|
|
45
|
+
var conversionOptions = { disableTimestampLocalization: disableTimestampLocalization };
|
|
46
|
+
var value = (0, mdm_sdk_1.mapFilterValue)((0, helpers_1.toEditorValue)(dataType, conversionOptions))(values[0]);
|
|
47
|
+
var handleChange = (0, ramda_1.pipe)((0, mdm_sdk_1.mapFilterValue)((0, helpers_1.fromEditorValue)(dataType, conversionOptions)), mdm_sdk_1.wrapInArray, onChange);
|
|
42
48
|
if ((0, mdm_sdk_1.isDateRangeFilterOption)(filter)) {
|
|
43
49
|
return (react_1.default.createElement(DateRangeEditor_1.DateRangeEditor, __assign({}, otherProps, { values: value, onChange: handleChange, dataTypeDefinition: dataTypeDefinition, label: ui_i18n_1.default.text('Date Range') })));
|
|
44
50
|
}
|
|
@@ -1,2 +1,6 @@
|
|
|
1
|
-
export function toEditorValue(dataType: any
|
|
2
|
-
|
|
1
|
+
export function toEditorValue(dataType: any, { disableTimestampLocalization }?: {
|
|
2
|
+
disableTimestampLocalization?: boolean;
|
|
3
|
+
}): (value: any) => any;
|
|
4
|
+
export function fromEditorValue(dataType: any, { disableTimestampLocalization }?: {
|
|
5
|
+
disableTimestampLocalization?: boolean;
|
|
6
|
+
}): (value: any) => any;
|
|
@@ -2,29 +2,45 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.fromEditorValue = exports.toEditorValue = void 0;
|
|
4
4
|
var mdm_sdk_1 = require("@reltio/mdm-sdk");
|
|
5
|
-
var toEditorValue = function (dataType
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
5
|
+
var toEditorValue = function (dataType, _a) {
|
|
6
|
+
var _b = _a === void 0 ? {} : _a, _c = _b.disableTimestampLocalization, disableTimestampLocalization = _c === void 0 ? false : _c;
|
|
7
|
+
return function (value) {
|
|
8
|
+
switch (dataType) {
|
|
9
|
+
case mdm_sdk_1.DataTypes.TYPE_DATE:
|
|
10
|
+
return (0, mdm_sdk_1.isDateRangeValue)(value) ? value : mdm_sdk_1.utils.dates.toLocalDate(value);
|
|
11
|
+
case mdm_sdk_1.DataTypes.TYPE_TIMESTAMP:
|
|
12
|
+
if ((0, mdm_sdk_1.isDateRangeValue)(value)) {
|
|
13
|
+
return value;
|
|
14
|
+
}
|
|
15
|
+
return disableTimestampLocalization ? mdm_sdk_1.utils.dates.toLocalDate(value) : new Date(value);
|
|
16
|
+
case mdm_sdk_1.DataTypes.TYPE_LOCAL_DATE:
|
|
17
|
+
case mdm_sdk_1.DataTypes.TYPE_ACTIVENESS_DATE:
|
|
18
|
+
return (0, mdm_sdk_1.isDateRangeValue)(value) ? value : new Date(value);
|
|
19
|
+
default:
|
|
20
|
+
return value;
|
|
21
|
+
}
|
|
22
|
+
};
|
|
23
|
+
};
|
|
17
24
|
exports.toEditorValue = toEditorValue;
|
|
18
|
-
var fromEditorValue = function (dataType
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
}
|
|
25
|
+
var fromEditorValue = function (dataType, _a) {
|
|
26
|
+
var _b = _a === void 0 ? {} : _a, _c = _b.disableTimestampLocalization, disableTimestampLocalization = _c === void 0 ? false : _c;
|
|
27
|
+
return function (value) {
|
|
28
|
+
switch (dataType) {
|
|
29
|
+
case mdm_sdk_1.DataTypes.TYPE_DATE:
|
|
30
|
+
return (0, mdm_sdk_1.isDateRangeValue)(value)
|
|
31
|
+
? value
|
|
32
|
+
: Date.UTC(value.getFullYear(), value.getMonth(), value.getDate());
|
|
33
|
+
case mdm_sdk_1.DataTypes.TYPE_TIMESTAMP:
|
|
34
|
+
if ((0, mdm_sdk_1.isDateRangeValue)(value)) {
|
|
35
|
+
return value;
|
|
36
|
+
}
|
|
37
|
+
return disableTimestampLocalization ? mdm_sdk_1.utils.dates.toUtcDate(value).getTime() : value.valueOf();
|
|
38
|
+
case mdm_sdk_1.DataTypes.TYPE_LOCAL_DATE:
|
|
39
|
+
case mdm_sdk_1.DataTypes.TYPE_ACTIVENESS_DATE:
|
|
40
|
+
return (0, mdm_sdk_1.isDateRangeValue)(value) ? value : value.valueOf();
|
|
41
|
+
default:
|
|
42
|
+
return value;
|
|
43
|
+
}
|
|
44
|
+
};
|
|
45
|
+
};
|
|
30
46
|
exports.fromEditorValue = fromEditorValue;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
var mdm_sdk_1 = require("@reltio/mdm-sdk");
|
|
4
|
+
var helpers_1 = require("./helpers");
|
|
5
|
+
describe('FilterValueEditor helpers', function () {
|
|
6
|
+
describe('TYPE_TIMESTAMP', function () {
|
|
7
|
+
it('toEditorValue returns Date constructed from value when flag is off', function () {
|
|
8
|
+
var ms = Date.UTC(2020, 1, 20, 7, 0, 0);
|
|
9
|
+
expect((0, helpers_1.toEditorValue)(mdm_sdk_1.DataTypes.TYPE_TIMESTAMP)(ms)).toEqual(new Date(ms));
|
|
10
|
+
});
|
|
11
|
+
it('toEditorValue uses toLocalDate when flag is on (numeric input)', function () {
|
|
12
|
+
var ms = Date.UTC(2020, 1, 20, 7, 0, 0);
|
|
13
|
+
var result = (0, helpers_1.toEditorValue)(mdm_sdk_1.DataTypes.TYPE_TIMESTAMP, { disableTimestampLocalization: true })(ms);
|
|
14
|
+
var utcDate = new Date(ms);
|
|
15
|
+
var expected = new Date(utcDate.getUTCFullYear(), utcDate.getUTCMonth(), utcDate.getUTCDate(), utcDate.getUTCHours(), utcDate.getUTCMinutes(), utcDate.getUTCSeconds(), utcDate.getUTCMilliseconds());
|
|
16
|
+
expect(result.getTime()).toBe(expected.getTime());
|
|
17
|
+
});
|
|
18
|
+
it('fromEditorValue returns local epoch ms when flag is off', function () {
|
|
19
|
+
var localDate = new Date(2020, 1, 20, 7, 0, 0);
|
|
20
|
+
expect((0, helpers_1.fromEditorValue)(mdm_sdk_1.DataTypes.TYPE_TIMESTAMP)(localDate)).toBe(localDate.valueOf());
|
|
21
|
+
});
|
|
22
|
+
it('fromEditorValue preserves local parts as UTC when flag is on', function () {
|
|
23
|
+
var localDate = new Date(2020, 1, 20, 7, 0, 0);
|
|
24
|
+
var result = (0, helpers_1.fromEditorValue)(mdm_sdk_1.DataTypes.TYPE_TIMESTAMP, { disableTimestampLocalization: true })(localDate);
|
|
25
|
+
expect(result).toBe(Date.UTC(localDate.getFullYear(), localDate.getMonth(), localDate.getDate(), localDate.getHours(), localDate.getMinutes(), localDate.getSeconds(), localDate.getMilliseconds()));
|
|
26
|
+
});
|
|
27
|
+
it('passes through DateRange values regardless of flag', function () {
|
|
28
|
+
expect((0, helpers_1.toEditorValue)(mdm_sdk_1.DataTypes.TYPE_TIMESTAMP, { disableTimestampLocalization: true })('lastDay')).toBe('lastDay');
|
|
29
|
+
expect((0, helpers_1.fromEditorValue)(mdm_sdk_1.DataTypes.TYPE_TIMESTAMP, { disableTimestampLocalization: true })('lastDay')).toBe('lastDay');
|
|
30
|
+
});
|
|
31
|
+
});
|
|
32
|
+
});
|
|
@@ -35,6 +35,7 @@ var IconButton_1 = __importDefault(require("@mui/material/IconButton"));
|
|
|
35
35
|
var ArrowDropDown_1 = __importDefault(require("@mui/icons-material/ArrowDropDown"));
|
|
36
36
|
var FilterChip_1 = require("../FilterChip");
|
|
37
37
|
var FilterEditor_1 = require("../../../../FilterEditor");
|
|
38
|
+
var MdmModuleContext_1 = require("../../../../contexts/MdmModuleContext");
|
|
38
39
|
var basicTable_1 = require("../../../../helpers/basicTable");
|
|
39
40
|
var helpers_1 = require("./helpers");
|
|
40
41
|
var styles_1 = require("../../styles");
|
|
@@ -42,6 +43,8 @@ var ColumnFilter = function (_a) {
|
|
|
42
43
|
var _b;
|
|
43
44
|
var columnId = _a.columnId, dataTypeDefinition = _a.dataTypeDefinition, filter = _a.filter, filterOptionsData = _a.filterOptionsData, onFilter = _a.onFilter;
|
|
44
45
|
var styles = (0, styles_1.useStyles)();
|
|
46
|
+
var disableTimestampLocalizationFlag = (0, MdmModuleContext_1.useMdmDisableTimestampLocalization)();
|
|
47
|
+
var disableTimestampLocalizationForFilterValue = (0, mdm_sdk_1.shouldDisableTimestampLocalizationForAttribute)(dataTypeDefinition, { disableTimestampLocalization: disableTimestampLocalizationFlag });
|
|
45
48
|
var _c = (0, react_1.useState)(null), anchorEl = _c[0], setAnchorEl = _c[1];
|
|
46
49
|
var openFilterPopup = function (event) { return setAnchorEl(event.currentTarget); };
|
|
47
50
|
var closeFilterPopup = function () { return setAnchorEl(null); };
|
|
@@ -50,7 +53,9 @@ var ColumnFilter = function (_a) {
|
|
|
50
53
|
setColumnFilter(filter);
|
|
51
54
|
}, [filter]);
|
|
52
55
|
var containerRef = (0, react_1.useRef)(null);
|
|
53
|
-
var mdmFilter = (0, basicTable_1.columnFilterToMdmFilter)({ id: columnId, dataTypeDefinition: dataTypeDefinition }, columnFilter
|
|
56
|
+
var mdmFilter = (0, basicTable_1.columnFilterToMdmFilter)({ id: columnId, dataTypeDefinition: dataTypeDefinition }, columnFilter, {
|
|
57
|
+
disableTimestampLocalization: disableTimestampLocalizationFlag
|
|
58
|
+
});
|
|
54
59
|
var applyFilterChange = function (newFilter) {
|
|
55
60
|
if (newFilter !== filter) {
|
|
56
61
|
onFilter({ columnId: columnId, filter: newFilter });
|
|
@@ -81,7 +86,9 @@ var ColumnFilter = function (_a) {
|
|
|
81
86
|
return (0, ramda_1.pipe)(getFilterOptionData, (0, ramda_1.prop)('label'), (0, ramda_1.defaultTo)((0, mdm_sdk_1.getFilterOptionLabel)(filterOption)))(filterOption);
|
|
82
87
|
};
|
|
83
88
|
var getFilterDataTypeDefinition = function (filterOption) {
|
|
84
|
-
return (0, ramda_1.pipe)(getFilterOptionData, (0, ramda_1.prop)('dataTypeDefinition'), (0, ramda_1.defaultTo)((0, mdm_sdk_1.getDataTypeDefinitionForFilterValue)(dataTypeDefinition, filterOption
|
|
89
|
+
return (0, ramda_1.pipe)(getFilterOptionData, (0, ramda_1.prop)('dataTypeDefinition'), (0, ramda_1.defaultTo)((0, mdm_sdk_1.getDataTypeDefinitionForFilterValue)(dataTypeDefinition, filterOption, {
|
|
90
|
+
disableTimestampLocalization: disableTimestampLocalizationForFilterValue
|
|
91
|
+
})))(filterOption);
|
|
85
92
|
};
|
|
86
93
|
var filterOptionValues = (_b = filterOptionsData === null || filterOptionsData === void 0 ? void 0 : filterOptionsData.map(function (filterOption) { return filterOption.value; })) !== null && _b !== void 0 ? _b : (0, mdm_sdk_1.getFilterOptionsForDataTypeDefinition)(dataTypeDefinition);
|
|
87
94
|
var filterOptions = filterOptionValues.map(function (value) { return ({ value: value, label: getFilterLabel(value) }); });
|
|
@@ -16,9 +16,19 @@ var FilterChip = function (_a) {
|
|
|
16
16
|
var attributesPresentation = (0, MdmModuleContext_1.useMdmAttributesPresentation)();
|
|
17
17
|
var dateMask = (0, MdmModuleContext_1.useMdmDateMask)();
|
|
18
18
|
var dateTimeMask = (0, MdmModuleContext_1.useMdmDateTimeMask)();
|
|
19
|
+
var disableTimestampLocalizationFlag = (0, MdmModuleContext_1.useMdmDisableTimestampLocalization)();
|
|
20
|
+
var disableTimestampLocalization = (0, mdm_sdk_1.shouldDisableTimestampLocalizationForAttribute)(dataTypeDefinition, {
|
|
21
|
+
disableTimestampLocalization: disableTimestampLocalizationFlag
|
|
22
|
+
});
|
|
19
23
|
var canFilterAcceptValues = (0, mdm_sdk_1.checkIfOptionHasValues)(filterOption.value);
|
|
20
24
|
var optionLabel = filterOption.label + (canFilterAcceptValues ? ': ' : '');
|
|
21
|
-
var formatValue = (0, mdm_sdk_1.formatDataTypeValue)({
|
|
25
|
+
var formatValue = (0, mdm_sdk_1.formatDataTypeValue)({
|
|
26
|
+
attributesPresentation: attributesPresentation,
|
|
27
|
+
dataTypeDefinition: dataTypeDefinition,
|
|
28
|
+
dateMask: dateMask,
|
|
29
|
+
dateTimeMask: dateTimeMask,
|
|
30
|
+
disableTimestampLocalization: disableTimestampLocalization
|
|
31
|
+
});
|
|
22
32
|
var convertedValue = (0, mdm_sdk_1.mapFilterValue)(formatValue, filterValue);
|
|
23
33
|
var filterLabel = canFilterAcceptValues ? (0, mdm_sdk_1.getFilterValueLabel)(filterOption.value, convertedValue) : '';
|
|
24
34
|
return (react_1.default.createElement(Chip_1.default, { label: react_1.default.createElement(ExpandedValueTooltip_1.ExpandedValueTooltip, { value: optionLabel + filterLabel },
|
|
@@ -45,6 +45,7 @@ var classnames_1 = __importDefault(require("classnames"));
|
|
|
45
45
|
var ramda_1 = require("ramda");
|
|
46
46
|
var DataTypeValueEditor_1 = require("../DataTypeValueEditor");
|
|
47
47
|
var attributesView_1 = require("../helpers/attributesView");
|
|
48
|
+
var MdmModuleContext_1 = require("../contexts/MdmModuleContext");
|
|
48
49
|
var styles_1 = require("./styles");
|
|
49
50
|
var DATA_TYPES_WITH_MULTILINE_EDITOR = [mdm_sdk_1.DataTypes.TYPE_TEXT, mdm_sdk_1.DataTypes.TYPE_BLOB];
|
|
50
51
|
var InlineSimpleAttributeEditor = function (_a) {
|
|
@@ -55,7 +56,13 @@ var InlineSimpleAttributeEditor = function (_a) {
|
|
|
55
56
|
containerWidth: containerRef.current ? containerRef.current.getBoundingClientRect().width : 0
|
|
56
57
|
});
|
|
57
58
|
var dataTypeDefinition = (0, mdm_sdk_1.getAttrDataTypeDefinition)(attributeType);
|
|
58
|
-
var
|
|
59
|
+
var disableTimestampLocalizationFlag = (0, MdmModuleContext_1.useMdmDisableTimestampLocalization)();
|
|
60
|
+
var disableTimestampLocalization = (0, mdm_sdk_1.shouldDisableTimestampLocalizationForAttribute)(attributeType, {
|
|
61
|
+
disableTimestampLocalization: disableTimestampLocalizationFlag
|
|
62
|
+
});
|
|
63
|
+
var initEditorValue = (0, attributesView_1.attributeValueToEditorValue)(attributeValue, dataTypeDefinition, {
|
|
64
|
+
disableTimestampLocalization: disableTimestampLocalization
|
|
65
|
+
});
|
|
59
66
|
var _c = (0, react_1.useState)(initEditorValue), editorValue = _c[0], changeEditorValue = _c[1];
|
|
60
67
|
var isTemporaryWithDefaultValue = !(0, ramda_1.isNil)(attributeType.defaultValue) && isTemporary;
|
|
61
68
|
var TextFieldProps = {
|
|
@@ -71,7 +78,8 @@ var InlineSimpleAttributeEditor = function (_a) {
|
|
|
71
78
|
autoFocus: true
|
|
72
79
|
};
|
|
73
80
|
var applyChangesAndClose = function () {
|
|
74
|
-
var editedValue = !(0, ramda_1.isNil)(editorValue) &&
|
|
81
|
+
var editedValue = !(0, ramda_1.isNil)(editorValue) &&
|
|
82
|
+
(0, attributesView_1.editorValueToAttributeValue)(attributeType, editorValue, { disableTimestampLocalization: disableTimestampLocalization });
|
|
75
83
|
if ((!(0, ramda_1.isNil)(editorValue) && !(0, ramda_1.equals)(editorValue, initEditorValue)) || isTemporaryWithDefaultValue) {
|
|
76
84
|
var editedAttributeValue = (0, mdm_sdk_1.isLookupAttrType)(attributeType)
|
|
77
85
|
? {
|
|
@@ -79,7 +87,9 @@ var InlineSimpleAttributeEditor = function (_a) {
|
|
|
79
87
|
lookupCode: editedValue.lookupCode
|
|
80
88
|
}
|
|
81
89
|
: {
|
|
82
|
-
value: editorValue === '' && (0, mdm_sdk_1.isNumericType)(dataTypeDefinition.type)
|
|
90
|
+
value: (editorValue === '' && (0, mdm_sdk_1.isNumericType)(dataTypeDefinition.type)
|
|
91
|
+
? null
|
|
92
|
+
: editedValue)
|
|
83
93
|
};
|
|
84
94
|
onEdit(__assign(__assign({}, attributeValue), editedAttributeValue));
|
|
85
95
|
}
|
|
@@ -97,6 +97,10 @@ var SimpleAttributeEditor = function (_a) {
|
|
|
97
97
|
var showToEdit = canEdit && isEditableMode && !attributeValue.masked;
|
|
98
98
|
var errorMessage = (0, mdm_sdk_1.getErrorMessage)(ownError);
|
|
99
99
|
var dependentLookupEditorContext = (0, MdmModuleContext_1.useMdmDependentLookupEditorContext)(attributeValue, attributeType);
|
|
100
|
+
var disableTimestampLocalizationFlag = (0, MdmModuleContext_1.useMdmDisableTimestampLocalization)();
|
|
101
|
+
var disableTimestampLocalization = (0, mdm_sdk_1.shouldDisableTimestampLocalizationForAttribute)(attributeType, {
|
|
102
|
+
disableTimestampLocalization: disableTimestampLocalizationFlag
|
|
103
|
+
});
|
|
100
104
|
var isAutocompleteTriggerAttribute = (0, react_context_selector_1.useContextSelector)(AutoCompleteContext_1.AddressAutoCompleteContext, function (c) { return c === null || c === void 0 ? void 0 : c.isAutocompleteTriggerAttribute; });
|
|
101
105
|
var _g = (0, useScrollToAttributeError_1.useScrollToAttributeError)({ highlightedError: highlightedError, isSimple: true }), ref = _g.ref, errorClassName = _g.errorClassName;
|
|
102
106
|
(0, react_1.useEffect)(function () {
|
|
@@ -117,13 +121,13 @@ var SimpleAttributeEditor = function (_a) {
|
|
|
117
121
|
}
|
|
118
122
|
return dataTypeDefinition;
|
|
119
123
|
}, [attributeType, isAutocompleteTriggerAttribute, isFirstEditor]);
|
|
120
|
-
var value = (0, react_1.useMemo)(function () { return (0, attributesView_1.attributeValueToEditorValue)(attributeValue, dataTypeDefinition); }, [attributeValue, dataTypeDefinition]);
|
|
124
|
+
var value = (0, react_1.useMemo)(function () { return (0, attributesView_1.attributeValueToEditorValue)(attributeValue, dataTypeDefinition, { disableTimestampLocalization: disableTimestampLocalization }); }, [attributeValue, dataTypeDefinition, disableTimestampLocalization]);
|
|
121
125
|
var deactivateError = (0, react_1.useCallback)(function () {
|
|
122
126
|
if (ownError) {
|
|
123
127
|
onDeactivateError((0, mdm_sdk_1.getErrorId)(ownError));
|
|
124
128
|
}
|
|
125
129
|
}, [ownError, onDeactivateError]);
|
|
126
|
-
var onValueEditorChange = (0, react_1.useCallback)((0, ramda_1.pipe)((0, helpers_1.prepareChangeData)(attributeValue, attributeType), onChangeAttribute, deactivateError), [attributeValue, attributeType, onChangeAttribute, deactivateError]);
|
|
130
|
+
var onValueEditorChange = (0, react_1.useCallback)((0, ramda_1.pipe)((0, helpers_1.prepareChangeData)(attributeValue, attributeType, { disableTimestampLocalization: disableTimestampLocalization }), onChangeAttribute, deactivateError), [attributeValue, attributeType, onChangeAttribute, deactivateError, disableTimestampLocalization]);
|
|
127
131
|
var onDelete = function () {
|
|
128
132
|
onDeleteAttribute({ uri: attributeValue.uri, attributeType: attributeType });
|
|
129
133
|
if ((0, mdm_sdk_1.getErrorType)(ownError) !== mdm_sdk_1.ErrorType.missed) {
|
|
@@ -1 +1,7 @@
|
|
|
1
|
-
|
|
1
|
+
import { AttributeType, SimpleAttributeValue } from '@reltio/mdm-sdk';
|
|
2
|
+
import { AttributeValueConversionOptions, EditorValue } from '../helpers/attributesView';
|
|
3
|
+
export declare const prepareChangeData: (attributeValue: SimpleAttributeValue, attributeType: AttributeType, options?: AttributeValueConversionOptions) => (editorValue: EditorValue) => {
|
|
4
|
+
value: import("@reltio/mdm-sdk").PrimitiveValue | import("@reltio/mdm-sdk").LookupValue;
|
|
5
|
+
uri: string;
|
|
6
|
+
attributeType: AttributeType;
|
|
7
|
+
};
|
|
@@ -1,13 +1,16 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.prepareChangeData = void 0;
|
|
4
|
-
var ramda_1 = require("ramda");
|
|
5
4
|
var attributesView_1 = require("../helpers/attributesView");
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
return {
|
|
9
|
-
value
|
|
10
|
-
|
|
11
|
-
|
|
5
|
+
var prepareChangeData = function (attributeValue, attributeType, options) {
|
|
6
|
+
if (options === void 0) { options = {}; }
|
|
7
|
+
return function (editorValue) {
|
|
8
|
+
var value = (0, attributesView_1.editorValueToAttributeValue)(attributeType, editorValue, options);
|
|
9
|
+
return {
|
|
10
|
+
value: value,
|
|
11
|
+
uri: attributeValue.uri,
|
|
12
|
+
attributeType: attributeType
|
|
13
|
+
};
|
|
12
14
|
};
|
|
13
|
-
}
|
|
15
|
+
};
|
|
16
|
+
exports.prepareChangeData = prepareChangeData;
|
|
@@ -4,15 +4,20 @@ var mdm_sdk_1 = require("@reltio/mdm-sdk");
|
|
|
4
4
|
var helpers_1 = require("./helpers");
|
|
5
5
|
describe('helpers', function () {
|
|
6
6
|
describe('prepareChangeData', function () {
|
|
7
|
+
afterEach(function () {
|
|
8
|
+
jest.restoreAllMocks();
|
|
9
|
+
});
|
|
7
10
|
it('should return "true" as a string, if attribute is boolean', function () {
|
|
8
11
|
var attributeValue = {
|
|
9
12
|
value: 'false',
|
|
10
13
|
uri: 'uri1'
|
|
11
14
|
};
|
|
12
15
|
var attributeType = {
|
|
16
|
+
name: 'Flag',
|
|
17
|
+
uri: 'configuration/entityTypes/HasContacts/attributes/Flag',
|
|
13
18
|
type: mdm_sdk_1.DataTypes.TYPE_BOOLEAN
|
|
14
19
|
};
|
|
15
|
-
expect((0, helpers_1.prepareChangeData)(attributeValue, attributeType
|
|
20
|
+
expect((0, helpers_1.prepareChangeData)(attributeValue, attributeType)(true)).toEqual({
|
|
16
21
|
value: 'true',
|
|
17
22
|
uri: attributeValue.uri,
|
|
18
23
|
attributeType: attributeType
|
|
@@ -24,9 +29,11 @@ describe('helpers', function () {
|
|
|
24
29
|
uri: 'uri1'
|
|
25
30
|
};
|
|
26
31
|
var attributeType = {
|
|
32
|
+
name: 'Flag',
|
|
33
|
+
uri: 'configuration/entityTypes/HasContacts/attributes/Flag',
|
|
27
34
|
type: mdm_sdk_1.DataTypes.TYPE_BOOLEAN
|
|
28
35
|
};
|
|
29
|
-
expect((0, helpers_1.prepareChangeData)(attributeValue, attributeType
|
|
36
|
+
expect((0, helpers_1.prepareChangeData)(attributeValue, attributeType)(false)).toEqual({
|
|
30
37
|
value: 'false',
|
|
31
38
|
uri: attributeValue.uri,
|
|
32
39
|
attributeType: attributeType
|
|
@@ -38,9 +45,11 @@ describe('helpers', function () {
|
|
|
38
45
|
uri: 'uri1'
|
|
39
46
|
};
|
|
40
47
|
var attributeType = {
|
|
48
|
+
name: 'Date',
|
|
49
|
+
uri: 'configuration/entityTypes/HasContacts/attributes/Date',
|
|
41
50
|
type: mdm_sdk_1.DataTypes.TYPE_DATE
|
|
42
51
|
};
|
|
43
|
-
expect((0, helpers_1.prepareChangeData)(attributeValue, attributeType
|
|
52
|
+
expect((0, helpers_1.prepareChangeData)(attributeValue, attributeType)(new Date('02-14-2019'))).toEqual({
|
|
44
53
|
value: '2019-02-14',
|
|
45
54
|
uri: attributeValue.uri,
|
|
46
55
|
attributeType: attributeType
|
|
@@ -52,9 +61,11 @@ describe('helpers', function () {
|
|
|
52
61
|
uri: 'uri1'
|
|
53
62
|
};
|
|
54
63
|
var attributeType = {
|
|
64
|
+
name: 'Date',
|
|
65
|
+
uri: 'configuration/entityTypes/HasContacts/attributes/Date',
|
|
55
66
|
type: mdm_sdk_1.DataTypes.TYPE_DATE
|
|
56
67
|
};
|
|
57
|
-
expect((0, helpers_1.prepareChangeData)(attributeValue, attributeType
|
|
68
|
+
expect((0, helpers_1.prepareChangeData)(attributeValue, attributeType)(null)).toEqual({
|
|
58
69
|
value: '',
|
|
59
70
|
uri: attributeValue.uri,
|
|
60
71
|
attributeType: attributeType
|
|
@@ -66,9 +77,11 @@ describe('helpers', function () {
|
|
|
66
77
|
uri: 'uri1'
|
|
67
78
|
};
|
|
68
79
|
var attributeType = {
|
|
80
|
+
name: 'Timestamp',
|
|
81
|
+
uri: 'configuration/entityTypes/HasContacts/attributes/Timestamp',
|
|
69
82
|
type: mdm_sdk_1.DataTypes.TYPE_TIMESTAMP
|
|
70
83
|
};
|
|
71
|
-
var value = (0, helpers_1.prepareChangeData)(attributeValue, attributeType
|
|
84
|
+
var value = (0, helpers_1.prepareChangeData)(attributeValue, attributeType)(new Date('2019-02-14T03:20:40+04:00'));
|
|
72
85
|
expect(value).toMatchObject({
|
|
73
86
|
uri: attributeValue.uri,
|
|
74
87
|
attributeType: attributeType,
|
|
@@ -81,20 +94,48 @@ describe('helpers', function () {
|
|
|
81
94
|
uri: 'uri1'
|
|
82
95
|
};
|
|
83
96
|
var attributeType = {
|
|
97
|
+
name: 'Timestamp',
|
|
98
|
+
uri: 'configuration/entityTypes/HasContacts/attributes/Timestamp',
|
|
84
99
|
type: mdm_sdk_1.DataTypes.TYPE_TIMESTAMP
|
|
85
100
|
};
|
|
86
|
-
expect((0, helpers_1.prepareChangeData)(attributeValue, attributeType
|
|
101
|
+
expect((0, helpers_1.prepareChangeData)(attributeValue, attributeType)(null)).toEqual({
|
|
87
102
|
value: '',
|
|
88
103
|
uri: attributeValue.uri,
|
|
89
104
|
attributeType: attributeType
|
|
90
105
|
});
|
|
91
106
|
});
|
|
107
|
+
it('routes through utils.dates.toUtcDate when disableTimestampLocalization is on', function () {
|
|
108
|
+
var toUtcDateSpy = jest.spyOn(mdm_sdk_1.utils.dates, 'toUtcDate');
|
|
109
|
+
var attributeValue = { value: '2018-01-11T07:00:00.000+0000', uri: 'uri1' };
|
|
110
|
+
var attributeType = {
|
|
111
|
+
name: 'Timestamp',
|
|
112
|
+
uri: 'configuration/entityTypes/HasContacts/attributes/Timestamp',
|
|
113
|
+
type: mdm_sdk_1.DataTypes.TYPE_TIMESTAMP
|
|
114
|
+
};
|
|
115
|
+
var editorDate = new Date(2019, 1, 14, 3, 20, 40);
|
|
116
|
+
(0, helpers_1.prepareChangeData)(attributeValue, attributeType, { disableTimestampLocalization: true })(editorDate);
|
|
117
|
+
expect(toUtcDateSpy).toHaveBeenCalledWith(editorDate);
|
|
118
|
+
});
|
|
119
|
+
it('does not invoke utils.dates.toUtcDate when flag is off (baseline)', function () {
|
|
120
|
+
var toUtcDateSpy = jest.spyOn(mdm_sdk_1.utils.dates, 'toUtcDate');
|
|
121
|
+
var attributeValue = { value: '2018-01-11T07:00:00.000+0000', uri: 'uri1' };
|
|
122
|
+
var attributeType = {
|
|
123
|
+
name: 'Timestamp',
|
|
124
|
+
uri: 'configuration/entityTypes/HasContacts/attributes/Timestamp',
|
|
125
|
+
type: mdm_sdk_1.DataTypes.TYPE_TIMESTAMP
|
|
126
|
+
};
|
|
127
|
+
var editorDate = new Date(2019, 1, 14, 3, 20, 40);
|
|
128
|
+
(0, helpers_1.prepareChangeData)(attributeValue, attributeType)(editorDate);
|
|
129
|
+
expect(toUtcDateSpy).not.toHaveBeenCalledWith(editorDate);
|
|
130
|
+
});
|
|
92
131
|
it('should return new value as is, if attribute is lookup', function () {
|
|
93
132
|
var attributeValue = {
|
|
94
133
|
value: 'KT',
|
|
95
134
|
uri: 'uri1'
|
|
96
135
|
};
|
|
97
136
|
var attributeType = {
|
|
137
|
+
name: 'Unit',
|
|
138
|
+
uri: 'configuration/entityTypes/HasContacts/attributes/Unit',
|
|
98
139
|
type: mdm_sdk_1.DataTypes.TYPE_STRING,
|
|
99
140
|
lookupCode: 'Units Of Measures'
|
|
100
141
|
};
|
|
@@ -102,7 +143,7 @@ describe('helpers', function () {
|
|
|
102
143
|
value: 'G',
|
|
103
144
|
lookupCode: 'Units Of Measures'
|
|
104
145
|
};
|
|
105
|
-
expect((0, helpers_1.prepareChangeData)(attributeValue, attributeType
|
|
146
|
+
expect((0, helpers_1.prepareChangeData)(attributeValue, attributeType)(newValue)).toEqual({
|
|
106
147
|
value: newValue,
|
|
107
148
|
uri: attributeValue.uri,
|
|
108
149
|
attributeType: attributeType
|
|
@@ -114,11 +155,13 @@ describe('helpers', function () {
|
|
|
114
155
|
uri: 'uri1'
|
|
115
156
|
};
|
|
116
157
|
var attributeType = {
|
|
158
|
+
name: 'Unit',
|
|
159
|
+
uri: 'configuration/entityTypes/HasContacts/attributes/Unit',
|
|
117
160
|
type: mdm_sdk_1.DataTypes.TYPE_STRING,
|
|
118
161
|
lookupCode: 'Units Of Measures'
|
|
119
162
|
};
|
|
120
163
|
var newValue = null;
|
|
121
|
-
expect((0, helpers_1.prepareChangeData)(attributeValue, attributeType
|
|
164
|
+
expect((0, helpers_1.prepareChangeData)(attributeValue, attributeType)(newValue)).toEqual({
|
|
122
165
|
value: '',
|
|
123
166
|
uri: attributeValue.uri,
|
|
124
167
|
attributeType: attributeType
|
|
@@ -62,6 +62,7 @@ export type MdmModuleValuesContextProps = Partial<{
|
|
|
62
62
|
dcrReviewAllowAddAttributes: boolean;
|
|
63
63
|
dcrReviewValidation: boolean;
|
|
64
64
|
canUserMakeExport: boolean;
|
|
65
|
+
disableTimestampLocalization: boolean;
|
|
65
66
|
}>;
|
|
66
67
|
export type MdmModuleActionsContextProps = Partial<{
|
|
67
68
|
openSearch: (payload: SearchState) => void;
|
|
@@ -280,6 +281,7 @@ export declare const MdmModuleValuesContext: import("@fluentui/react-context-sel
|
|
|
280
281
|
dcrReviewAllowAddAttributes: boolean;
|
|
281
282
|
dcrReviewValidation: boolean;
|
|
282
283
|
canUserMakeExport: boolean;
|
|
284
|
+
disableTimestampLocalization: boolean;
|
|
283
285
|
}>>;
|
|
284
286
|
export declare const MdmModuleListenersContext: import("@fluentui/react-context-selector").Context<Partial<{
|
|
285
287
|
expandInvalidRelatonsListener: (callback: () => void) => (action: any) => void;
|
|
@@ -161,3 +161,4 @@ export declare const useMdmReviewDCREnabled: () => boolean;
|
|
|
161
161
|
export declare const useMdmDcrReviewAllowAddAttributes: () => boolean;
|
|
162
162
|
export declare const useMdmDcrReviewValidation: () => boolean;
|
|
163
163
|
export declare const useMdmCanUserMakeExport: () => boolean;
|
|
164
|
+
export declare const useMdmDisableTimestampLocalization: () => boolean;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.useMdmSearchProviderData = exports.useMdmSearchNavigationData = exports.useMdmDataTenantsWithIdBuilder = exports.useMdmDataTenants = exports.useMdmEnvironment = exports.useMdmTenantName = exports.useMdmTenant = exports.useMdmTenantObject = exports.useMdmUserRoles = exports.useMdmUsername = exports.useMdmUser = exports.useMdmMetadata = exports.useMdmDependentLookups = exports.useMdmLookups = exports.useMdmProfileLastLoadedTime = exports.useMdmHistoryEvent = exports.useMdmHistorySlice = exports.useMdmHistoryMode = exports.useMdmHistoryDiff = exports.useMdmIsEditableMode = exports.useMdmIsViewMode = exports.useMdmMode = exports.useMdmEntityUriWithDataTenant = exports.useMdmEntityWithDiff = exports.useMdmEntityUri = exports.useMdmEntity = exports.useMdmModifiedEntities = exports.useMdmLookupAutocomplete = exports.useMdmAttributesSortingStrategy = exports.useMdmMaxValuesInResponse = exports.useMdmAttributesPresentation = exports.useMdmDateTimeMask = exports.useMdmDateMask = exports.useMdmPivotingAttributes = exports.useMdmShowEntityId = exports.useMdmImageAttributesFieldsOrder = exports.useMdmCollaborationPath = exports.useMdmImagePath = exports.useMdmApiPath = exports.useMdmReltioPath = exports.useMdmImageServicePath = exports.useMdmWorkflowPath = exports.useMdmServicesPath = exports.useMdmDtssPath = exports.useMdmUiPath = exports.useMdmAbsoluteImagePath = exports.useMdmExportPath = exports.useMdmWorkflowEnvironmentUrl = exports.useMdmUiError = exports.useMdmAutoCloseInterval = void 0;
|
|
4
|
-
exports.useMdmCanUserMakeExport = exports.useMdmDcrReviewValidation = exports.useMdmDcrReviewAllowAddAttributes = exports.useMdmReviewDCREnabled = exports.useMdmShowMasking = exports.useMdmControlAttributes = exports.useMdmHiddenAttributes = exports.useMdmListener = exports.useMdmAction = exports.useMdmAuthoringItemsByEntityType = exports.useMdmGlobalSearchRequestOptions = exports.useMdmDependentLookupEditorContext = exports.useMdmRelationsDrafts = exports.useMdmAllRelationsToAddAndEdit = exports.useMdmDependentLookupsStructureNode = exports.useMdmActiveErrorsForAttributesPager = exports.useMdmDependentLookupEditorState = exports.useMdmInitialConnection = exports.useMdmInitialConnectionTempEntity = exports.useMdmModifiedEntity = exports.useMdmModifiedEntityDefaultProfilePic = exports.useMdmIsSourcesScreenEnabled = exports.useMdmProfileErrors = exports.useMdmIsWorkflowEnabled = exports.useMdmIsCollaborationEnabled = void 0;
|
|
4
|
+
exports.useMdmDisableTimestampLocalization = exports.useMdmCanUserMakeExport = exports.useMdmDcrReviewValidation = exports.useMdmDcrReviewAllowAddAttributes = exports.useMdmReviewDCREnabled = exports.useMdmShowMasking = exports.useMdmControlAttributes = exports.useMdmHiddenAttributes = exports.useMdmListener = exports.useMdmAction = exports.useMdmAuthoringItemsByEntityType = exports.useMdmGlobalSearchRequestOptions = exports.useMdmDependentLookupEditorContext = exports.useMdmRelationsDrafts = exports.useMdmAllRelationsToAddAndEdit = exports.useMdmDependentLookupsStructureNode = exports.useMdmActiveErrorsForAttributesPager = exports.useMdmDependentLookupEditorState = exports.useMdmInitialConnection = exports.useMdmInitialConnectionTempEntity = exports.useMdmModifiedEntity = exports.useMdmModifiedEntityDefaultProfilePic = exports.useMdmIsSourcesScreenEnabled = exports.useMdmProfileErrors = exports.useMdmIsWorkflowEnabled = exports.useMdmIsCollaborationEnabled = void 0;
|
|
5
5
|
var react_context_selector_1 = require("@fluentui/react-context-selector");
|
|
6
6
|
var mdm_sdk_1 = require("@reltio/mdm-sdk");
|
|
7
7
|
var context_1 = require("./context");
|
|
@@ -249,3 +249,7 @@ var useMdmDcrReviewValidation = function () { return useMdmModuleValuesContext(f
|
|
|
249
249
|
exports.useMdmDcrReviewValidation = useMdmDcrReviewValidation;
|
|
250
250
|
var useMdmCanUserMakeExport = function () { return useMdmModuleValuesContext(function (context) { return context.canUserMakeExport; }); };
|
|
251
251
|
exports.useMdmCanUserMakeExport = useMdmCanUserMakeExport;
|
|
252
|
+
var useMdmDisableTimestampLocalization = function () {
|
|
253
|
+
return useMdmModuleValuesContext(function (context) { var _a; return (_a = context.disableTimestampLocalization) !== null && _a !== void 0 ? _a : false; });
|
|
254
|
+
};
|
|
255
|
+
exports.useMdmDisableTimestampLocalization = useMdmDisableTimestampLocalization;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export { MdmModuleProvider } from './provider';
|
|
2
|
-
export { useMdmAutoCloseInterval, useMdmUiError, useMdmWorkflowEnvironmentUrl, useMdmExportPath, useMdmAbsoluteImagePath, useMdmUiPath, useMdmDtssPath, useMdmServicesPath, useMdmWorkflowPath, useMdmImageServicePath, useMdmReltioPath, useMdmApiPath, useMdmCollaborationPath, useMdmImageAttributesFieldsOrder, useMdmShowEntityId, useMdmPivotingAttributes, useMdmDateMask, useMdmDateTimeMask, useMdmAttributesPresentation, useMdmMaxValuesInResponse, useMdmAttributesSortingStrategy, useMdmLookupAutocomplete, useMdmModifiedEntities, useMdmEntity, useMdmEntityUri, useMdmEntityWithDiff, useMdmEntityUriWithDataTenant, useMdmMode, useMdmIsViewMode, useMdmIsEditableMode, useMdmHistoryDiff, useMdmHistoryMode, useMdmHistorySlice, useMdmHistoryEvent, useMdmProfileLastLoadedTime, useMdmLookups, useMdmDependentLookups, useMdmMetadata, useMdmUser, useMdmUsername, useMdmUserRoles, useMdmTenantObject, useMdmTenant, useMdmTenantName, useMdmEnvironment, useMdmDataTenants, useMdmDataTenantsWithIdBuilder, useMdmSearchNavigationData, useMdmSearchProviderData, useMdmIsCollaborationEnabled, useMdmIsWorkflowEnabled, useMdmProfileErrors, useMdmRelationsDrafts, useMdmModifiedEntityDefaultProfilePic, useMdmModifiedEntity, useMdmInitialConnectionTempEntity, useMdmInitialConnection, useMdmDependentLookupEditorState, useMdmActiveErrorsForAttributesPager, useMdmDependentLookupsStructureNode, useMdmAllRelationsToAddAndEdit, useMdmDependentLookupEditorContext, useMdmGlobalSearchRequestOptions, useMdmAuthoringItemsByEntityType, useMdmAction, useMdmListener, useMdmIsSourcesScreenEnabled, useMdmHiddenAttributes, useMdmControlAttributes, useMdmShowMasking, useMdmReviewDCREnabled, useMdmDcrReviewAllowAddAttributes, useMdmDcrReviewValidation, useMdmImagePath } from './hooks';
|
|
2
|
+
export { useMdmAutoCloseInterval, useMdmUiError, useMdmWorkflowEnvironmentUrl, useMdmExportPath, useMdmAbsoluteImagePath, useMdmUiPath, useMdmDtssPath, useMdmServicesPath, useMdmWorkflowPath, useMdmImageServicePath, useMdmReltioPath, useMdmApiPath, useMdmCollaborationPath, useMdmImageAttributesFieldsOrder, useMdmShowEntityId, useMdmPivotingAttributes, useMdmDateMask, useMdmDateTimeMask, useMdmAttributesPresentation, useMdmMaxValuesInResponse, useMdmAttributesSortingStrategy, useMdmLookupAutocomplete, useMdmModifiedEntities, useMdmEntity, useMdmEntityUri, useMdmEntityWithDiff, useMdmEntityUriWithDataTenant, useMdmMode, useMdmIsViewMode, useMdmIsEditableMode, useMdmHistoryDiff, useMdmHistoryMode, useMdmHistorySlice, useMdmHistoryEvent, useMdmProfileLastLoadedTime, useMdmLookups, useMdmDependentLookups, useMdmMetadata, useMdmUser, useMdmUsername, useMdmUserRoles, useMdmTenantObject, useMdmTenant, useMdmTenantName, useMdmEnvironment, useMdmDataTenants, useMdmDataTenantsWithIdBuilder, useMdmSearchNavigationData, useMdmSearchProviderData, useMdmIsCollaborationEnabled, useMdmIsWorkflowEnabled, useMdmProfileErrors, useMdmRelationsDrafts, useMdmModifiedEntityDefaultProfilePic, useMdmModifiedEntity, useMdmInitialConnectionTempEntity, useMdmInitialConnection, useMdmDependentLookupEditorState, useMdmActiveErrorsForAttributesPager, useMdmDependentLookupsStructureNode, useMdmAllRelationsToAddAndEdit, useMdmDependentLookupEditorContext, useMdmGlobalSearchRequestOptions, useMdmAuthoringItemsByEntityType, useMdmAction, useMdmListener, useMdmIsSourcesScreenEnabled, useMdmHiddenAttributes, useMdmControlAttributes, useMdmShowMasking, useMdmReviewDCREnabled, useMdmDcrReviewAllowAddAttributes, useMdmDcrReviewValidation, useMdmImagePath, useMdmDisableTimestampLocalization } from './hooks';
|
|
3
3
|
export type { MdmModuleActionsContextProps, MdmModuleValuesContextProps, MdmModuleListenersContextProps } from './context';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.useMdmSearchProviderData = exports.useMdmSearchNavigationData = exports.useMdmDataTenantsWithIdBuilder = exports.useMdmDataTenants = exports.useMdmEnvironment = exports.useMdmTenantName = exports.useMdmTenant = exports.useMdmTenantObject = exports.useMdmUserRoles = exports.useMdmUsername = exports.useMdmUser = exports.useMdmMetadata = exports.useMdmDependentLookups = exports.useMdmLookups = exports.useMdmProfileLastLoadedTime = exports.useMdmHistoryEvent = exports.useMdmHistorySlice = exports.useMdmHistoryMode = exports.useMdmHistoryDiff = exports.useMdmIsEditableMode = exports.useMdmIsViewMode = exports.useMdmMode = exports.useMdmEntityUriWithDataTenant = exports.useMdmEntityWithDiff = exports.useMdmEntityUri = exports.useMdmEntity = exports.useMdmModifiedEntities = exports.useMdmLookupAutocomplete = exports.useMdmAttributesSortingStrategy = exports.useMdmMaxValuesInResponse = exports.useMdmAttributesPresentation = exports.useMdmDateTimeMask = exports.useMdmDateMask = exports.useMdmPivotingAttributes = exports.useMdmShowEntityId = exports.useMdmImageAttributesFieldsOrder = exports.useMdmCollaborationPath = exports.useMdmApiPath = exports.useMdmReltioPath = exports.useMdmImageServicePath = exports.useMdmWorkflowPath = exports.useMdmServicesPath = exports.useMdmDtssPath = exports.useMdmUiPath = exports.useMdmAbsoluteImagePath = exports.useMdmExportPath = exports.useMdmWorkflowEnvironmentUrl = exports.useMdmUiError = exports.useMdmAutoCloseInterval = exports.MdmModuleProvider = void 0;
|
|
4
|
-
exports.useMdmImagePath = exports.useMdmDcrReviewValidation = exports.useMdmDcrReviewAllowAddAttributes = exports.useMdmReviewDCREnabled = exports.useMdmShowMasking = exports.useMdmControlAttributes = exports.useMdmHiddenAttributes = exports.useMdmIsSourcesScreenEnabled = exports.useMdmListener = exports.useMdmAction = exports.useMdmAuthoringItemsByEntityType = exports.useMdmGlobalSearchRequestOptions = exports.useMdmDependentLookupEditorContext = exports.useMdmAllRelationsToAddAndEdit = exports.useMdmDependentLookupsStructureNode = exports.useMdmActiveErrorsForAttributesPager = exports.useMdmDependentLookupEditorState = exports.useMdmInitialConnection = exports.useMdmInitialConnectionTempEntity = exports.useMdmModifiedEntity = exports.useMdmModifiedEntityDefaultProfilePic = exports.useMdmRelationsDrafts = exports.useMdmProfileErrors = exports.useMdmIsWorkflowEnabled = exports.useMdmIsCollaborationEnabled = void 0;
|
|
4
|
+
exports.useMdmDisableTimestampLocalization = exports.useMdmImagePath = exports.useMdmDcrReviewValidation = exports.useMdmDcrReviewAllowAddAttributes = exports.useMdmReviewDCREnabled = exports.useMdmShowMasking = exports.useMdmControlAttributes = exports.useMdmHiddenAttributes = exports.useMdmIsSourcesScreenEnabled = exports.useMdmListener = exports.useMdmAction = exports.useMdmAuthoringItemsByEntityType = exports.useMdmGlobalSearchRequestOptions = exports.useMdmDependentLookupEditorContext = exports.useMdmAllRelationsToAddAndEdit = exports.useMdmDependentLookupsStructureNode = exports.useMdmActiveErrorsForAttributesPager = exports.useMdmDependentLookupEditorState = exports.useMdmInitialConnection = exports.useMdmInitialConnectionTempEntity = exports.useMdmModifiedEntity = exports.useMdmModifiedEntityDefaultProfilePic = exports.useMdmRelationsDrafts = exports.useMdmProfileErrors = exports.useMdmIsWorkflowEnabled = exports.useMdmIsCollaborationEnabled = void 0;
|
|
5
5
|
var provider_1 = require("./provider");
|
|
6
6
|
Object.defineProperty(exports, "MdmModuleProvider", { enumerable: true, get: function () { return provider_1.MdmModuleProvider; } });
|
|
7
7
|
var hooks_1 = require("./hooks");
|
|
@@ -79,3 +79,4 @@ Object.defineProperty(exports, "useMdmReviewDCREnabled", { enumerable: true, get
|
|
|
79
79
|
Object.defineProperty(exports, "useMdmDcrReviewAllowAddAttributes", { enumerable: true, get: function () { return hooks_1.useMdmDcrReviewAllowAddAttributes; } });
|
|
80
80
|
Object.defineProperty(exports, "useMdmDcrReviewValidation", { enumerable: true, get: function () { return hooks_1.useMdmDcrReviewValidation; } });
|
|
81
81
|
Object.defineProperty(exports, "useMdmImagePath", { enumerable: true, get: function () { return hooks_1.useMdmImagePath; } });
|
|
82
|
+
Object.defineProperty(exports, "useMdmDisableTimestampLocalization", { enumerable: true, get: function () { return hooks_1.useMdmDisableTimestampLocalization; } });
|
|
@@ -20,6 +20,7 @@ var DeltaField = function (_a) {
|
|
|
20
20
|
var delta = _a.delta;
|
|
21
21
|
var metadata = (0, MdmModuleContext_1.useMdmMetadata)();
|
|
22
22
|
var attributesPresentation = (0, MdmModuleContext_1.useMdmAttributesPresentation)();
|
|
23
|
+
var disableTimestampLocalization = (0, MdmModuleContext_1.useMdmDisableTimestampLocalization)();
|
|
23
24
|
var isMemberDelta = delta.type in types_1.MemberDeltaTypes;
|
|
24
25
|
var attributeType = !isMemberDelta ? (0, mdm_sdk_1.findAttributeTypeByUri)(metadata, delta.attributeType) : undefined;
|
|
25
26
|
var memberType = isMemberDelta ? (0, mdm_sdk_1.findMemberTypeByUri)(metadata, delta.attributeType) : undefined;
|
|
@@ -30,7 +31,9 @@ var DeltaField = function (_a) {
|
|
|
30
31
|
var value = oldValue || newValue;
|
|
31
32
|
var deltaLabel = (isMemberDelta ? types_1.MemberDeltaTypes : types_1.DeltaTypes)[delta.type];
|
|
32
33
|
var converter = function (deltaValue) {
|
|
33
|
-
return isMemberDelta ? (react_1.default.createElement(EntityUriLink_1.EntityUriLink, { value: 'entities/' + deltaValue, className: DeltaField_module_css_1.default.entityLink }, deltaValue)) : ((0, activities_1.stringifyDeltaValue)(deltaValue, delta.attributeType, metadata, attributesPresentation
|
|
34
|
+
return isMemberDelta ? (react_1.default.createElement(EntityUriLink_1.EntityUriLink, { value: 'entities/' + deltaValue, className: DeltaField_module_css_1.default.entityLink }, deltaValue)) : ((0, activities_1.stringifyDeltaValue)(deltaValue, delta.attributeType, metadata, attributesPresentation, {
|
|
35
|
+
disableTimestampLocalization: disableTimestampLocalization
|
|
36
|
+
}));
|
|
34
37
|
};
|
|
35
38
|
return (react_1.default.createElement(Field_1.Field, { fieldName: fieldName, "data-reltio-id": "delta-field" },
|
|
36
39
|
react_1.default.createElement("span", null,
|
|
@@ -8,6 +8,11 @@ var useSegmentReadableQuery = function (groups) {
|
|
|
8
8
|
var metadata = (0, MdmModuleContext_1.useMdmMetadata)();
|
|
9
9
|
var attributesPresentation = (0, MdmModuleContext_1.useMdmAttributesPresentation)();
|
|
10
10
|
var lookups = (0, MdmModuleContext_1.useMdmLookups)();
|
|
11
|
-
|
|
11
|
+
var disableTimestampLocalization = (0, MdmModuleContext_1.useMdmDisableTimestampLocalization)();
|
|
12
|
+
return (0, react_1.useMemo)(function () {
|
|
13
|
+
return (0, mdm_sdk_1.buildSegmentationGroupsReadableQuery)(metadata, attributesPresentation, lookups, groups, {
|
|
14
|
+
disableTimestampLocalization: disableTimestampLocalization
|
|
15
|
+
});
|
|
16
|
+
}, [metadata, lookups, attributesPresentation, groups, disableTimestampLocalization]);
|
|
12
17
|
};
|
|
13
18
|
exports.useSegmentReadableQuery = useSegmentReadableQuery;
|