@reltio/components 1.4.2045 → 1.4.2047

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.
Files changed (181) hide show
  1. package/AttributesFiltersBuilder/AttributesFiltersBuilder.test.js +72 -50
  2. package/BasicTable/BasicTable.test.js +232 -278
  3. package/BlobRenderer/BlobRenderer.js +1 -1
  4. package/ConnectionRelationTypeSelector/ConnectionRelationTypeSelector.test.js +125 -111
  5. package/DateIntervalSelector/DateIntervalSelector.test.js +87 -65
  6. package/DefaultCellValueRenderer/DefaultCellValueRenderer.js +1 -1
  7. package/DefaultCellValueRenderer/DefaultCellValueRenderer.test.js +16 -46
  8. package/DeleteButton/DeleteButton.spec.js +53 -15
  9. package/DependentLookupEditor/DependentLookupEditor.test.js +555 -807
  10. package/Drawer/Drawer.test.js +9 -20
  11. package/DropDownEditor/DropDownEditor.test.js +81 -29
  12. package/DropDownMenuButton/DropDownMenuButton.spec.js +101 -70
  13. package/DropDownSelector/DropDownSelector.test.js +159 -30
  14. package/EditModeAttributesFactory/EditModeAttributesFactory.test.js +143 -0
  15. package/EditModeAttributesList/EditModeAttributesList.test.js +277 -224
  16. package/EditModeAttributesList/attributes.test-data.d.ts +0 -11
  17. package/EditModeAttributesList/attributes.test-data.js +1 -1
  18. package/EditModeAttributesPager/EditModeAttributesPager.test.js +698 -234
  19. package/EditModeAttributesPager/helpers.test.js +2 -12
  20. package/EditModeAttributesView/EditModeAttributesView.test.js +263 -157
  21. package/EditModeComplexAttribute/EditModeComplexAttribute.js +1 -1
  22. package/EditModeComplexAttribute/EditModeComplexAttribute.test.js +313 -298
  23. package/EditModeComplexAttribute/nestedAttrType.test-data.d.ts +0 -5
  24. package/EditModeComplexAttribute/nestedAttrType.test-data.js +3 -44
  25. package/EmptyState/EmptyState.test.js +99 -38
  26. package/EntityCreator/EntityCreator.test.js +68 -35
  27. package/EntitySelector/EntitySelector.js +1 -1
  28. package/EntitySelector/EntitySelector.test.js +275 -422
  29. package/EntityTypeIcon/EntityTypeIcon.test.js +16 -16
  30. package/EntityTypesSelector/EntityTypesSelector.test.js +62 -21
  31. package/ErrorBoundary/ErrorBoundary.test.js +19 -17
  32. package/ErrorMessage/ErrorMessage.js +1 -1
  33. package/ErrorPopup/ErrorPopup.test.js +72 -25
  34. package/ErrorWrapper/ErrorWrapper.test.js +10 -9
  35. package/ExpandedValueTooltip/ExpandedValueTooltip.test.js +111 -37
  36. package/FileTypeEditor/FileTypeEditor.test.js +95 -64
  37. package/FilterValueEditor/FilterValueEditor.test.js +183 -157
  38. package/FilterValueEditor/components/RangeDataTypeValueEditor/RangeDataTypeValueEditor.js +2 -2
  39. package/HierarchicalAttributeTooltip/HierarchicalAttributeTooltip.test.js +114 -24
  40. package/HierarchyNodeTitle/HierarchyNodeTitle.test.js +61 -100
  41. package/InlineSimpleAttribute/InlineSimpleAttribute.js +4 -1
  42. package/OvIcon/OvIcon.js +2 -2
  43. package/ProfileCard/components/ProfileCardPlaceholder/ProfileCardPlaceholder.js +2 -2
  44. package/ShowLess/ShowLess.js +1 -1
  45. package/SimpleAttributeEditor/SimpleAttributeEditor.js +2 -2
  46. package/UploadFileButton/components/UploadMode/UploadMode.js +1 -1
  47. package/cjs/AttributesFiltersBuilder/AttributesFiltersBuilder.test.js +72 -50
  48. package/cjs/BasicTable/BasicTable.test.js +230 -299
  49. package/cjs/BlobRenderer/BlobRenderer.js +1 -1
  50. package/cjs/ConnectionRelationTypeSelector/ConnectionRelationTypeSelector.test.js +125 -111
  51. package/cjs/DateIntervalSelector/DateIntervalSelector.test.js +87 -65
  52. package/cjs/DefaultCellValueRenderer/DefaultCellValueRenderer.js +1 -1
  53. package/cjs/DefaultCellValueRenderer/DefaultCellValueRenderer.test.js +16 -46
  54. package/cjs/DeleteButton/DeleteButton.spec.js +53 -15
  55. package/cjs/DependentLookupEditor/DependentLookupEditor.test.js +569 -821
  56. package/cjs/Drawer/Drawer.test.js +10 -21
  57. package/cjs/DropDownEditor/DropDownEditor.test.js +81 -29
  58. package/cjs/DropDownMenuButton/DropDownMenuButton.spec.js +102 -71
  59. package/cjs/DropDownSelector/DropDownSelector.test.js +159 -30
  60. package/cjs/EditModeAttributesFactory/EditModeAttributesFactory.test.js +148 -0
  61. package/cjs/EditModeAttributesList/EditModeAttributesList.test.js +277 -224
  62. package/cjs/EditModeAttributesList/attributes.test-data.d.ts +0 -11
  63. package/cjs/EditModeAttributesList/attributes.test-data.js +1 -1
  64. package/cjs/EditModeAttributesPager/EditModeAttributesPager.test.js +696 -232
  65. package/cjs/EditModeAttributesPager/helpers.test.js +2 -12
  66. package/cjs/EditModeAttributesView/EditModeAttributesView.test.js +262 -156
  67. package/cjs/EditModeComplexAttribute/EditModeComplexAttribute.js +1 -1
  68. package/cjs/EditModeComplexAttribute/EditModeComplexAttribute.test.js +312 -297
  69. package/cjs/EditModeComplexAttribute/nestedAttrType.test-data.d.ts +0 -5
  70. package/cjs/EditModeComplexAttribute/nestedAttrType.test-data.js +3 -44
  71. package/cjs/EmptyState/EmptyState.test.js +98 -37
  72. package/cjs/EntityCreator/EntityCreator.test.js +69 -36
  73. package/cjs/EntitySelector/EntitySelector.js +1 -1
  74. package/cjs/EntitySelector/EntitySelector.test.js +274 -421
  75. package/cjs/EntityTypeIcon/EntityTypeIcon.test.js +17 -17
  76. package/cjs/EntityTypesSelector/EntityTypesSelector.test.js +62 -21
  77. package/cjs/ErrorBoundary/ErrorBoundary.test.js +19 -17
  78. package/cjs/ErrorMessage/ErrorMessage.js +1 -1
  79. package/cjs/ErrorPopup/ErrorPopup.test.js +71 -24
  80. package/cjs/ErrorWrapper/ErrorWrapper.test.js +10 -9
  81. package/cjs/ExpandedValueTooltip/ExpandedValueTooltip.test.js +111 -37
  82. package/cjs/FileTypeEditor/FileTypeEditor.test.js +95 -64
  83. package/cjs/FilterValueEditor/FilterValueEditor.test.js +182 -156
  84. package/cjs/FilterValueEditor/components/RangeDataTypeValueEditor/RangeDataTypeValueEditor.js +2 -2
  85. package/cjs/HierarchicalAttributeTooltip/HierarchicalAttributeTooltip.test.js +114 -24
  86. package/cjs/HierarchyNodeTitle/HierarchyNodeTitle.test.js +61 -100
  87. package/cjs/InlineSimpleAttribute/InlineSimpleAttribute.js +4 -1
  88. package/cjs/OvIcon/OvIcon.js +2 -2
  89. package/cjs/ProfileCard/components/ProfileCardPlaceholder/ProfileCardPlaceholder.js +2 -2
  90. package/cjs/ShowLess/ShowLess.js +1 -1
  91. package/cjs/SimpleAttributeEditor/SimpleAttributeEditor.js +2 -2
  92. package/cjs/UploadFileButton/components/UploadMode/UploadMode.js +1 -1
  93. package/cjs/contexts/ExpandedAttributesContext/useAttributeExpanded.test.js +25 -18
  94. package/cjs/contexts/MdmModuleContext/hooks.d.ts +2 -2
  95. package/cjs/contexts/ReloadDataContext/ReloadDataContext.spec.js +16 -53
  96. package/cjs/features/crosswalks/CrosswalkRow/CrosswalkRow.js +1 -1
  97. package/cjs/features/crosswalks/CrosswalkRow/styles.js +4 -1
  98. package/cjs/test-utils/TestStylesProvider.js +6 -5
  99. package/contexts/ExpandedAttributesContext/useAttributeExpanded.test.js +25 -18
  100. package/contexts/MdmModuleContext/hooks.d.ts +2 -2
  101. package/contexts/ReloadDataContext/ReloadDataContext.spec.js +16 -30
  102. package/features/crosswalks/CrosswalkRow/CrosswalkRow.js +1 -1
  103. package/features/crosswalks/CrosswalkRow/styles.js +4 -1
  104. package/package.json +1 -1
  105. package/test-utils/TestStylesProvider.js +3 -2
  106. package/AttributesFiltersBuilder/components/AttributeSelector/AttributeSelector.test.js +0 -101
  107. package/AttributesFiltersBuilder/components/RowActions/RowActions.test.js +0 -106
  108. package/BasicTable/IntegrationBasicTable.test.d.ts +0 -1
  109. package/BasicTable/IntegrationBasicTable.test.js +0 -203
  110. package/DependentLookupEditor/IntegrationDependentLookupEditor.test.d.ts +0 -1
  111. package/DependentLookupEditor/IntegrationDependentLookupEditor.test.js +0 -137
  112. package/DropDownMenuButton/components/DefaultMenuItemRenderer/DefaultMenuItemRenderer.spec.d.ts +0 -1
  113. package/DropDownMenuButton/components/DefaultMenuItemRenderer/DefaultMenuItemRenderer.spec.js +0 -32
  114. package/EditModeAttributesFactory/components/EditModeAttribute/EditModeAttribute.test.d.ts +0 -1
  115. package/EditModeAttributesFactory/components/EditModeAttribute/EditModeAttribute.test.js +0 -106
  116. package/EditModeAttributesPager/components/AttributeRenderer/AttributeRenderer.test.d.ts +0 -1
  117. package/EditModeAttributesPager/components/AttributeRenderer/AttributeRenderer.test.js +0 -338
  118. package/EditModeAttributesPager/components/AttributeRenderer/IntegrationAttributeRenderer.test.d.ts +0 -1
  119. package/EditModeAttributesPager/components/AttributeRenderer/IntegrationAttributeRenderer.test.js +0 -225
  120. package/EditModeAttributesPager/components/ImageLineRenderer/ImageLineRenderer.test.d.ts +0 -1
  121. package/EditModeAttributesPager/components/ImageLineRenderer/ImageLineRenderer.test.js +0 -47
  122. package/EditModeAttributesPager/components/SpecialRenderer/SpecialRenderer.test.d.ts +0 -1
  123. package/EditModeAttributesPager/components/SpecialRenderer/SpecialRenderer.test.js +0 -204
  124. package/EditModeAttributesView/IntegrationEditModeAttributesView.test.d.ts +0 -1
  125. package/EditModeAttributesView/IntegrationEditModeAttributesView.test.js +0 -246
  126. package/EditModeAttributesView/metadata.test-data.d.ts +0 -4
  127. package/EditModeAttributesView/metadata.test-data.js +0 -119
  128. package/EntityCreator/entityType.test-data.d.ts +0 -52
  129. package/EntityCreator/entityType.test-data.js +0 -188
  130. package/EntitySelector/components/ClearIndicator/ClearIndicator.test.d.ts +0 -1
  131. package/EntitySelector/components/ClearIndicator/ClearIndicator.test.js +0 -27
  132. package/EntitySelector/components/EntityOption/EntityOption.test.d.ts +0 -1
  133. package/EntitySelector/components/EntityOption/EntityOption.test.js +0 -79
  134. package/EntitySelector/components/Group/Group.test.d.ts +0 -1
  135. package/EntitySelector/components/Group/Group.test.js +0 -65
  136. package/EntitySelector/components/SingleValue/SingleValue.test.d.ts +0 -1
  137. package/EntitySelector/components/SingleValue/SingleValue.test.js +0 -78
  138. package/FilterValueEditor/components/RangeDataTypeValueEditor/RangeDataTypeValueEditor.test.d.ts +0 -1
  139. package/FilterValueEditor/components/RangeDataTypeValueEditor/RangeDataTypeValueEditor.test.js +0 -76
  140. package/cjs/AttributesFiltersBuilder/components/AttributeSelector/AttributeSelector.test.d.ts +0 -1
  141. package/cjs/AttributesFiltersBuilder/components/AttributeSelector/AttributeSelector.test.js +0 -106
  142. package/cjs/AttributesFiltersBuilder/components/RowActions/RowActions.test.d.ts +0 -1
  143. package/cjs/AttributesFiltersBuilder/components/RowActions/RowActions.test.js +0 -111
  144. package/cjs/BasicTable/IntegrationBasicTable.test.d.ts +0 -1
  145. package/cjs/BasicTable/IntegrationBasicTable.test.js +0 -208
  146. package/cjs/DependentLookupEditor/IntegrationDependentLookupEditor.test.d.ts +0 -1
  147. package/cjs/DependentLookupEditor/IntegrationDependentLookupEditor.test.js +0 -142
  148. package/cjs/DropDownMenuButton/components/DefaultMenuItemRenderer/DefaultMenuItemRenderer.spec.d.ts +0 -1
  149. package/cjs/DropDownMenuButton/components/DefaultMenuItemRenderer/DefaultMenuItemRenderer.spec.js +0 -37
  150. package/cjs/EditModeAttributesFactory/components/EditModeAttribute/EditModeAttribute.test.d.ts +0 -1
  151. package/cjs/EditModeAttributesFactory/components/EditModeAttribute/EditModeAttribute.test.js +0 -111
  152. package/cjs/EditModeAttributesPager/components/AttributeRenderer/AttributeRenderer.test.d.ts +0 -1
  153. package/cjs/EditModeAttributesPager/components/AttributeRenderer/AttributeRenderer.test.js +0 -343
  154. package/cjs/EditModeAttributesPager/components/AttributeRenderer/IntegrationAttributeRenderer.test.d.ts +0 -1
  155. package/cjs/EditModeAttributesPager/components/AttributeRenderer/IntegrationAttributeRenderer.test.js +0 -230
  156. package/cjs/EditModeAttributesPager/components/ImageLineRenderer/ImageLineRenderer.test.d.ts +0 -1
  157. package/cjs/EditModeAttributesPager/components/ImageLineRenderer/ImageLineRenderer.test.js +0 -52
  158. package/cjs/EditModeAttributesPager/components/SpecialRenderer/SpecialRenderer.test.d.ts +0 -1
  159. package/cjs/EditModeAttributesPager/components/SpecialRenderer/SpecialRenderer.test.js +0 -209
  160. package/cjs/EditModeAttributesView/IntegrationEditModeAttributesView.test.d.ts +0 -1
  161. package/cjs/EditModeAttributesView/IntegrationEditModeAttributesView.test.js +0 -251
  162. package/cjs/EditModeAttributesView/metadata.test-data.d.ts +0 -4
  163. package/cjs/EditModeAttributesView/metadata.test-data.js +0 -123
  164. package/cjs/EntityCreator/entityType.test-data.d.ts +0 -52
  165. package/cjs/EntityCreator/entityType.test-data.js +0 -191
  166. package/cjs/EntitySelector/components/ClearIndicator/ClearIndicator.test.d.ts +0 -1
  167. package/cjs/EntitySelector/components/ClearIndicator/ClearIndicator.test.js +0 -32
  168. package/cjs/EntitySelector/components/EntityOption/EntityOption.test.d.ts +0 -1
  169. package/cjs/EntitySelector/components/EntityOption/EntityOption.test.js +0 -84
  170. package/cjs/EntitySelector/components/Group/Group.test.d.ts +0 -1
  171. package/cjs/EntitySelector/components/Group/Group.test.js +0 -70
  172. package/cjs/EntitySelector/components/SingleValue/SingleValue.test.d.ts +0 -1
  173. package/cjs/EntitySelector/components/SingleValue/SingleValue.test.js +0 -83
  174. package/cjs/FilterValueEditor/components/RangeDataTypeValueEditor/RangeDataTypeValueEditor.test.d.ts +0 -1
  175. package/cjs/FilterValueEditor/components/RangeDataTypeValueEditor/RangeDataTypeValueEditor.test.js +0 -81
  176. package/cjs/contexts/CollaborationContext/CollaborationContextProvider.test.d.ts +0 -1
  177. package/cjs/contexts/CollaborationContext/CollaborationContextProvider.test.js +0 -104
  178. package/contexts/CollaborationContext/CollaborationContextProvider.test.d.ts +0 -1
  179. package/contexts/CollaborationContext/CollaborationContextProvider.test.js +0 -99
  180. /package/{AttributesFiltersBuilder/components/AttributeSelector/AttributeSelector.test.d.ts → EditModeAttributesFactory/EditModeAttributesFactory.test.d.ts} +0 -0
  181. /package/{AttributesFiltersBuilder/components/RowActions/RowActions.test.d.ts → cjs/EditModeAttributesFactory/EditModeAttributesFactory.test.d.ts} +0 -0
@@ -1,225 +0,0 @@
1
- var __assign = (this && this.__assign) || function () {
2
- __assign = Object.assign || function(t) {
3
- for (var s, i = 1, n = arguments.length; i < n; i++) {
4
- s = arguments[i];
5
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
- t[p] = s[p];
7
- }
8
- return t;
9
- };
10
- return __assign.apply(this, arguments);
11
- };
12
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
13
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
14
- return new (P || (P = Promise))(function (resolve, reject) {
15
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
16
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
17
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
18
- step((generator = generator.apply(thisArg, _arguments || [])).next());
19
- });
20
- };
21
- var __generator = (this && this.__generator) || function (thisArg, body) {
22
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
23
- return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
24
- function verb(n) { return function (v) { return step([n, v]); }; }
25
- function step(op) {
26
- if (f) throw new TypeError("Generator is already executing.");
27
- while (g && (g = 0, op[0] && (_ = 0)), _) try {
28
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
29
- if (y = 0, t) op = [op[0] & 2, t.value];
30
- switch (op[0]) {
31
- case 0: case 1: t = op; break;
32
- case 4: _.label++; return { value: op[1], done: false };
33
- case 5: _.label++; y = op[1]; op = [0]; continue;
34
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
35
- default:
36
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
37
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
38
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
39
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
40
- if (t[2]) _.ops.pop();
41
- _.trys.pop(); continue;
42
- }
43
- op = body.call(thisArg, _);
44
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
45
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
46
- }
47
- };
48
- import React from 'react';
49
- import { render, screen, within } from '@testing-library/react';
50
- import userEvent from '@testing-library/user-event';
51
- import { Mode } from '@reltio/mdm-sdk';
52
- import { metadata } from './store.test-data';
53
- import { MdmModuleProvider } from '../../../contexts/MdmModuleContext';
54
- import AttributeRenderer from './AttributeRenderer';
55
- var attributeType = {
56
- defaultValue: true,
57
- label: 'Prescriber Indicator',
58
- name: 'PrescriberIndicator',
59
- required: true,
60
- type: 'Boolean',
61
- uri: 'configuration/entityTypes/HCP/attributes/PrescriberIndicator'
62
- };
63
- var additionalControlsRenderer = function () { return React.createElement(React.Fragment, null); };
64
- var mdmValues = {
65
- metadata: metadata,
66
- dependentLookups: {
67
- structure: {},
68
- editors: {},
69
- initedTypeUris: []
70
- }
71
- };
72
- var defaultProps = {
73
- attributeType: attributeType,
74
- drawLines: false,
75
- errorMessage: '',
76
- errors: [],
77
- showNonOv: false,
78
- max: Infinity,
79
- mode: Mode.Editing,
80
- nonVisibleValues: [],
81
- onAddAttributes: function () { },
82
- onChangeAttribute: function () { },
83
- onDeactivateError: function () { },
84
- onDeleteAttribute: function () { },
85
- additionalControlsRenderer: additionalControlsRenderer,
86
- paging: {},
87
- parentUri: 'entities/uri$$EqGYtcSCmLMEtNNr1688445347504',
88
- requestNextPageOfAttributeValues: function () { },
89
- showEmptyEditors: true,
90
- values: [],
91
- crosswalks: []
92
- };
93
- var setUp = function (_a) {
94
- var _b = _a === void 0 ? {} : _a, _c = _b.props, props = _c === void 0 ? defaultProps : _c;
95
- var user = userEvent.setup();
96
- var Providers = function (_a) {
97
- var children = _a.children;
98
- return (React.createElement(MdmModuleProvider, { values: mdmValues }, children));
99
- };
100
- return __assign(__assign({}, render(React.createElement(AttributeRenderer, __assign({}, props)), { wrapper: Providers })), { user: user });
101
- };
102
- describe('Attribute renderer tests', function () {
103
- it('should not use default value from attribute type for empty editor value', function () {
104
- setUp();
105
- var checkboxes = within(screen.getByTestId('reltio-attribute-value')).getAllByRole('checkbox');
106
- checkboxes.forEach(function (checkbox) { return expect(checkbox).not.toBeChecked(); });
107
- });
108
- it('should call onAddAttributes with correct params in case when values is empty', function () { return __awaiter(void 0, void 0, void 0, function () {
109
- var onAddAttributes, props, user, addButton;
110
- return __generator(this, function (_a) {
111
- switch (_a.label) {
112
- case 0:
113
- onAddAttributes = jest.fn();
114
- props = __assign(__assign({}, defaultProps), { onAddAttributes: onAddAttributes });
115
- user = setUp({ props: props }).user;
116
- addButton = screen.getAllByRole('button')[0];
117
- return [4 /*yield*/, user.click(addButton)];
118
- case 1:
119
- _a.sent();
120
- expect(onAddAttributes).toHaveBeenCalledWith([
121
- {
122
- attributeType: {
123
- label: 'Prescriber Indicator',
124
- name: 'PrescriberIndicator',
125
- required: true,
126
- type: 'Boolean',
127
- uri: 'configuration/entityTypes/HCP/attributes/PrescriberIndicator'
128
- },
129
- index: Infinity,
130
- parentUri: expect.any(String)
131
- },
132
- {
133
- attributeType: {
134
- defaultValue: true,
135
- label: 'Prescriber Indicator',
136
- name: 'PrescriberIndicator',
137
- required: true,
138
- type: 'Boolean',
139
- uri: 'configuration/entityTypes/HCP/attributes/PrescriberIndicator'
140
- },
141
- index: Infinity,
142
- parentUri: expect.any(String)
143
- }
144
- ]);
145
- return [2 /*return*/];
146
- }
147
- });
148
- }); });
149
- it('should call onAddAttributes with correct params in case when values is not empty', function () { return __awaiter(void 0, void 0, void 0, function () {
150
- var values, parentUri, onAddAttributes, props, user, addButton;
151
- return __generator(this, function (_a) {
152
- switch (_a.label) {
153
- case 0:
154
- values = [
155
- {
156
- ov: true,
157
- type: 'configuration/entityTypes/HCP/attributes/PrescriberIndicator',
158
- uri: 'entities/0XAnnkw/attributes/PrescriberIndicator/ESG66YW',
159
- value: false
160
- }
161
- ];
162
- parentUri = 'entities/0XAnnkw';
163
- onAddAttributes = jest.fn();
164
- props = __assign(__assign({}, defaultProps), { onAddAttributes: onAddAttributes, parentUri: parentUri, values: values });
165
- user = setUp({ props: props }).user;
166
- addButton = screen.getAllByRole('button')[0];
167
- return [4 /*yield*/, user.click(addButton)];
168
- case 1:
169
- _a.sent();
170
- expect(onAddAttributes).toHaveBeenCalledWith([
171
- {
172
- attributeType: {
173
- defaultValue: true,
174
- label: 'Prescriber Indicator',
175
- name: 'PrescriberIndicator',
176
- required: true,
177
- type: 'Boolean',
178
- uri: 'configuration/entityTypes/HCP/attributes/PrescriberIndicator'
179
- },
180
- index: Infinity,
181
- parentUri: expect.any(String)
182
- }
183
- ]);
184
- return [2 /*return*/];
185
- }
186
- });
187
- }); });
188
- it('should render correct if one of the values is masked', function () {
189
- var values = [
190
- {
191
- ov: true,
192
- type: 'configuration/entityTypes/HCP/attributes/PrescriberIndicator',
193
- uri: 'entities/0XAnnkw/attributes/PrescriberIndicator/ESG66YW',
194
- value: false
195
- },
196
- {
197
- ov: true,
198
- type: 'configuration/entityTypes/HCP/attributes/PrescriberIndicator',
199
- uri: 'entities/0XAnnkw/attributes/PrescriberIndicator/ESG66YW',
200
- value: true,
201
- masked: true
202
- }
203
- ];
204
- var props = __assign(__assign({}, defaultProps), { values: values });
205
- setUp({ props: props });
206
- var attributeValues = screen.getAllByTestId('reltio-attribute-value');
207
- expect(attributeValues).toHaveLength(2);
208
- expect(within(attributeValues[0]).getAllByRole('checkbox')).toHaveLength(2);
209
- expect(within(attributeValues[0]).getByText('Yes')).toBeInTheDocument();
210
- expect(within(attributeValues[0]).getByText('No')).toBeInTheDocument();
211
- expect(within(attributeValues[1]).queryAllByRole('checkbox')).toHaveLength(0);
212
- expect(within(attributeValues[1]).getByText('Yes')).toBeInTheDocument();
213
- expect(within(attributeValues[1]).queryByText('No')).not.toBeInTheDocument();
214
- });
215
- it('should not allow to add more values in edit mode if cardinality max value is one', function () {
216
- var props = __assign(__assign({}, defaultProps), { attributeType: __assign(__assign({}, attributeType), { cardinality: { maxValue: 1, minValue: 0 } }) });
217
- setUp({ props: props });
218
- expect(screen.queryByTestId('reltio-add-one-more-simple-attribute-button')).not.toBeInTheDocument();
219
- });
220
- it('should allow to add more values in edit mode if cardinality max value is more than one', function () {
221
- var props = __assign(__assign({}, defaultProps), { attributeType: __assign(__assign({}, attributeType), { cardinality: { maxValue: 2, minValue: 1 } }) });
222
- setUp({ props: props });
223
- expect(screen.getByTestId('reltio-add-one-more-simple-attribute-button')).toBeInTheDocument();
224
- });
225
- });
@@ -1,47 +0,0 @@
1
- var __assign = (this && this.__assign) || function () {
2
- __assign = Object.assign || function(t) {
3
- for (var s, i = 1, n = arguments.length; i < n; i++) {
4
- s = arguments[i];
5
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
- t[p] = s[p];
7
- }
8
- return t;
9
- };
10
- return __assign.apply(this, arguments);
11
- };
12
- import React from 'react';
13
- import { shallow } from 'enzyme';
14
- import { ImageLineRenderer } from './ImageLineRenderer';
15
- import { ImageAttributesLineEditor } from '../../../ImageAttributesLineEditor';
16
- import { AttributeTitle } from '../../../AttributeTitle';
17
- import { DescriptionIcon } from '../../../DescriptionIcon';
18
- var attributeType = {
19
- uri: 'configuration/entityTypes/HCP/attributes/ImageGallery',
20
- type: 'Image',
21
- name: 'ImageGallery',
22
- label: 'Image Gallery',
23
- description: 'Image Gallery description'
24
- };
25
- var props = {
26
- attributeValues: [],
27
- attributeType: attributeType,
28
- paging: {},
29
- parentUri: 'entities/sIeHttl',
30
- requestNextPageOfAttributeValues: jest.fn(),
31
- onDeleteAttribute: jest.fn(),
32
- onChangeAttribute: jest.fn(),
33
- showNonOv: false
34
- };
35
- describe('ImageLineRenderer tests', function () {
36
- it('should render ImageAttributesLineEditor with correct props', function () {
37
- var component = shallow(React.createElement(ImageLineRenderer, __assign({}, props)));
38
- expect(component.find(ImageAttributesLineEditor).props()).toEqual(__assign(__assign({}, props), { onChangeAttribute: expect.any(Function) }));
39
- });
40
- it('should render title row correctly', function () {
41
- var component = shallow(React.createElement(ImageLineRenderer, __assign({}, props)));
42
- var titleRow = component.find('.titleWrapper');
43
- expect(titleRow).toHaveLength(1);
44
- expect(titleRow.find(AttributeTitle).prop('label')).toBe(attributeType.label);
45
- expect(titleRow.find(DescriptionIcon).prop('description')).toBe(attributeType.description);
46
- });
47
- });
@@ -1,204 +0,0 @@
1
- var __assign = (this && this.__assign) || function () {
2
- __assign = Object.assign || function(t) {
3
- for (var s, i = 1, n = arguments.length; i < n; i++) {
4
- s = arguments[i];
5
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
- t[p] = s[p];
7
- }
8
- return t;
9
- };
10
- return __assign.apply(this, arguments);
11
- };
12
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
13
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
14
- return new (P || (P = Promise))(function (resolve, reject) {
15
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
16
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
17
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
18
- step((generator = generator.apply(thisArg, _arguments || [])).next());
19
- });
20
- };
21
- var __generator = (this && this.__generator) || function (thisArg, body) {
22
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
23
- return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
24
- function verb(n) { return function (v) { return step([n, v]); }; }
25
- function step(op) {
26
- if (f) throw new TypeError("Generator is already executing.");
27
- while (g && (g = 0, op[0] && (_ = 0)), _) try {
28
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
29
- if (y = 0, t) op = [op[0] & 2, t.value];
30
- switch (op[0]) {
31
- case 0: case 1: t = op; break;
32
- case 4: _.label++; return { value: op[1], done: false };
33
- case 5: _.label++; y = op[1]; op = [0]; continue;
34
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
35
- default:
36
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
37
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
38
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
39
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
40
- if (t[2]) _.ops.pop();
41
- _.trys.pop(); continue;
42
- }
43
- op = body.call(thisArg, _);
44
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
45
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
46
- }
47
- };
48
- import React from 'react';
49
- import { EntityAttrTypes, Mode } from '@reltio/mdm-sdk';
50
- import { render, screen } from '@testing-library/react';
51
- import userEvent from '@testing-library/user-event';
52
- import { LocalizationProvider } from '@mui/x-date-pickers';
53
- import { AdapterMoment } from '@mui/x-date-pickers/AdapterMoment';
54
- import { HasDeletionsContext } from '../../../contexts/HasDeletionsContext';
55
- import { MdmModuleProvider } from '../../../contexts/MdmModuleContext';
56
- import SpecialRenderer from './SpecialRenderer';
57
- describe('SpecialRenderer tests', function () {
58
- var defaultProps = {
59
- mode: Mode.Editing,
60
- parentUri: 'entities/sIeHttl',
61
- max: 10,
62
- showEmptyEditors: false,
63
- errorMessage: '',
64
- values: [],
65
- attributeType: EntityAttrTypes.roles,
66
- onAddAttributes: jest.fn(),
67
- onDeleteAttribute: jest.fn(),
68
- onChangeAttribute: jest.fn(),
69
- onDeactivateError: jest.fn()
70
- };
71
- var entity = { uri: 'entities/1B8njgSw', type: 'configuration/entityTypes/HCP' };
72
- var metadata = {
73
- roles: [{ uri: 'configuration/roles/OfficeStaff', label: 'Office Staff' }],
74
- entityTypes: [
75
- {
76
- uri: 'configuration/entityTypes/HCP',
77
- entityTypeRoleURIs: ['configuration/roles/OfficeStaff']
78
- }
79
- ]
80
- };
81
- var dependentLookups = {
82
- editors: {},
83
- structure: {},
84
- initedTypeUris: []
85
- };
86
- var mdmValues = { entity: entity, metadata: metadata, dependentLookups: dependentLookups };
87
- var setUp = function (props) {
88
- if (props === void 0) { props = {}; }
89
- var user = userEvent.setup();
90
- var Providers = function (_a) {
91
- var children = _a.children;
92
- return (React.createElement(LocalizationProvider, { dateAdapter: AdapterMoment },
93
- React.createElement(MdmModuleProvider, { values: mdmValues }, children)));
94
- };
95
- return __assign({ user: user }, render(React.createElement(SpecialRenderer, __assign({}, defaultProps, props)), { wrapper: Providers }));
96
- };
97
- it('should render Roles component for roles', function () {
98
- var attributeType = EntityAttrTypes.roles;
99
- setUp({ attributeType: attributeType, values: ['configuration/roles/OfficeStaff'] });
100
- expect(screen.getByTestId('reltio-attribute-label')).toHaveTextContent(attributeType.label);
101
- expect(screen.getAllByTestId('reltio-attribute-value')).toHaveLength(1);
102
- expect(screen.getByRole('combobox')).toBeInTheDocument();
103
- expect(screen.getByText('Office Staff')).toBeInTheDocument();
104
- });
105
- it('should render Tags component for tags and special icon before title', function () {
106
- var attributeType = EntityAttrTypes.tags;
107
- setUp({ attributeType: attributeType, values: ['tag1'] });
108
- expect(screen.getByTestId('reltio-attribute-label')).toHaveTextContent(attributeType.label);
109
- expect(screen.getAllByTestId('reltio-attribute-value')).toHaveLength(1);
110
- expect(screen.getByRole('textbox')).toBeInTheDocument();
111
- expect(screen.getByText('tag1')).toBeInTheDocument();
112
- });
113
- it('should render empty Tags', function () {
114
- var attributeType = EntityAttrTypes.tags;
115
- setUp({ attributeType: attributeType, values: [] });
116
- expect(screen.getByTestId('reltio-attribute-label')).toHaveTextContent(attributeType.label);
117
- expect(screen.getAllByTestId('reltio-attribute-value')).toHaveLength(1);
118
- expect(screen.getByRole('textbox')).toBeInTheDocument();
119
- });
120
- it('should render Attribute component for activeness attributes', function () {
121
- var attributeType = EntityAttrTypes.endDate;
122
- setUp({ attributeType: attributeType, values: [1690891216477] });
123
- expect(screen.getByTestId('reltio-attribute-label')).toHaveTextContent(attributeType.label);
124
- expect(screen.getAllByTestId('reltio-attribute-value')).toHaveLength(1);
125
- expect(screen.getByRole('textbox')).toHaveValue('08/01/2023');
126
- });
127
- it('should return null if there are no activeness values and showEmptyEditors is falsy', function () {
128
- var attributeType = EntityAttrTypes.endDate;
129
- var container = setUp({ attributeType: attributeType, values: [] }).container;
130
- expect(container).toBeEmptyDOMElement();
131
- });
132
- it('should render special "empty" activeness attribute if values empty and showEmptyEditors is true', function () {
133
- var attributeType = EntityAttrTypes.endDate;
134
- setUp({ attributeType: attributeType, values: [], showEmptyEditors: true });
135
- expect(screen.getByTestId('reltio-attribute-label')).toHaveTextContent(attributeType.label);
136
- expect(screen.getAllByTestId('reltio-attribute-value')).toHaveLength(1);
137
- expect(screen.getByRole('textbox')).toHaveValue('');
138
- });
139
- it('should render null if values empty, showEmptyEditors is true but delete operation was performed', function () { return __awaiter(void 0, void 0, void 0, function () {
140
- var attributeType, _a, user, container;
141
- return __generator(this, function (_b) {
142
- switch (_b.label) {
143
- case 0:
144
- attributeType = EntityAttrTypes.endDate;
145
- _a = setUp({ attributeType: attributeType, values: [], showEmptyEditors: true }), user = _a.user, container = _a.container;
146
- expect(container).not.toBeEmptyDOMElement();
147
- return [4 /*yield*/, user.click(screen.getByTestId('reltio-delete-simple-attribute-button'))];
148
- case 1:
149
- _b.sent();
150
- expect(container).toBeEmptyDOMElement();
151
- return [2 /*return*/];
152
- }
153
- });
154
- }); });
155
- it('should call HasDeletionsContext.Provider.value.setHasDeletions on delete operation if context is defined', function () { return __awaiter(void 0, void 0, void 0, function () {
156
- var props, contextValue, user, Providers, container;
157
- return __generator(this, function (_a) {
158
- switch (_a.label) {
159
- case 0:
160
- props = __assign(__assign({}, defaultProps), { attributeType: EntityAttrTypes.endDate, values: [], showEmptyEditors: true });
161
- contextValue = { setHasDeletions: jest.fn(), hasDeletionsMap: {} };
162
- user = userEvent.setup();
163
- Providers = function (_a) {
164
- var children = _a.children;
165
- return (React.createElement(HasDeletionsContext.Provider, { value: contextValue },
166
- React.createElement(LocalizationProvider, { dateAdapter: AdapterMoment },
167
- React.createElement(MdmModuleProvider, { values: mdmValues }, children))));
168
- };
169
- container = render(React.createElement(SpecialRenderer, __assign({}, defaultProps, props)), { wrapper: Providers }).container;
170
- return [4 /*yield*/, user.click(screen.getByTestId('reltio-delete-simple-attribute-button'))];
171
- case 1:
172
- _a.sent();
173
- expect(screen.getAllByTestId('reltio-attribute-value')).toHaveLength(1);
174
- expect(contextValue.setHasDeletions).toHaveBeenCalledWith(props.attributeType.uri, true);
175
- expect(container).not.toBeEmptyDOMElement();
176
- return [2 /*return*/];
177
- }
178
- });
179
- }); });
180
- it('should not crash without context provider and use internal state for hasDeletions', function () { return __awaiter(void 0, void 0, void 0, function () {
181
- var attributeType, _a, user, container;
182
- return __generator(this, function (_b) {
183
- switch (_b.label) {
184
- case 0:
185
- attributeType = EntityAttrTypes.endDate;
186
- _a = setUp({ attributeType: attributeType, values: [], showEmptyEditors: true }), user = _a.user, container = _a.container;
187
- expect(container).not.toBeEmptyDOMElement();
188
- return [4 /*yield*/, user.click(screen.getByTestId('reltio-delete-simple-attribute-button'))];
189
- case 1:
190
- _b.sent();
191
- expect(screen.queryAllByTestId('reltio-attribute-value')).toHaveLength(0);
192
- return [2 /*return*/];
193
- }
194
- });
195
- }); });
196
- it('should pass additional params to attribute component', function () {
197
- var attributeType = EntityAttrTypes.endDate;
198
- var additionalControlsRenderer = function () { return React.createElement("div", { "data-reltio-id": "additional-controls" }); };
199
- setUp({ attributeType: attributeType, values: [1690891216477], additionalControlsRenderer: additionalControlsRenderer });
200
- expect(screen.getByTestId('reltio-attribute-label')).toHaveTextContent(attributeType.label);
201
- expect(screen.getAllByTestId('reltio-attribute-value')).toHaveLength(1);
202
- expect(screen.getByTestId('additional-controls')).toBeInTheDocument();
203
- });
204
- });