@reltio/components 1.4.1909 → 1.4.1910

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 (29) hide show
  1. package/cjs/ProfileResizablePanes/ProfileResizablePanes.spec.js +113 -68
  2. package/cjs/ResizablePanes/ResizablePanes.d.ts +3 -2
  3. package/cjs/ResizablePanes/ResizablePanes.js +83 -16
  4. package/cjs/ResizablePanes/ResizablePanes.test.js +289 -0
  5. package/cjs/ResizablePanes/styles.d.ts +1 -1
  6. package/cjs/ResizablePanes/styles.js +47 -38
  7. package/cjs/SimpleMatchRulesBlock/SimpleMatchRulesBlock.js +1 -1
  8. package/cjs/SimpleMatchRulesBlock/SimpleMatchRulesBlock.test.js +1 -1
  9. package/cjs/index.d.ts +1 -1
  10. package/cjs/index.js +2 -1
  11. package/cjs/test-utils/index.d.ts +1 -0
  12. package/cjs/test-utils/index.js +15 -1
  13. package/esm/ProfileResizablePanes/ProfileResizablePanes.spec.js +113 -68
  14. package/esm/ResizablePanes/ResizablePanes.d.ts +3 -2
  15. package/esm/ResizablePanes/ResizablePanes.js +84 -17
  16. package/esm/ResizablePanes/ResizablePanes.test.js +284 -0
  17. package/esm/ResizablePanes/styles.d.ts +1 -1
  18. package/esm/ResizablePanes/styles.js +47 -38
  19. package/esm/SimpleMatchRulesBlock/SimpleMatchRulesBlock.js +1 -1
  20. package/esm/SimpleMatchRulesBlock/SimpleMatchRulesBlock.test.js +1 -1
  21. package/esm/index.d.ts +1 -1
  22. package/esm/index.js +1 -1
  23. package/esm/test-utils/index.d.ts +1 -0
  24. package/esm/test-utils/index.js +13 -0
  25. package/package.json +3 -3
  26. package/cjs/ResizablePanes/ResizablePanes.spec.js +0 -192
  27. package/esm/ResizablePanes/ResizablePanes.spec.js +0 -164
  28. /package/cjs/ResizablePanes/{ResizablePanes.spec.d.ts → ResizablePanes.test.d.ts} +0 -0
  29. /package/esm/ResizablePanes/{ResizablePanes.spec.d.ts → ResizablePanes.test.d.ts} +0 -0
@@ -0,0 +1,289 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
14
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
15
+ return new (P || (P = Promise))(function (resolve, reject) {
16
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
17
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
18
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
19
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
20
+ });
21
+ };
22
+ var __generator = (this && this.__generator) || function (thisArg, body) {
23
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
24
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
25
+ function verb(n) { return function (v) { return step([n, v]); }; }
26
+ function step(op) {
27
+ if (f) throw new TypeError("Generator is already executing.");
28
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
29
+ 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;
30
+ if (y = 0, t) op = [op[0] & 2, t.value];
31
+ switch (op[0]) {
32
+ case 0: case 1: t = op; break;
33
+ case 4: _.label++; return { value: op[1], done: false };
34
+ case 5: _.label++; y = op[1]; op = [0]; continue;
35
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
36
+ default:
37
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
38
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
39
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
40
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
41
+ if (t[2]) _.ops.pop();
42
+ _.trys.pop(); continue;
43
+ }
44
+ op = body.call(thisArg, _);
45
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
46
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
47
+ }
48
+ };
49
+ var __importDefault = (this && this.__importDefault) || function (mod) {
50
+ return (mod && mod.__esModule) ? mod : { "default": mod };
51
+ };
52
+ Object.defineProperty(exports, "__esModule", { value: true });
53
+ var react_1 = __importDefault(require("react"));
54
+ var react_2 = require("@testing-library/react");
55
+ var user_event_1 = __importDefault(require("@testing-library/user-event"));
56
+ var ResizablePanes_1 = require("./ResizablePanes");
57
+ var test_utils_1 = require("../test-utils");
58
+ var defaultProps = {
59
+ allowResize: true,
60
+ children: []
61
+ };
62
+ var setUp = function (props) {
63
+ if (props === void 0) { props = defaultProps; }
64
+ var user = user_event_1.default.setup();
65
+ return __assign(__assign({}, (0, react_2.render)(react_1.default.createElement(ResizablePanes_1.ResizablePanes, __assign({}, props),
66
+ react_1.default.createElement("div", null, "Panel 1 content"),
67
+ react_1.default.createElement("div", null, "Panel 2 content")))), { user: user });
68
+ };
69
+ var getPanel1 = function (container) { return container.querySelectorAll('[data-panel-id]')[0]; };
70
+ var getPanel2 = function (container) { return container.querySelectorAll('[data-panel-id]')[1]; };
71
+ var getResizeHandle = function (container) { return container.querySelector('[data-resize-handle]'); };
72
+ var isResizingDisabled = function (container) {
73
+ return getResizeHandle(container).getAttribute('data-panel-resize-handle-enabled') === 'false';
74
+ };
75
+ var checkPanelSize = function (panel, size) { return expect(panel.getAttribute('data-panel-size')).toBe(size); };
76
+ var moveResizeHandle = function (container, user, from, to) { return __awaiter(void 0, void 0, void 0, function () {
77
+ var resizeHandle;
78
+ return __generator(this, function (_a) {
79
+ switch (_a.label) {
80
+ case 0:
81
+ resizeHandle = getResizeHandle(container);
82
+ return [4 /*yield*/, user.pointer([
83
+ {
84
+ keys: '[MouseLeft>]',
85
+ target: resizeHandle,
86
+ coords: {
87
+ x: from.x,
88
+ y: from.y
89
+ }
90
+ },
91
+ {
92
+ target: resizeHandle,
93
+ coords: {
94
+ x: to.x,
95
+ y: to.y
96
+ }
97
+ },
98
+ {
99
+ keys: '[/MouseLeft]',
100
+ target: resizeHandle,
101
+ coords: {
102
+ x: to.x,
103
+ y: to.y
104
+ }
105
+ }
106
+ ])];
107
+ case 1:
108
+ _a.sent();
109
+ return [2 /*return*/];
110
+ }
111
+ });
112
+ }); };
113
+ describe('ResizablePanes tests', function () {
114
+ beforeAll(function () {
115
+ jest.spyOn(HTMLElement.prototype, 'clientWidth', 'get').mockReturnValue(1000);
116
+ jest.spyOn(HTMLElement.prototype, 'getBoundingClientRect').mockReturnValue({
117
+ width: 1000,
118
+ height: 1000,
119
+ top: 0,
120
+ left: 0,
121
+ right: 1000,
122
+ bottom: 1000,
123
+ x: 0,
124
+ y: 0,
125
+ toJSON: function () { return ''; }
126
+ });
127
+ });
128
+ it('should render main parts', function () {
129
+ var container = setUp().container;
130
+ expect(getPanel1(container)).toBeInTheDocument();
131
+ expect(react_2.screen.getByText('Panel 1 content')).toBeInTheDocument();
132
+ expect(getPanel2(container)).toBeInTheDocument();
133
+ expect(react_2.screen.getByText('Panel 2 content')).toBeInTheDocument();
134
+ expect(getResizeHandle(container)).toBeInTheDocument();
135
+ });
136
+ it('should allow to resize the panels', function () { return __awaiter(void 0, void 0, void 0, function () {
137
+ var _a, container, user;
138
+ return __generator(this, function (_b) {
139
+ switch (_b.label) {
140
+ case 0:
141
+ _a = setUp(__assign(__assign({}, defaultProps), { size: '320px', minSize: '320px', maxSize: '640px', onChange: function () { }, debounceInterval: 0 })), container = _a.container, user = _a.user;
142
+ expect(isResizingDisabled(container)).toBe(false);
143
+ checkPanelSize(getPanel1(container), '32.0');
144
+ checkPanelSize(getPanel2(container), '68.0');
145
+ // move mouse to an x-coordinate between minSize and maxSize
146
+ return [4 /*yield*/, moveResizeHandle(container, user, { x: 320, y: 0 }, { x: 500, y: 20 })];
147
+ case 1:
148
+ // move mouse to an x-coordinate between minSize and maxSize
149
+ _b.sent();
150
+ checkPanelSize(getPanel1(container), '50.0');
151
+ checkPanelSize(getPanel2(container), '50.0');
152
+ // move mouse to a larger x-coordinate than max size
153
+ return [4 /*yield*/, moveResizeHandle(container, user, { x: 500, y: 0 }, { x: 650, y: 20 })];
154
+ case 2:
155
+ // move mouse to a larger x-coordinate than max size
156
+ _b.sent();
157
+ checkPanelSize(getPanel1(container), '64.0');
158
+ checkPanelSize(getPanel2(container), '36.0');
159
+ // move mouse to a smaller x-coordinate than min size
160
+ return [4 /*yield*/, moveResizeHandle(container, user, { x: 640, y: 0 }, { x: 310, y: 20 })];
161
+ case 3:
162
+ // move mouse to a smaller x-coordinate than min size
163
+ _b.sent();
164
+ checkPanelSize(getPanel1(container), '32.0');
165
+ checkPanelSize(getPanel2(container), '68.0');
166
+ return [2 /*return*/];
167
+ }
168
+ });
169
+ }); });
170
+ it('should call onChange prop with debounce on panels resizing', function () { return __awaiter(void 0, void 0, void 0, function () {
171
+ var debounceInterval, props, _a, user, container;
172
+ return __generator(this, function (_b) {
173
+ switch (_b.label) {
174
+ case 0:
175
+ debounceInterval = 200;
176
+ props = __assign(__assign({}, defaultProps), { size: 320, debounceInterval: debounceInterval, onChange: jest.fn() });
177
+ _a = setUp(props), user = _a.user, container = _a.container;
178
+ return [4 /*yield*/, moveResizeHandle(container, user, { x: 320, y: 0 }, { x: 510, y: 20 })];
179
+ case 1:
180
+ _b.sent();
181
+ expect(props.onChange).not.toHaveBeenCalled();
182
+ return [4 /*yield*/, (0, test_utils_1.delayPromise)(debounceInterval + 1)];
183
+ case 2:
184
+ _b.sent();
185
+ expect(props.onChange).toHaveBeenCalledWith({
186
+ isMaxSize: false,
187
+ isMinSize: false,
188
+ percentageSize: '51%',
189
+ size: 510
190
+ });
191
+ return [2 /*return*/];
192
+ }
193
+ });
194
+ }); });
195
+ it('should set correct isMaxSize in props.onChange argument for positive props.maxSize', function () { return __awaiter(void 0, void 0, void 0, function () {
196
+ var debounceInterval, props, _a, user, container;
197
+ return __generator(this, function (_b) {
198
+ switch (_b.label) {
199
+ case 0:
200
+ debounceInterval = 0;
201
+ props = __assign(__assign({}, defaultProps), { size: 320, maxSize: 500, debounceInterval: debounceInterval, onChange: jest.fn() });
202
+ _a = setUp(props), user = _a.user, container = _a.container;
203
+ return [4 /*yield*/, moveResizeHandle(container, user, { x: 320, y: 0 }, { x: 510, y: 20 })];
204
+ case 1:
205
+ _b.sent();
206
+ expect(props.onChange).toHaveBeenCalledWith({
207
+ isMaxSize: true,
208
+ isMinSize: false,
209
+ percentageSize: '50%',
210
+ size: 500
211
+ });
212
+ return [2 /*return*/];
213
+ }
214
+ });
215
+ }); });
216
+ it('should set correct isMaxSize in props.onChange argument for negative props.maxSize', function () { return __awaiter(void 0, void 0, void 0, function () {
217
+ var debounceInterval, props, _a, user, container;
218
+ return __generator(this, function (_b) {
219
+ switch (_b.label) {
220
+ case 0:
221
+ debounceInterval = 0;
222
+ props = __assign(__assign({}, defaultProps), { size: 320, maxSize: -200, debounceInterval: debounceInterval, onChange: jest.fn() });
223
+ _a = setUp(props), user = _a.user, container = _a.container;
224
+ return [4 /*yield*/, moveResizeHandle(container, user, { x: 320, y: 0 }, { x: 800, y: 20 })];
225
+ case 1:
226
+ _b.sent();
227
+ expect(props.onChange).toHaveBeenCalledWith({
228
+ isMaxSize: true,
229
+ isMinSize: false,
230
+ percentageSize: '80%',
231
+ size: 800
232
+ });
233
+ return [2 /*return*/];
234
+ }
235
+ });
236
+ }); });
237
+ it('should set correct isMaxSize in props.onChange argument if props.maxSize omitted', function () { return __awaiter(void 0, void 0, void 0, function () {
238
+ var debounceInterval, props, _a, user, container;
239
+ return __generator(this, function (_b) {
240
+ switch (_b.label) {
241
+ case 0:
242
+ debounceInterval = 0;
243
+ props = __assign(__assign({}, defaultProps), { size: 320, debounceInterval: debounceInterval, onChange: jest.fn() });
244
+ _a = setUp(props), user = _a.user, container = _a.container;
245
+ return [4 /*yield*/, moveResizeHandle(container, user, { x: 320, y: 0 }, { x: 1000, y: 20 })];
246
+ case 1:
247
+ _b.sent();
248
+ expect(props.onChange).toHaveBeenCalledWith({
249
+ isMaxSize: true,
250
+ isMinSize: false,
251
+ percentageSize: '100%',
252
+ size: 1000
253
+ });
254
+ return [2 /*return*/];
255
+ }
256
+ });
257
+ }); });
258
+ it('should set correct isMinSize in props.onChange argument for positive props.minSize', function () { return __awaiter(void 0, void 0, void 0, function () {
259
+ var debounceInterval, props, _a, user, container;
260
+ return __generator(this, function (_b) {
261
+ switch (_b.label) {
262
+ case 0:
263
+ debounceInterval = 0;
264
+ props = __assign(__assign({}, defaultProps), { size: 320, minSize: 200, debounceInterval: debounceInterval, onChange: jest.fn() });
265
+ _a = setUp(props), user = _a.user, container = _a.container;
266
+ return [4 /*yield*/, moveResizeHandle(container, user, { x: 320, y: 0 }, { x: 200, y: 20 })];
267
+ case 1:
268
+ _b.sent();
269
+ expect(props.onChange).toHaveBeenCalledWith({
270
+ isMaxSize: false,
271
+ isMinSize: true,
272
+ percentageSize: '20%',
273
+ size: 200
274
+ });
275
+ return [2 /*return*/];
276
+ }
277
+ });
278
+ }); });
279
+ it('should apply negative size correctly', function () { return __awaiter(void 0, void 0, void 0, function () {
280
+ var props, container;
281
+ return __generator(this, function (_a) {
282
+ props = __assign(__assign({}, defaultProps), { size: -40 });
283
+ container = setUp(props).container;
284
+ checkPanelSize(getPanel1(container), '96.0');
285
+ checkPanelSize(getPanel2(container), '4.0');
286
+ return [2 /*return*/];
287
+ });
288
+ }); });
289
+ });
@@ -1 +1 @@
1
- export declare const useStyles: (props?: any) => import("@mui/styles").ClassNameMap<"container">;
1
+ export declare const useStyles: (props?: any) => import("@mui/styles").ClassNameMap<"container" | "horizontal" | "vertical" | "resizer" | "disabled" | "panel">;
@@ -4,46 +4,55 @@ exports.useStyles = void 0;
4
4
  var styles_1 = require("@mui/styles");
5
5
  exports.useStyles = (0, styles_1.makeStyles)(function () { return ({
6
6
  container: {
7
- position: 'relative',
8
- '& .Resizer': {
9
- zIndex: 1,
10
- boxSizing: 'border-box',
11
- backgroundClip: 'padding-box',
12
- '&.disabled': {
13
- cursor: 'initial',
14
- height: 0,
15
- margin: 0
7
+ position: 'relative'
8
+ },
9
+ panel: {
10
+ position: 'relative'
11
+ },
12
+ horizontal: {},
13
+ vertical: {},
14
+ disabled: {},
15
+ resizer: {
16
+ zIndex: 1,
17
+ boxSizing: 'border-box',
18
+ backgroundClip: 'padding-box',
19
+ '&$disabled': {
20
+ cursor: 'initial',
21
+ height: 0,
22
+ margin: 0
23
+ },
24
+ '&$horizontal': {
25
+ height: '11px',
26
+ backgroundImage: 'linear-gradient(rgba(0,0,0,0.33), rgba(0,0,0,0.33))',
27
+ backgroundRepeat: 'no-repeat',
28
+ backgroundSize: '100% 1px',
29
+ backgroundPosition: 'top',
30
+ width: '100%',
31
+ marginBottom: '-10px',
32
+ '&$disabled': {
33
+ background: 'transparent'
16
34
  },
17
- '&.horizontal': {
18
- height: '11px',
19
- backgroundImage: 'linear-gradient(rgba(0,0,0,0.33), rgba(0,0,0,0.33))',
20
- backgroundRepeat: 'no-repeat',
21
- backgroundSize: '100% 1px',
22
- backgroundPosition: 'top',
23
- width: '100%',
24
- marginBottom: '-10px',
25
- '&.disabled': {
26
- background: 'transparent'
27
- },
28
- '&:not(.disabled):hover': {
29
- cursor: 'row-resize',
30
- backgroundImage: 'linear-gradient(rgba(0, 114, 206, 0), rgba(0, 114, 206, 0.35), rgba(0, 114, 206, 1))',
31
- backgroundSize: '100% 3px'
32
- }
35
+ '&:not($disabled):hover': {
36
+ cursor: 'ns-resize',
37
+ backgroundImage: 'linear-gradient(rgba(0, 114, 206, 0), rgba(0, 114, 206, 0.35), rgba(0, 114, 206, 1))',
38
+ backgroundSize: '100% 3px'
39
+ }
40
+ },
41
+ '&$vertical': {
42
+ width: '11px',
43
+ backgroundImage: 'linear-gradient(rgba(0,0,0,0.33), rgba(0,0,0,0.33))',
44
+ backgroundRepeat: 'no-repeat',
45
+ backgroundSize: '1px 100%',
46
+ backgroundPosition: 'left',
47
+ height: '100%',
48
+ marginRight: '-10px',
49
+ '&$disabled': {
50
+ background: 'transparent'
33
51
  },
34
- '&.vertical': {
35
- width: '11px',
36
- backgroundImage: 'linear-gradient(rgba(0,0,0,0.33), rgba(0,0,0,0.33))',
37
- backgroundRepeat: 'no-repeat',
38
- backgroundSize: '1px 100%',
39
- backgroundPosition: 'left',
40
- height: '100%',
41
- marginRight: '-10px',
42
- '&:not(.disabled):hover': {
43
- cursor: 'col-resize',
44
- backgroundImage: 'linear-gradient(to left, rgba(0, 114, 206, 0.35), rgba(0, 114, 206, 1), rgba(0, 114, 206, 0.35))',
45
- backgroundSize: '3px 100%'
46
- }
52
+ '&:not($disabled):hover': {
53
+ cursor: 'ew-resize',
54
+ backgroundImage: 'linear-gradient(to left, rgba(0, 114, 206, 0.35), rgba(0, 114, 206, 1), rgba(0, 114, 206, 0.35))',
55
+ backgroundSize: '3px 100%'
47
56
  }
48
57
  }
49
58
  }
@@ -44,7 +44,7 @@ var SimpleMatchRulesBlock = function (_a) {
44
44
  return (react_1.default.createElement("div", { className: styles.container, "data-reltio-id": "simple-match-rules-block" },
45
45
  react_1.default.createElement(exports.MatchRuleBadgeWithTooltip, { tooltipTitle: react_1.default.createElement(MatchRulesTooltip_1.MatchRulesTooltip, { matchRules: matchRules, isMlMatch: isMlMatch }), tooltipPlacement: "bottom-start", onExpand: handleOnExpand, expanded: expanded }, isMlMatch ? (react_1.default.createElement(react_1.default.Fragment, null,
46
46
  react_1.default.createElement(AIPowered_1.default, { className: styles.icon }),
47
- ui_i18n_1.default.text('AI-Powered'))) : (ui_i18n_1.default.text('Rules'))),
47
+ ui_i18n_1.default.text('AI-powered'))) : (ui_i18n_1.default.text('Rules'))),
48
48
  expanded ? (react_1.default.createElement(SimpleMatchRules_1.SimpleMatchRules, { className: styles.rulesContainer, matchRules: matchRules, isMlMatch: isMlMatch, matchRuleSummaries: matchRuleSummaries })) : null));
49
49
  };
50
50
  exports.SimpleMatchRulesBlock = SimpleMatchRulesBlock;
@@ -36,7 +36,7 @@ describe('SimpleMatchRulesBlock test', function () {
36
36
  });
37
37
  it('should render correct MatchRuleBadgeWithTooltip for Ml match', function () {
38
38
  var component = (0, enzyme_1.shallow)(react_1.default.createElement(SimpleMatchRulesBlock_1.SimpleMatchRulesBlock, { isMlMatch: true, matchRules: matchRules }));
39
- expect(getMatchRuleBadgeWithTooltip(component).text()).toBe('<AIPowered />AI-Powered');
39
+ expect(getMatchRuleBadgeWithTooltip(component).text()).toBe('<AIPowered />AI-powered');
40
40
  });
41
41
  it('should render correct MatchRuleBadgeWithTooltip for non Ml match', function () {
42
42
  var component = (0, enzyme_1.shallow)(react_1.default.createElement(SimpleMatchRulesBlock_1.SimpleMatchRulesBlock, { matchRules: matchRules }));
package/cjs/index.d.ts CHANGED
@@ -270,7 +270,7 @@ export * from './types';
270
270
  export * from './constants';
271
271
  export { TestPerspectivesSettingsProvider } from './test-utils/TestPerspectiveSettingsProvider';
272
272
  export { TestStylesProvider } from './test-utils/TestStylesProvider';
273
- export { awaitMockPromises, deepFreeze, delayPromise, getMuiIconByName, getMuiIconsByName, mockBasicTableSizing, mockElementSizes, rerenderWrapper, FakeMouseEvent } from './test-utils';
273
+ export { awaitMockPromises, deepFreeze, delayPromise, getMuiIconByName, getMuiIconsByName, mockBasicTableSizing, fixClicksOnResizablePanes, mockElementSizes, rerenderWrapper, FakeMouseEvent } from './test-utils';
274
274
  export * from './features/activity-log';
275
275
  export * from './features/crosswalks';
276
276
  export * from './features/graph';
package/cjs/index.js CHANGED
@@ -20,7 +20,7 @@ exports.PotentialMatchReviewCard = exports.PopupWithArrow = exports.Popper = exp
20
20
  exports.usePerspectivesSettings = exports.PerspectivesSettingsContext = exports.PivotingAttributeContext = exports.UsersContext = exports.InitialCollaborationContextValue = exports.CollaborationContextProvider = exports.CollaborationContext = exports.BlockImageGalleryDialogContext = exports.PopupBoundariesContext = exports.HistoryDiffContext = exports.AsyncMountContext = exports.MdmModuleProvider = exports.withTableContext = exports.withFilterAtBottom = exports.withPercents = exports.withContext = exports.withDateRangeSelector = exports.withDragHandle = exports.withAsyncMount = exports.withTooltip = exports.RelationEditor = exports.ReltioMap = exports.Marginator = exports.LightArrowTooltip = exports.ScrollableTabs = exports.VirtualGroupedList = exports.ViewMoreToggle = exports.VerticalHeadingsTable = exports.VerticalDivider = exports.AttributeTitle = exports.Spacer = exports.SimpleDropDownSelector = exports.SidePanelContentHeader = exports.SidePanel = exports.SidePanelEmptyState = exports.SideButtonsPanel = exports.SelectorWithOnlyOptionAutoSelect = exports.SelectionPopup = exports.WhiteSearchInput = exports.SearchInput = exports.ProfileResizablePanes = exports.ResizablePanes = exports.ReltioGridLayout = exports.reactSortableTreeHelpers = exports.ReactSortableTree = exports.MultiSelect = exports.QueryBuilderRowsGroup = exports.QueryBuilderRow = exports.ProfileCard = exports.ProfileBand = void 0;
21
21
  exports.HiddenAttributesContext = exports.BasicTableContext = exports.BasicTableRowCollapseContext = exports.useUnmaskedAttributeValue = exports.useUnmaskAttributeValue = exports.useMaskAttributeValue = exports.MaskedAttributesProvider = exports.SegmentationContext = exports.useReloadData = exports.ReloadDataProvider = exports.useAttributeValueConfigPermissions = exports.ConfigPermissionsContextProvider = exports.ConfigPermissionsContext = exports.useActionsHook = exports.ActionsHookProvider = exports.PageRequestsAbortingContext = exports.DependentLookupAutopopulationContext = exports.FeaturesContext = exports.LabelsContext = exports.UrlGeneratorsContext = exports.isHighlightedAttributeType = exports.isHighlightedErrorType = exports.ScrollType = exports.ScrollToElementProvider = exports.ScrollToElementContext = exports.SearchValueContext = exports.InterceptHandlersContext = exports.HighlightedValuesContext = exports.SnackbarContext = exports.SearchFiltersContext = exports.useReloadFacet = exports.ReloadFacetProvider = exports.useReloadAllFacets = exports.SandboxAPIContext = exports.EntityContext = exports.RelatedObjectUrisContext = exports.WorkflowTasksContext = exports.useEntityLoadingIndication = exports.EntityLoadingIndicationProvider = exports.EntityMarkerContext = exports.useAttributeExpanded = exports.ExpandedAttributesProvider = exports.useHighlightedCrosswalks = exports.useCrosswalkHighlight = exports.useCrosswalkFocus = exports.useCrosswalkColor = exports.CrosswalksDisplayProvider = exports.EntitiesMapContext = exports.IdContext = exports.ProfilePerspectiveViewContext = void 0;
22
22
  exports.TestPerspectivesSettingsProvider = exports.mergeClasses = exports.isControlOrCommandPressed = exports.getValue = exports.getChecked = exports.showErrorMessage = exports.showDefaultErrorMessage = exports.enrichDataWithPercents = exports.defaultRenderRowCell = exports.defaultGetRowCellHeight = exports.columnFilterToMdmFilter = exports.buildColumnsFilter = exports.useKeyboardNavigation = exports.useDynamicRowCellHeight = exports.useClickableStyle = exports.BasicTableCellRenderer = exports.useBasicTableCellRenderer = exports.useHiddenAttributes = exports.useSavedSearchesRequest = exports.useRequestDCRReview = exports.useAutoFocus = exports.useExpandInvalidRelations = exports.useLayoutResetter = exports.useIsMountedRef = exports.useSnackbar = exports.useSavedStateForEntityType = exports.useReadableSearchState = exports.useEditableConnection = exports.useCustomScripts = exports.useMarkAsNotMatchRequest = exports.useMergeAllRequest = exports.usePagingSimulator = exports.useMatchesLoader = exports.useConfigPermissions = exports.useWhyDidYouUpdate = exports.useUsers = exports.useSavedState = exports.useSafePromise = exports.useRunOnceAfterValueInitialization = exports.useRelationsLoader = exports.useRelationTypeSelector = exports.usePrevious = exports.useDidUpdateEffect = exports.useCommentsEntitiesMap = exports.useCollaboration = exports.useAsyncMount = exports.useAPI = exports.useActions = exports.useMatchesColumnsData = exports.useScrollToAttributeError = void 0;
23
- exports.FakeMouseEvent = exports.rerenderWrapper = exports.mockElementSizes = exports.mockBasicTableSizing = exports.getMuiIconsByName = exports.getMuiIconByName = exports.delayPromise = exports.deepFreeze = exports.awaitMockPromises = exports.TestStylesProvider = void 0;
23
+ exports.FakeMouseEvent = exports.rerenderWrapper = exports.mockElementSizes = exports.fixClicksOnResizablePanes = exports.mockBasicTableSizing = exports.getMuiIconsByName = exports.getMuiIconByName = exports.delayPromise = exports.deepFreeze = exports.awaitMockPromises = exports.TestStylesProvider = void 0;
24
24
  // components
25
25
  var ActionButton_1 = require("./ActionButton");
26
26
  Object.defineProperty(exports, "ActionButton", { enumerable: true, get: function () { return ActionButton_1.ActionButton; } });
@@ -604,6 +604,7 @@ Object.defineProperty(exports, "delayPromise", { enumerable: true, get: function
604
604
  Object.defineProperty(exports, "getMuiIconByName", { enumerable: true, get: function () { return test_utils_1.getMuiIconByName; } });
605
605
  Object.defineProperty(exports, "getMuiIconsByName", { enumerable: true, get: function () { return test_utils_1.getMuiIconsByName; } });
606
606
  Object.defineProperty(exports, "mockBasicTableSizing", { enumerable: true, get: function () { return test_utils_1.mockBasicTableSizing; } });
607
+ Object.defineProperty(exports, "fixClicksOnResizablePanes", { enumerable: true, get: function () { return test_utils_1.fixClicksOnResizablePanes; } });
607
608
  Object.defineProperty(exports, "mockElementSizes", { enumerable: true, get: function () { return test_utils_1.mockElementSizes; } });
608
609
  Object.defineProperty(exports, "rerenderWrapper", { enumerable: true, get: function () { return test_utils_1.rerenderWrapper; } });
609
610
  Object.defineProperty(exports, "FakeMouseEvent", { enumerable: true, get: function () { return test_utils_1.FakeMouseEvent; } });
@@ -15,6 +15,7 @@ export declare const mockBasicTableSizing: ({ width, height }?: {
15
15
  width?: number;
16
16
  height?: number;
17
17
  }) => () => void;
18
+ export declare const fixClicksOnResizablePanes: () => void;
18
19
  export declare const getMuiIconByName: (name: string, el?: HTMLElement) => HTMLElement;
19
20
  export declare const getMuiIconsByName: (name: string, el?: HTMLElement) => HTMLElement[];
20
21
  interface MouseEventWithOffsets extends MouseEventInit {
@@ -62,7 +62,7 @@ var __rest = (this && this.__rest) || function (s, e) {
62
62
  return t;
63
63
  };
64
64
  Object.defineProperty(exports, "__esModule", { value: true });
65
- exports.FakeMouseEvent = exports.getMuiIconsByName = exports.getMuiIconByName = exports.mockBasicTableSizing = exports.mockElementSizes = exports.rerenderWrapper = exports.deepFreeze = exports.awaitMockPromises = exports.delayPromise = void 0;
65
+ exports.FakeMouseEvent = exports.getMuiIconsByName = exports.getMuiIconByName = exports.fixClicksOnResizablePanes = exports.mockBasicTableSizing = exports.mockElementSizes = exports.rerenderWrapper = exports.deepFreeze = exports.awaitMockPromises = exports.delayPromise = void 0;
66
66
  var react_1 = require("@testing-library/react");
67
67
  var delayPromise = function (delay) {
68
68
  if (delay === void 0) { delay = 0; }
@@ -137,6 +137,20 @@ var mockBasicTableSizing = function (_a) {
137
137
  return unmock;
138
138
  };
139
139
  exports.mockBasicTableSizing = mockBasicTableSizing;
140
+ var originalPreventDefault = Event.prototype.preventDefault;
141
+ var fixClicksOnResizablePanes = function () {
142
+ // https://github.com/bvaughn/react-resizable-panels/issues/367
143
+ // https://github.com/testing-library/user-event/issues/1206
144
+ // Workaround until the user-event issue is resolved
145
+ jest.spyOn(Event.prototype, 'preventDefault').mockImplementation(function () {
146
+ var e = this;
147
+ if (e.currentTarget === document.body && e.eventPhase === Event.CAPTURING_PHASE) {
148
+ return;
149
+ }
150
+ originalPreventDefault.call(e);
151
+ });
152
+ };
153
+ exports.fixClicksOnResizablePanes = fixClicksOnResizablePanes;
140
154
  var getMuiIconByName = function (name, el) {
141
155
  if (el === void 0) { el = document.documentElement; }
142
156
  var dataTestId = name + 'Icon';