@reltio/components 1.4.2040 → 1.4.2042
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/BasicAttributeSelector/BasicAttributeSelector.js +4 -2
- package/BasicAttributeSelector/constants.d.ts +1 -0
- package/BasicAttributeSelector/constants.js +1 -0
- package/SelectAttributesList/SelectAttributesList.js +2 -3
- package/SelectAttributesList/SelectAttributesList.module.css.js +9 -0
- package/cjs/BasicAttributeSelector/BasicAttributeSelector.js +3 -1
- package/cjs/BasicAttributeSelector/constants.d.ts +1 -0
- package/cjs/BasicAttributeSelector/constants.js +2 -1
- package/cjs/SelectAttributesList/SelectAttributesList.js +3 -4
- package/cjs/SelectAttributesList/SelectAttributesList.module.css.js +9 -0
- package/cjs/constants/theme.d.ts +4 -0
- package/cjs/constants/theme.js +5 -1
- package/cjs/hooks/useMatchesColumnsData/useMatchesColumnsData.d.ts +2 -1
- package/cjs/hooks/useMatchesColumnsData/useMatchesColumnsData.js +3 -3
- package/constants/theme.d.ts +4 -0
- package/constants/theme.js +5 -1
- package/hooks/useMatchesColumnsData/useMatchesColumnsData.d.ts +2 -1
- package/hooks/useMatchesColumnsData/useMatchesColumnsData.js +3 -3
- package/package.json +1 -1
- package/SelectAttributesList/styles.d.ts +0 -1
- package/SelectAttributesList/styles.js +0 -13
- package/cjs/SelectAttributesList/styles.d.ts +0 -1
- package/cjs/SelectAttributesList/styles.js +0 -16
|
@@ -8,7 +8,7 @@ import { AttributeTitle } from './components/AttributeTitle';
|
|
|
8
8
|
import { SelectAttributesList } from '../SelectAttributesList';
|
|
9
9
|
import { flattenGroupedItemsData } from '../VirtualGroupedList';
|
|
10
10
|
import { filterSelectedAttributes, getAttributeIndex, getContainerWidth, getOnEnterHandler, prepareGroupsForSelectAttributeList } from './helpers';
|
|
11
|
-
import { ATTRIBUTES_LIST_WIDTH, ATTRIBUTES_LIST_HEIGHT, ATTRIBUTES_POPUP_HEIGHT } from './constants';
|
|
11
|
+
import { ATTRIBUTES_LIST_WIDTH, ATTRIBUTES_LIST_HEIGHT, ATTRIBUTES_POPUP_HEIGHT, ATTRIBUTES_LIST_MAX_WIDTH } from './constants';
|
|
12
12
|
import { useStyles } from './styles';
|
|
13
13
|
var BasicAttributeSelector = function (_a) {
|
|
14
14
|
var className = _a.className, itemsGroups = _a.itemsGroups, value = _a.value, getLabel = _a.getLabel, onSelect = _a.onSelect, _b = _a.onRestoreFocus, onRestoreFocus = _b === void 0 ? identity : _b, _c = _a.onOpenPopup, onOpenPopup = _c === void 0 ? identity : _c, _d = _a.disableRestoreFocus, disableRestoreFocus = _d === void 0 ? false : _d, _e = _a.disableEnforceFocus, disableEnforceFocus = _e === void 0 ? false : _e, _f = _a.single, single = _f === void 0 ? false : _f, _g = _a.ungroup, ungroup = _g === void 0 ? false : _g, _h = _a.disabled, disabled = _h === void 0 ? false : _h, _j = _a.hideCheckBox, hideCheckBox = _j === void 0 ? false : _j;
|
|
@@ -28,7 +28,9 @@ var BasicAttributeSelector = function (_a) {
|
|
|
28
28
|
var items = useMemo(function () {
|
|
29
29
|
return pipe(when(always(ungroup), chain(pipe(prop('items'), flatten, map(pick(['item', 'level']))))), flattenGroupedItemsData)(filteredItemsGroups);
|
|
30
30
|
}, [ungroup, filteredItemsGroups]);
|
|
31
|
-
var containerWidth = useMemo(function () {
|
|
31
|
+
var containerWidth = useMemo(function () {
|
|
32
|
+
return Math.min(Math.max(getContainerWidth(filteredItemsGroups), ATTRIBUTES_LIST_WIDTH), ATTRIBUTES_LIST_MAX_WIDTH);
|
|
33
|
+
}, [filteredItemsGroups]);
|
|
32
34
|
var handleOnClose = pipe(tap(pipe(clearSelectedAttributes, clearFilterText, closePopup)), onRestoreFocus);
|
|
33
35
|
var searchInputRef = useRef();
|
|
34
36
|
var onListItemClick = useCallback(function (attribute, checked) {
|
|
@@ -28,17 +28,16 @@ import { Highlighter } from '../Highlighter';
|
|
|
28
28
|
import { AttributeGroupIcon } from '../AttributeGroupIcon';
|
|
29
29
|
import { useMdmMetadata } from '../contexts/MdmModuleContext';
|
|
30
30
|
import { checkAttributeIncludes } from '../helpers/attributesView';
|
|
31
|
-
import
|
|
31
|
+
import styles from './SelectAttributesList.module.css';
|
|
32
32
|
var ITEM_HEIGHT = 28;
|
|
33
33
|
var ITEM_GROUP_TITLE_HEIGHT = 40;
|
|
34
34
|
var SelectAttributesList = function (_a) {
|
|
35
35
|
var selectedAttributes = _a.selectedAttributes, onItemClick = _a.onItemClick, focusIndex = _a.focusIndex, hideCheckBox = _a.hideCheckBox, otherProps = __rest(_a, ["selectedAttributes", "onItemClick", "focusIndex", "hideCheckBox"]);
|
|
36
|
-
var styles = useStyles();
|
|
37
36
|
var metadata = useMdmMetadata();
|
|
38
37
|
var getItemSize = function (i, item) { return (item.items ? ITEM_GROUP_TITLE_HEIGHT : ITEM_HEIGHT); };
|
|
39
38
|
var renderGroupTitle = function (style, item) { return (React.createElement(ListItem, { component: 'div', className: styles.subHeader, style: style, key: "group-".concat(item.item.id) },
|
|
40
39
|
item.item.needGroupIcon && React.createElement(AttributeGroupIcon, { group: item.item, metadata: metadata }),
|
|
41
|
-
item.item.title)); };
|
|
40
|
+
React.createElement("div", { className: styles.subHeaderTitle }, item.item.title))); };
|
|
42
41
|
var renderItem = function (style, _a, index) {
|
|
43
42
|
var item = _a.item, level = _a.level, groupId = _a.groupId, groupName = _a.groupName;
|
|
44
43
|
var checked = checkAttributeIncludes(item, selectedAttributes);
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
const styles = {"subHeader":"SelectAttributesList-subHeader--3ac0v","subHeaderTitle":"SelectAttributesList-subHeaderTitle--Vazfd"};
|
|
2
|
+
if (typeof document !== 'undefined') {
|
|
3
|
+
const head = document.head || document.getElementsByTagName('head')[0]
|
|
4
|
+
const style = document.createElement('style');
|
|
5
|
+
style.type = 'text/css'
|
|
6
|
+
style.innerHTML = `.SelectAttributesList-subHeader--3ac0v{align-items:center;background-color:#f5f5f5;color:rgba(0,0,0,.84);display:flex;font-size:14px;font-weight:500;margin:0;padding:0 16px}.SelectAttributesList-subHeaderTitle--Vazfd{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}`;
|
|
7
|
+
head.appendChild(style);
|
|
8
|
+
}
|
|
9
|
+
export default styles;
|
|
@@ -56,7 +56,9 @@ var BasicAttributeSelector = function (_a) {
|
|
|
56
56
|
var items = (0, react_1.useMemo)(function () {
|
|
57
57
|
return (0, ramda_1.pipe)((0, ramda_1.when)((0, ramda_1.always)(ungroup), (0, ramda_1.chain)((0, ramda_1.pipe)((0, ramda_1.prop)('items'), ramda_1.flatten, (0, ramda_1.map)((0, ramda_1.pick)(['item', 'level']))))), VirtualGroupedList_1.flattenGroupedItemsData)(filteredItemsGroups);
|
|
58
58
|
}, [ungroup, filteredItemsGroups]);
|
|
59
|
-
var containerWidth = (0, react_1.useMemo)(function () {
|
|
59
|
+
var containerWidth = (0, react_1.useMemo)(function () {
|
|
60
|
+
return Math.min(Math.max((0, helpers_1.getContainerWidth)(filteredItemsGroups), constants_1.ATTRIBUTES_LIST_WIDTH), constants_1.ATTRIBUTES_LIST_MAX_WIDTH);
|
|
61
|
+
}, [filteredItemsGroups]);
|
|
60
62
|
var handleOnClose = (0, ramda_1.pipe)((0, ramda_1.tap)((0, ramda_1.pipe)(clearSelectedAttributes, clearFilterText, closePopup)), onRestoreFocus);
|
|
61
63
|
var searchInputRef = (0, react_1.useRef)();
|
|
62
64
|
var onListItemClick = (0, react_1.useCallback)(function (attribute, checked) {
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ATTRIBUTES_POPUP_HEIGHT = exports.ATTRIBUTES_LIST_WIDTH = exports.ATTRIBUTES_LIST_HEIGHT = void 0;
|
|
3
|
+
exports.ATTRIBUTES_POPUP_HEIGHT = exports.ATTRIBUTES_LIST_MAX_WIDTH = exports.ATTRIBUTES_LIST_WIDTH = exports.ATTRIBUTES_LIST_HEIGHT = void 0;
|
|
4
4
|
exports.ATTRIBUTES_LIST_HEIGHT = 400;
|
|
5
5
|
exports.ATTRIBUTES_LIST_WIDTH = 308;
|
|
6
|
+
exports.ATTRIBUTES_LIST_MAX_WIDTH = 620;
|
|
6
7
|
exports.ATTRIBUTES_POPUP_HEIGHT = 507;
|
|
@@ -56,17 +56,16 @@ var Highlighter_1 = require("../Highlighter");
|
|
|
56
56
|
var AttributeGroupIcon_1 = require("../AttributeGroupIcon");
|
|
57
57
|
var MdmModuleContext_1 = require("../contexts/MdmModuleContext");
|
|
58
58
|
var attributesView_1 = require("../helpers/attributesView");
|
|
59
|
-
var
|
|
59
|
+
var SelectAttributesList_module_css_1 = __importDefault(require("./SelectAttributesList.module.css"));
|
|
60
60
|
var ITEM_HEIGHT = 28;
|
|
61
61
|
var ITEM_GROUP_TITLE_HEIGHT = 40;
|
|
62
62
|
var SelectAttributesList = function (_a) {
|
|
63
63
|
var selectedAttributes = _a.selectedAttributes, onItemClick = _a.onItemClick, focusIndex = _a.focusIndex, hideCheckBox = _a.hideCheckBox, otherProps = __rest(_a, ["selectedAttributes", "onItemClick", "focusIndex", "hideCheckBox"]);
|
|
64
|
-
var styles = (0, styles_1.useStyles)();
|
|
65
64
|
var metadata = (0, MdmModuleContext_1.useMdmMetadata)();
|
|
66
65
|
var getItemSize = function (i, item) { return (item.items ? ITEM_GROUP_TITLE_HEIGHT : ITEM_HEIGHT); };
|
|
67
|
-
var renderGroupTitle = function (style, item) { return (react_1.default.createElement(ListItem_1.default, { component: 'div', className:
|
|
66
|
+
var renderGroupTitle = function (style, item) { return (react_1.default.createElement(ListItem_1.default, { component: 'div', className: SelectAttributesList_module_css_1.default.subHeader, style: style, key: "group-".concat(item.item.id) },
|
|
68
67
|
item.item.needGroupIcon && react_1.default.createElement(AttributeGroupIcon_1.AttributeGroupIcon, { group: item.item, metadata: metadata }),
|
|
69
|
-
item.item.title)); };
|
|
68
|
+
react_1.default.createElement("div", { className: SelectAttributesList_module_css_1.default.subHeaderTitle }, item.item.title))); };
|
|
70
69
|
var renderItem = function (style, _a, index) {
|
|
71
70
|
var item = _a.item, level = _a.level, groupId = _a.groupId, groupName = _a.groupName;
|
|
72
71
|
var checked = (0, attributesView_1.checkAttributeIncludes)(item, selectedAttributes);
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
const styles = {"subHeader":"SelectAttributesList-subHeader--3ac0v","subHeaderTitle":"SelectAttributesList-subHeaderTitle--Vazfd"};
|
|
2
|
+
if (typeof document !== 'undefined') {
|
|
3
|
+
const head = document.head || document.getElementsByTagName('head')[0]
|
|
4
|
+
const style = document.createElement('style');
|
|
5
|
+
style.type = 'text/css'
|
|
6
|
+
style.innerHTML = `.SelectAttributesList-subHeader--3ac0v{align-items:center;background-color:#f5f5f5;color:rgba(0,0,0,.84);display:flex;font-size:14px;font-weight:500;margin:0;padding:0 16px}.SelectAttributesList-subHeaderTitle--Vazfd{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}`;
|
|
7
|
+
head.appendChild(style);
|
|
8
|
+
}
|
|
9
|
+
module.exports = styles;
|
package/cjs/constants/theme.d.ts
CHANGED
package/cjs/constants/theme.js
CHANGED
|
@@ -2,11 +2,12 @@ import { Metadata } from '@reltio/mdm-sdk';
|
|
|
2
2
|
import { ColumnData, GroupedColumnsData } from '../../types/basicTable';
|
|
3
3
|
type MatchesColumnsDataProps<TColumnData> = {
|
|
4
4
|
defaultColumnsData: TColumnData[];
|
|
5
|
+
defaultVisibleColumns?: string[];
|
|
5
6
|
additionalColumnsData?: TColumnData[];
|
|
6
7
|
metadata: Metadata;
|
|
7
8
|
entityTypeUri: string;
|
|
8
9
|
};
|
|
9
|
-
export declare const useMatchesColumnsData: <TColumnData extends ColumnData>({ defaultColumnsData, additionalColumnsData, metadata, entityTypeUri }: MatchesColumnsDataProps<TColumnData>) => {
|
|
10
|
+
export declare const useMatchesColumnsData: <TColumnData extends ColumnData>({ defaultColumnsData, defaultVisibleColumns, additionalColumnsData, metadata, entityTypeUri }: MatchesColumnsDataProps<TColumnData>) => {
|
|
10
11
|
allColumnsData: TColumnData[];
|
|
11
12
|
groupedColumnsData: GroupedColumnsData<TColumnData>[];
|
|
12
13
|
defaultColumns: string[];
|
|
@@ -6,7 +6,7 @@ var ramda_1 = require("ramda");
|
|
|
6
6
|
var mdm_sdk_1 = require("@reltio/mdm-sdk");
|
|
7
7
|
var helpers_1 = require("./helpers");
|
|
8
8
|
var useMatchesColumnsData = function (_a) {
|
|
9
|
-
var defaultColumnsData = _a.defaultColumnsData, additionalColumnsData = _a.additionalColumnsData, metadata = _a.metadata, entityTypeUri = _a.entityTypeUri;
|
|
9
|
+
var defaultColumnsData = _a.defaultColumnsData, defaultVisibleColumns = _a.defaultVisibleColumns, additionalColumnsData = _a.additionalColumnsData, metadata = _a.metadata, entityTypeUri = _a.entityTypeUri;
|
|
10
10
|
return (0, react_1.useMemo)(function () {
|
|
11
11
|
var attrColumnsData = (0, helpers_1.getColumnsData)(metadata, entityTypeUri);
|
|
12
12
|
var allColumnsData = defaultColumnsData
|
|
@@ -14,8 +14,8 @@ var useMatchesColumnsData = function (_a) {
|
|
|
14
14
|
.concat(attrColumnsData);
|
|
15
15
|
var matchAttributes = (0, mdm_sdk_1.getEntityTypeMatchAttributes)(metadata, entityTypeUri);
|
|
16
16
|
var groupedColumnsData = (0, helpers_1.groupColumnsDataByMatchAttributes)(matchAttributes, allColumnsData);
|
|
17
|
-
var defaultColumns = (0, ramda_1.pipe)(helpers_1.getMatchAttrColumns, (0, ramda_1.
|
|
17
|
+
var defaultColumns = (0, ramda_1.pipe)(helpers_1.getMatchAttrColumns, (0, ramda_1.pluck)('id'), (0, ramda_1.concat)(defaultVisibleColumns || (0, ramda_1.pluck)('id', defaultColumnsData)))(matchAttributes, attrColumnsData);
|
|
18
18
|
return { allColumnsData: allColumnsData, groupedColumnsData: groupedColumnsData, defaultColumns: defaultColumns };
|
|
19
|
-
}, [defaultColumnsData, additionalColumnsData, metadata, entityTypeUri]);
|
|
19
|
+
}, [defaultColumnsData, additionalColumnsData, metadata, entityTypeUri, defaultVisibleColumns]);
|
|
20
20
|
};
|
|
21
21
|
exports.useMatchesColumnsData = useMatchesColumnsData;
|
package/constants/theme.d.ts
CHANGED
package/constants/theme.js
CHANGED
|
@@ -19,7 +19,11 @@ export var theme = {
|
|
|
19
19
|
disabled: 'rgba(0,0,0,0.26)',
|
|
20
20
|
hint: 'rgba(0,0,0,0.38)'
|
|
21
21
|
},
|
|
22
|
-
divider: 'rgba(0,0,0,0.38)'
|
|
22
|
+
divider: 'rgba(0,0,0,0.38)',
|
|
23
|
+
SnackbarContent: {
|
|
24
|
+
color: '#FFF',
|
|
25
|
+
bg: '#121212'
|
|
26
|
+
}
|
|
23
27
|
},
|
|
24
28
|
components: {
|
|
25
29
|
MuiButton: {
|
|
@@ -2,11 +2,12 @@ import { Metadata } from '@reltio/mdm-sdk';
|
|
|
2
2
|
import { ColumnData, GroupedColumnsData } from '../../types/basicTable';
|
|
3
3
|
type MatchesColumnsDataProps<TColumnData> = {
|
|
4
4
|
defaultColumnsData: TColumnData[];
|
|
5
|
+
defaultVisibleColumns?: string[];
|
|
5
6
|
additionalColumnsData?: TColumnData[];
|
|
6
7
|
metadata: Metadata;
|
|
7
8
|
entityTypeUri: string;
|
|
8
9
|
};
|
|
9
|
-
export declare const useMatchesColumnsData: <TColumnData extends ColumnData>({ defaultColumnsData, additionalColumnsData, metadata, entityTypeUri }: MatchesColumnsDataProps<TColumnData>) => {
|
|
10
|
+
export declare const useMatchesColumnsData: <TColumnData extends ColumnData>({ defaultColumnsData, defaultVisibleColumns, additionalColumnsData, metadata, entityTypeUri }: MatchesColumnsDataProps<TColumnData>) => {
|
|
10
11
|
allColumnsData: TColumnData[];
|
|
11
12
|
groupedColumnsData: GroupedColumnsData<TColumnData>[];
|
|
12
13
|
defaultColumns: string[];
|
|
@@ -3,7 +3,7 @@ import { concat, pipe, pluck } from 'ramda';
|
|
|
3
3
|
import { getEntityTypeMatchAttributes } from '@reltio/mdm-sdk';
|
|
4
4
|
import { getColumnsData, getMatchAttrColumns, groupColumnsDataByMatchAttributes } from './helpers';
|
|
5
5
|
export var useMatchesColumnsData = function (_a) {
|
|
6
|
-
var defaultColumnsData = _a.defaultColumnsData, additionalColumnsData = _a.additionalColumnsData, metadata = _a.metadata, entityTypeUri = _a.entityTypeUri;
|
|
6
|
+
var defaultColumnsData = _a.defaultColumnsData, defaultVisibleColumns = _a.defaultVisibleColumns, additionalColumnsData = _a.additionalColumnsData, metadata = _a.metadata, entityTypeUri = _a.entityTypeUri;
|
|
7
7
|
return useMemo(function () {
|
|
8
8
|
var attrColumnsData = getColumnsData(metadata, entityTypeUri);
|
|
9
9
|
var allColumnsData = defaultColumnsData
|
|
@@ -11,7 +11,7 @@ export var useMatchesColumnsData = function (_a) {
|
|
|
11
11
|
.concat(attrColumnsData);
|
|
12
12
|
var matchAttributes = getEntityTypeMatchAttributes(metadata, entityTypeUri);
|
|
13
13
|
var groupedColumnsData = groupColumnsDataByMatchAttributes(matchAttributes, allColumnsData);
|
|
14
|
-
var defaultColumns = pipe(getMatchAttrColumns,
|
|
14
|
+
var defaultColumns = pipe(getMatchAttrColumns, pluck('id'), concat(defaultVisibleColumns || pluck('id', defaultColumnsData)))(matchAttributes, attrColumnsData);
|
|
15
15
|
return { allColumnsData: allColumnsData, groupedColumnsData: groupedColumnsData, defaultColumns: defaultColumns };
|
|
16
|
-
}, [defaultColumnsData, additionalColumnsData, metadata, entityTypeUri]);
|
|
16
|
+
}, [defaultColumnsData, additionalColumnsData, metadata, entityTypeUri, defaultVisibleColumns]);
|
|
17
17
|
};
|
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare const useStyles: (props?: any) => import("@mui/styles").ClassNameMap<"subHeader">;
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { makeStyles } from '@mui/styles';
|
|
2
|
-
export var useStyles = makeStyles({
|
|
3
|
-
subHeader: {
|
|
4
|
-
backgroundColor: '#f5f5f5',
|
|
5
|
-
padding: '0 16px',
|
|
6
|
-
margin: 0,
|
|
7
|
-
display: 'flex',
|
|
8
|
-
alignItems: 'center',
|
|
9
|
-
color: 'rgba(0,0,0,0.84)',
|
|
10
|
-
fontSize: '14px',
|
|
11
|
-
fontWeight: 500
|
|
12
|
-
}
|
|
13
|
-
});
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare const useStyles: (props?: any) => import("@mui/styles").ClassNameMap<"subHeader">;
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.useStyles = void 0;
|
|
4
|
-
var styles_1 = require("@mui/styles");
|
|
5
|
-
exports.useStyles = (0, styles_1.makeStyles)({
|
|
6
|
-
subHeader: {
|
|
7
|
-
backgroundColor: '#f5f5f5',
|
|
8
|
-
padding: '0 16px',
|
|
9
|
-
margin: 0,
|
|
10
|
-
display: 'flex',
|
|
11
|
-
alignItems: 'center',
|
|
12
|
-
color: 'rgba(0,0,0,0.84)',
|
|
13
|
-
fontSize: '14px',
|
|
14
|
-
fontWeight: 500
|
|
15
|
-
}
|
|
16
|
-
});
|