@reltio/components 1.4.1109 → 1.4.1112

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 (85) hide show
  1. package/cjs/components/AttributeListItem/styles.d.ts +1 -1
  2. package/cjs/components/ModeSwitcher/styles.d.ts +1 -1
  3. package/cjs/components/PotentialMatchReviewCard/styles.d.ts +1 -1
  4. package/cjs/components/ReltioMap/MapControls/TopRightMapControls/styles.d.ts +1 -1
  5. package/cjs/components/SearchInput/styles.d.ts +1 -1
  6. package/cjs/components/SmallIconButton/SmallIconButton.d.ts +1 -1
  7. package/cjs/components/SmallIconButton/index.d.ts +2 -2
  8. package/cjs/components/VerticalHeadingsTable/TableCell/TableCell.d.ts +10 -0
  9. package/cjs/components/VerticalHeadingsTable/TableCell/TableCell.js +15 -0
  10. package/cjs/components/VerticalHeadingsTable/TableCellWithDnd/TableCellWithDnd.d.ts +13 -0
  11. package/cjs/components/VerticalHeadingsTable/TableCellWithDnd/TableCellWithDnd.js +89 -0
  12. package/cjs/components/VerticalHeadingsTable/TableCellWithDnd/styles.d.ts +1 -0
  13. package/cjs/components/VerticalHeadingsTable/TableCellWithDnd/styles.js +29 -0
  14. package/cjs/components/VerticalHeadingsTable/TableColumnDragLayer/TableColumnDragLayer.d.ts +6 -0
  15. package/cjs/components/VerticalHeadingsTable/TableColumnDragLayer/TableColumnDragLayer.js +56 -0
  16. package/cjs/components/VerticalHeadingsTable/TableColumnDragLayer/TableColumnDragPreview.d.ts +12 -0
  17. package/cjs/components/VerticalHeadingsTable/TableColumnDragLayer/TableColumnDragPreview.js +16 -0
  18. package/cjs/components/VerticalHeadingsTable/TableColumnDragLayer/styles.d.ts +1 -0
  19. package/cjs/components/VerticalHeadingsTable/TableColumnDragLayer/styles.js +15 -0
  20. package/cjs/components/VerticalHeadingsTable/TableHeadCell/TableHeadCell.d.ts +16 -0
  21. package/cjs/components/VerticalHeadingsTable/TableHeadCell/TableHeadCell.js +31 -0
  22. package/cjs/components/VerticalHeadingsTable/TableHeadCell/styles.d.ts +1 -0
  23. package/cjs/components/VerticalHeadingsTable/TableHeadCell/styles.js +28 -0
  24. package/cjs/components/VerticalHeadingsTable/TableRow/TableRow.d.ts +12 -0
  25. package/cjs/components/VerticalHeadingsTable/TableRow/TableRow.js +22 -0
  26. package/cjs/components/VerticalHeadingsTable/TableRowWithDnd/TableRowWithDnd.d.ts +13 -0
  27. package/cjs/components/VerticalHeadingsTable/TableRowWithDnd/TableRowWithDnd.js +78 -0
  28. package/cjs/components/VerticalHeadingsTable/VerticalHeadingsTable.d.ts +13 -25
  29. package/cjs/components/VerticalHeadingsTable/VerticalHeadingsTable.js +14 -49
  30. package/cjs/components/VerticalHeadingsTable/helpers.d.ts +6 -0
  31. package/cjs/components/VerticalHeadingsTable/helpers.js +13 -0
  32. package/cjs/components/VerticalHeadingsTable/types.d.ts +19 -0
  33. package/cjs/components/VerticalHeadingsTable/types.js +8 -0
  34. package/cjs/components/attributes/PivotingAttributes/styles.d.ts +1 -1
  35. package/cjs/components/attributes/editMode/MoreAttributesButton/styles.d.ts +1 -1
  36. package/cjs/components/crosswalks/CrosswalkDragLayer/styles.d.ts +1 -1
  37. package/cjs/components/editors/DateEditor/styles.d.ts +1 -1
  38. package/cjs/components/workflow/components/AddWorkflowButton/styles.d.ts +1 -1
  39. package/cjs/hooks/index.d.ts +1 -0
  40. package/cjs/hooks/index.js +3 -1
  41. package/cjs/hooks/useSavedStateForEntityType.d.ts +14 -0
  42. package/cjs/hooks/useSavedStateForEntityType.js +47 -0
  43. package/esm/components/AttributeListItem/styles.d.ts +1 -1
  44. package/esm/components/ModeSwitcher/styles.d.ts +1 -1
  45. package/esm/components/PotentialMatchReviewCard/styles.d.ts +1 -1
  46. package/esm/components/ReltioMap/MapControls/TopRightMapControls/styles.d.ts +1 -1
  47. package/esm/components/SearchInput/styles.d.ts +1 -1
  48. package/esm/components/SmallIconButton/SmallIconButton.d.ts +1 -1
  49. package/esm/components/SmallIconButton/index.d.ts +2 -2
  50. package/esm/components/VerticalHeadingsTable/TableCell/TableCell.d.ts +10 -0
  51. package/esm/components/VerticalHeadingsTable/TableCell/TableCell.js +8 -0
  52. package/esm/components/VerticalHeadingsTable/TableCellWithDnd/TableCellWithDnd.d.ts +13 -0
  53. package/esm/components/VerticalHeadingsTable/TableCellWithDnd/TableCellWithDnd.js +63 -0
  54. package/esm/components/VerticalHeadingsTable/TableCellWithDnd/styles.d.ts +1 -0
  55. package/esm/components/VerticalHeadingsTable/TableCellWithDnd/styles.js +26 -0
  56. package/esm/components/VerticalHeadingsTable/TableColumnDragLayer/TableColumnDragLayer.d.ts +6 -0
  57. package/esm/components/VerticalHeadingsTable/TableColumnDragLayer/TableColumnDragLayer.js +33 -0
  58. package/esm/components/VerticalHeadingsTable/TableColumnDragLayer/TableColumnDragPreview.d.ts +12 -0
  59. package/esm/components/VerticalHeadingsTable/TableColumnDragLayer/TableColumnDragPreview.js +9 -0
  60. package/esm/components/VerticalHeadingsTable/TableColumnDragLayer/styles.d.ts +1 -0
  61. package/esm/components/VerticalHeadingsTable/TableColumnDragLayer/styles.js +12 -0
  62. package/esm/components/VerticalHeadingsTable/TableHeadCell/TableHeadCell.d.ts +16 -0
  63. package/esm/components/VerticalHeadingsTable/TableHeadCell/TableHeadCell.js +24 -0
  64. package/esm/components/VerticalHeadingsTable/TableHeadCell/styles.d.ts +1 -0
  65. package/esm/components/VerticalHeadingsTable/TableHeadCell/styles.js +25 -0
  66. package/esm/components/VerticalHeadingsTable/TableRow/TableRow.d.ts +12 -0
  67. package/esm/components/VerticalHeadingsTable/TableRow/TableRow.js +15 -0
  68. package/esm/components/VerticalHeadingsTable/TableRowWithDnd/TableRowWithDnd.d.ts +13 -0
  69. package/esm/components/VerticalHeadingsTable/TableRowWithDnd/TableRowWithDnd.js +55 -0
  70. package/esm/components/VerticalHeadingsTable/VerticalHeadingsTable.d.ts +13 -25
  71. package/esm/components/VerticalHeadingsTable/VerticalHeadingsTable.js +15 -47
  72. package/esm/components/VerticalHeadingsTable/helpers.d.ts +6 -0
  73. package/esm/components/VerticalHeadingsTable/helpers.js +8 -0
  74. package/esm/components/VerticalHeadingsTable/types.d.ts +19 -0
  75. package/esm/components/VerticalHeadingsTable/types.js +5 -0
  76. package/esm/components/attributes/PivotingAttributes/styles.d.ts +1 -1
  77. package/esm/components/attributes/editMode/MoreAttributesButton/styles.d.ts +1 -1
  78. package/esm/components/crosswalks/CrosswalkDragLayer/styles.d.ts +1 -1
  79. package/esm/components/editors/DateEditor/styles.d.ts +1 -1
  80. package/esm/components/workflow/components/AddWorkflowButton/styles.d.ts +1 -1
  81. package/esm/hooks/index.d.ts +1 -0
  82. package/esm/hooks/index.js +1 -0
  83. package/esm/hooks/useSavedStateForEntityType.d.ts +14 -0
  84. package/esm/hooks/useSavedStateForEntityType.js +43 -0
  85. package/package.json +3 -3
@@ -1,50 +1,18 @@
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, { memo } from 'react';
13
- import PropTypes from 'prop-types';
14
- var DefaultHeadCellRenderer = function (_a) {
15
- var label = _a.label;
16
- return label || null;
17
- };
18
- var DefaultCellRenderer = function (_a) {
19
- var value = _a.value;
20
- return value || null;
21
- };
1
+ import React, { memo, useRef } from 'react';
2
+ import { TableRow } from './TableRow/TableRow';
3
+ import { TableRowWithDnd } from './TableRowWithDnd/TableRowWithDnd';
4
+ import { TableColumnDragLayer } from './TableColumnDragLayer/TableColumnDragLayer';
22
5
  var VerticalHeadingsTable = function (_a) {
23
- var className = _a.className, rowsData = _a.rowsData, columnsData = _a.columnsData, _b = _a.theadRowsNumber, theadRowsNumber = _b === void 0 ? 0 : _b, setHoveredColumn = _a.setHoveredColumn, resetHoveredColumn = _a.resetHoveredColumn;
24
- var renderRow = function (rowData) {
25
- var CellRenderer = rowData.cellRenderer || DefaultCellRenderer;
26
- var HeadCellRenderer = rowData.headCellRenderer || DefaultHeadCellRenderer;
27
- return (React.createElement("tr", { key: rowData.id },
28
- React.createElement("th", { key: rowData.id },
29
- React.createElement(HeadCellRenderer, __assign({}, rowData))),
30
- columnsData.map(function (columnValue, index) { return (React.createElement("td", { key: index, onMouseOver: function () { return setHoveredColumn(columnValue); }, onMouseLeave: resetHoveredColumn },
31
- React.createElement(CellRenderer, { value: columnValue[rowData.id], columnValue: columnValue, rowData: rowData }))); })));
32
- };
33
- return (React.createElement("table", { className: className },
34
- theadRowsNumber > 0 && React.createElement("thead", null, rowsData.slice(0, theadRowsNumber).map(renderRow)),
35
- React.createElement("tbody", null, rowsData.slice(theadRowsNumber).map(renderRow))));
36
- };
37
- VerticalHeadingsTable.propTypes = {
38
- rowsData: PropTypes.arrayOf(PropTypes.shape({
39
- id: PropTypes.string,
40
- label: PropTypes.string,
41
- headCellRenderer: PropTypes.func,
42
- cellRenderer: PropTypes.func
43
- })),
44
- columnsData: PropTypes.arrayOf(PropTypes.object),
45
- theadRowsNumber: PropTypes.number,
46
- className: PropTypes.string,
47
- setHoveredColumn: PropTypes.func,
48
- resetHoveredColumn: PropTypes.func
6
+ var _b;
7
+ var className = _a.className, rowsData = _a.rowsData, columnsData = _a.columnsData, _c = _a.theadRowsNumber, theadRowsNumber = _c === void 0 ? 0 : _c, onMoveRow = _a.onMoveRow, onMoveColumn = _a.onMoveColumn, setHoveredColumn = _a.setHoveredColumn, resetHoveredColumn = _a.resetHoveredColumn;
8
+ var tableRef = useRef(null);
9
+ var tableHeight = (_b = tableRef === null || tableRef === void 0 ? void 0 : tableRef.current) === null || _b === void 0 ? void 0 : _b.offsetHeight;
10
+ return (React.createElement(React.Fragment, null,
11
+ React.createElement(TableColumnDragLayer, { columnHeight: tableHeight }),
12
+ React.createElement("table", { ref: tableRef, className: className },
13
+ theadRowsNumber > 0 && (React.createElement("thead", null, rowsData.slice(0, theadRowsNumber).map(function (rowData, index) { return (React.createElement(TableRow, { key: rowData.id, rowData: rowData, columnsData: columnsData, index: index, onMoveColumn: onMoveColumn, setHoveredColumn: setHoveredColumn, resetHoveredColumn: resetHoveredColumn })); }))),
14
+ React.createElement("tbody", null, rowsData.slice(theadRowsNumber).map(function (rowData, index) {
15
+ return onMoveRow ? (React.createElement(TableRowWithDnd, { key: rowData.id, index: index + theadRowsNumber, rowData: rowData, columnsData: columnsData, onMoveRow: onMoveRow, onMoveColumn: onMoveColumn, setHoveredColumn: setHoveredColumn, resetHoveredColumn: resetHoveredColumn })) : (React.createElement(TableRow, { key: rowData.id, index: index + theadRowsNumber, rowData: rowData, columnsData: columnsData, onMoveColumn: onMoveColumn, setHoveredColumn: setHoveredColumn, resetHoveredColumn: resetHoveredColumn }));
16
+ })))));
49
17
  };
50
18
  export default memo(VerticalHeadingsTable);
@@ -0,0 +1,6 @@
1
+ export declare const DefaultCellRenderer: ({ value }: {
2
+ value: any;
3
+ }) => any;
4
+ export declare const DefaultHeadCellRenderer: ({ label }: {
5
+ label: any;
6
+ }) => any;
@@ -0,0 +1,8 @@
1
+ export var DefaultCellRenderer = function (_a) {
2
+ var value = _a.value;
3
+ return value || null;
4
+ };
5
+ export var DefaultHeadCellRenderer = function (_a) {
6
+ var label = _a.label;
7
+ return label || null;
8
+ };
@@ -0,0 +1,19 @@
1
+ /// <reference types="react" />
2
+ export declare enum DndItemTypes {
3
+ Column = "Column",
4
+ Row = "Row"
5
+ }
6
+ export declare type RowData = {
7
+ id: string;
8
+ label: string;
9
+ cellRenderer?: (props: {
10
+ value: unknown;
11
+ }) => JSX.Element;
12
+ headCellRenderer?: (props: Pick<RowData, 'label' | 'attributeType'>) => JSX.Element;
13
+ [key: string]: unknown;
14
+ };
15
+ export declare type ColumnData = {
16
+ id: string;
17
+ isDraggable?: boolean;
18
+ [key: string]: any;
19
+ };
@@ -0,0 +1,5 @@
1
+ export var DndItemTypes;
2
+ (function (DndItemTypes) {
3
+ DndItemTypes["Column"] = "Column";
4
+ DndItemTypes["Row"] = "Row";
5
+ })(DndItemTypes || (DndItemTypes = {}));
@@ -1,2 +1,2 @@
1
- export declare const useStyles: (props?: any) => import("@material-ui/core/styles/withStyles").ClassNameMap<"content" | "title" | "body" | "entityTypeLabel" | "icon" | "footer" | "header" | "entityLabel" | "container" | "divider" | "headerCount" | "profileIcon" | "entityContainer" | "seeAllButton">;
1
+ export declare const useStyles: (props?: any) => import("@material-ui/core/styles/withStyles").ClassNameMap<"content" | "title" | "body" | "icon" | "entityTypeLabel" | "footer" | "header" | "entityLabel" | "container" | "divider" | "headerCount" | "profileIcon" | "entityContainer" | "seeAllButton">;
2
2
  export declare const usePivotingTooltipStyles: (props?: any) => import("@material-ui/core/styles/withStyles").ClassNameMap<"tooltip" | "arrow">;
@@ -1 +1 @@
1
- export const useStyles: (props?: any) => import("@material-ui/core/styles/withStyles").ClassNameMap<"dense" | "icon" | "buttonLabel" | "moreButton" | "moreAttributes" | "popupContainer" | "moreAttributesPopup">;
1
+ export const useStyles: (props?: any) => import("@material-ui/core/styles/withStyles").ClassNameMap<"icon" | "dense" | "buttonLabel" | "moreButton" | "moreAttributes" | "popupContainer" | "moreAttributesPopup">;
@@ -1 +1 @@
1
- export declare const useStyles: (props?: any) => import("@material-ui/core/styles/withStyles").ClassNameMap<"sourceIcon" | "dragLayer" | "crosswalkPreview" | "sourceLabel">;
1
+ export declare const useStyles: (props?: any) => import("@material-ui/core/styles/withStyles").ClassNameMap<"dragLayer" | "sourceIcon" | "crosswalkPreview" | "sourceLabel">;
@@ -1 +1 @@
1
- export declare const useStyles: (props?: any) => import("@material-ui/core/styles/withStyles").ClassNameMap<"underline" | "icon" | "inputLabel" | "iconButtonRoot" | "adornedEnd" | "adornmentPositionEnd" | "inputRoot">;
1
+ export declare const useStyles: (props?: any) => import("@material-ui/core/styles/withStyles").ClassNameMap<"icon" | "underline" | "inputLabel" | "iconButtonRoot" | "adornedEnd" | "adornmentPositionEnd" | "inputRoot">;
@@ -1 +1 @@
1
- export declare const useStyles: (props?: any) => import("@material-ui/core/styles/withStyles").ClassNameMap<"button" | "icon" | "buttonLabel">;
1
+ export declare const useStyles: (props?: any) => import("@material-ui/core/styles/withStyles").ClassNameMap<"icon" | "button" | "buttonLabel">;
@@ -21,4 +21,5 @@ export { useMarkAsNotMatchRequest } from './useMarkAsNotMatchRequest';
21
21
  export { useCustomScripts } from './useCustomScripts';
22
22
  export { useEditableConnection } from './useEditableConnection';
23
23
  export { useReadableSearchState } from './useReadableSearchState';
24
+ export { useSavedStateForEntityType } from './useSavedStateForEntityType';
24
25
  export { useSnackbar } from './useSnackbar';
@@ -20,4 +20,5 @@ export { useMarkAsNotMatchRequest } from './useMarkAsNotMatchRequest';
20
20
  export { useCustomScripts } from './useCustomScripts';
21
21
  export { useEditableConnection } from './useEditableConnection';
22
22
  export { useReadableSearchState } from './useReadableSearchState';
23
+ export { useSavedStateForEntityType } from './useSavedStateForEntityType';
23
24
  export { useSnackbar } from './useSnackbar';
@@ -0,0 +1,14 @@
1
+ declare type SavedState<T> = {
2
+ [entityType: string]: T;
3
+ };
4
+ declare type Props<T> = {
5
+ getSavedState: () => Promise<SavedState<T>>;
6
+ saveState: (state: SavedState<T>) => void;
7
+ entityTypeUri: string;
8
+ };
9
+ export declare const useSavedStateForEntityType: <T>({ getSavedState, saveState, entityTypeUri }: Props<T>) => {
10
+ isLoaded: boolean;
11
+ savedState: T;
12
+ updateSavedState: (stateToSave: T) => void;
13
+ };
14
+ export {};
@@ -0,0 +1,43 @@
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 { useEffect, useState } from 'react';
13
+ import { useDidUpdateEffect } from './useDidUpdateEffect';
14
+ export var useSavedStateForEntityType = function (_a) {
15
+ var getSavedState = _a.getSavedState, saveState = _a.saveState, entityTypeUri = _a.entityTypeUri;
16
+ var _b = useState({}), savedState = _b[0], setSavedState = _b[1];
17
+ var _c = useState(null), changedState = _c[0], setChangedState = _c[1];
18
+ var _d = useState(false), isLoaded = _d[0], setIsLoaded = _d[1];
19
+ var saveChangesLocallyForPrevEntityType = function () {
20
+ if (changedState) {
21
+ setSavedState(__assign(__assign({}, savedState), changedState));
22
+ setChangedState(null);
23
+ }
24
+ };
25
+ useDidUpdateEffect(saveChangesLocallyForPrevEntityType, [entityTypeUri]);
26
+ var updateSavedState = function (stateToSave) {
27
+ var _a;
28
+ var changedState = (_a = {},
29
+ _a[entityTypeUri] = stateToSave,
30
+ _a);
31
+ setChangedState(changedState);
32
+ saveState(__assign(__assign({}, savedState), changedState));
33
+ };
34
+ useEffect(function () {
35
+ getSavedState()
36
+ .then(function (savedState) {
37
+ setSavedState(savedState || {});
38
+ })
39
+ .then(function (_) { return setIsLoaded(true); })
40
+ .catch(function (_) { return setIsLoaded(true); });
41
+ }, []); // eslint-disable-line
42
+ return { isLoaded: isLoaded, savedState: savedState[entityTypeUri], updateSavedState: updateSavedState };
43
+ };
package/package.json CHANGED
@@ -1,14 +1,14 @@
1
1
  {
2
2
  "name": "@reltio/components",
3
- "version": "1.4.1109",
3
+ "version": "1.4.1112",
4
4
  "license": "SEE LICENSE IN LICENSE FILE",
5
5
  "main": "./cjs/index.js",
6
6
  "module": "./esm/index.js",
7
7
  "dependencies": {
8
8
  "@date-io/moment": "^1.3.5",
9
9
  "@react-google-maps/api": "2.7.0",
10
- "@reltio/mdm-module": "^1.4.1109",
11
- "@reltio/mdm-sdk": "^1.4.1109",
10
+ "@reltio/mdm-module": "^1.4.1112",
11
+ "@reltio/mdm-sdk": "^1.4.1112",
12
12
  "classnames": "^2.2.5",
13
13
  "d3-cloud": "^1.2.5",
14
14
  "d3-geo": "^2.0.1",