@reltio/components 1.4.1434 → 1.4.1436
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/cjs/components/BasicTableView/BasicTable/helpers/dataHelpers.js +2 -1
- package/cjs/components/attributes/DescriptionIcon/DescriptionIcon.d.ts +31 -0
- package/cjs/components/attributes/DescriptionIcon/DescriptionIcon.js +51 -0
- package/cjs/components/attributes/DescriptionIcon/index.d.ts +1 -0
- package/cjs/components/attributes/DescriptionIcon/index.js +8 -0
- package/cjs/components/attributes/DescriptionIcon/styles.d.ts +1 -0
- package/cjs/components/attributes/DescriptionIcon/styles.js +24 -0
- package/cjs/components/attributes/OvIcon/OvIcon.js +1 -1
- package/cjs/components/attributes/editMode/AttributesPager/AttributeRenderer.js +3 -1
- package/cjs/components/attributes/editMode/AttributesPager/styles.d.ts +1 -1
- package/cjs/components/attributes/editMode/AttributesPager/styles.js +3 -0
- package/cjs/components/attributes/readMode/AttributesPager/MultiLineRenderer.js +3 -1
- package/cjs/components/attributes/readMode/AttributesPager/OneLineRenderer.js +3 -1
- package/cjs/components/attributes/readMode/AttributesPager/styles.d.ts +2 -2
- package/cjs/components/attributes/readMode/AttributesPager/styles.js +5 -0
- package/cjs/components/index.d.ts +1 -0
- package/cjs/components/index.js +5 -3
- package/cjs/components/workflow/hooks/useWorkflowTasks.js +13 -1
- package/cjs/contexts/FeaturesContext/index.d.ts +6 -0
- package/cjs/contexts/FeaturesContext/index.js +9 -0
- package/cjs/contexts/index.d.ts +1 -0
- package/cjs/contexts/index.js +3 -1
- package/cjs/hooks/useAPI/API.js +14 -9
- package/cjs/hooks/useAPI/helpers.d.ts +2 -1
- package/cjs/hooks/useAPI/helpers.js +2 -2
- package/cjs/hooks/useAPI/useAPI.d.ts +1 -1
- package/cjs/hooks/useAPI/useAPI.js +49 -32
- package/cjs/hooks/useCustomScripts.js +37 -38
- package/cjs/icons/Description.d.ts +3 -0
- package/cjs/icons/Description.js +22 -0
- package/cjs/icons/index.d.ts +6 -3
- package/cjs/icons/index.js +14 -8
- package/esm/components/BasicTableView/BasicTable/helpers/dataHelpers.js +2 -1
- package/esm/components/attributes/DescriptionIcon/DescriptionIcon.d.ts +31 -0
- package/esm/components/attributes/DescriptionIcon/DescriptionIcon.js +22 -0
- package/esm/components/attributes/DescriptionIcon/index.d.ts +1 -0
- package/esm/components/attributes/DescriptionIcon/index.js +1 -0
- package/esm/components/attributes/DescriptionIcon/styles.d.ts +1 -0
- package/esm/components/attributes/DescriptionIcon/styles.js +21 -0
- package/esm/components/attributes/OvIcon/OvIcon.js +1 -1
- package/esm/components/attributes/editMode/AttributesPager/AttributeRenderer.js +3 -1
- package/esm/components/attributes/editMode/AttributesPager/styles.d.ts +1 -1
- package/esm/components/attributes/editMode/AttributesPager/styles.js +3 -0
- package/esm/components/attributes/readMode/AttributesPager/MultiLineRenderer.js +3 -1
- package/esm/components/attributes/readMode/AttributesPager/OneLineRenderer.js +3 -1
- package/esm/components/attributes/readMode/AttributesPager/styles.d.ts +2 -2
- package/esm/components/attributes/readMode/AttributesPager/styles.js +5 -0
- package/esm/components/index.d.ts +1 -0
- package/esm/components/index.js +1 -0
- package/esm/components/workflow/hooks/useWorkflowTasks.js +13 -1
- package/esm/contexts/FeaturesContext/index.d.ts +6 -0
- package/esm/contexts/FeaturesContext/index.js +3 -0
- package/esm/contexts/index.d.ts +1 -0
- package/esm/contexts/index.js +1 -0
- package/esm/hooks/useAPI/API.js +14 -9
- package/esm/hooks/useAPI/helpers.d.ts +2 -1
- package/esm/hooks/useAPI/helpers.js +2 -2
- package/esm/hooks/useAPI/useAPI.d.ts +1 -1
- package/esm/hooks/useAPI/useAPI.js +52 -35
- package/esm/hooks/useCustomScripts.js +38 -39
- package/esm/icons/Description.d.ts +3 -0
- package/esm/icons/Description.js +17 -0
- package/esm/icons/index.d.ts +6 -3
- package/esm/icons/index.js +6 -3
- package/package.json +3 -3
|
@@ -90,10 +90,11 @@ var getTableRowsData = function (rowValues, columnsData, renderRowCell, getRowCe
|
|
|
90
90
|
exports.getTableRowsData = getTableRowsData;
|
|
91
91
|
var getTableHeadData = function (columnsData, filters, onFilter) {
|
|
92
92
|
return columnsData.map(function (_a) {
|
|
93
|
-
var id = _a.id, label = _a.label, sortable = _a.sortable, _b = _a.filterable, filterable = _b === void 0 ? true : _b, resizable = _a.resizable, draggable = _a.draggable, _c = _a.autoResize, autoResize = _c === void 0 ? true : _c, initialWidth = _a.initialWidth, minWidth = _a.minWidth, dataTypeDefinition = _a.dataTypeDefinition, filterOptions = _a.filterOptions, _d = _a.headCellRenderer, headCellRenderer = _d === void 0 ? (0, withFilterAtBottom_1.default)(DefaultHeadCellRenderer_1.default) : _d;
|
|
93
|
+
var id = _a.id, label = _a.label, description = _a.description, sortable = _a.sortable, _b = _a.filterable, filterable = _b === void 0 ? true : _b, resizable = _a.resizable, draggable = _a.draggable, _c = _a.autoResize, autoResize = _c === void 0 ? true : _c, initialWidth = _a.initialWidth, minWidth = _a.minWidth, dataTypeDefinition = _a.dataTypeDefinition, filterOptions = _a.filterOptions, _d = _a.headCellRenderer, headCellRenderer = _d === void 0 ? (0, withFilterAtBottom_1.default)(DefaultHeadCellRenderer_1.default) : _d;
|
|
94
94
|
return ({
|
|
95
95
|
id: id,
|
|
96
96
|
label: label,
|
|
97
|
+
description: description,
|
|
97
98
|
sortable: sortable,
|
|
98
99
|
resizable: resizable,
|
|
99
100
|
draggable: draggable,
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
export declare const ChipWithTooltip: React.ForwardRefExoticComponent<import("prop-types").InferPropsInner<Pick<{
|
|
3
|
+
tooltipTitle: import("prop-types").Requireable<import("prop-types").ReactNodeLike>;
|
|
4
|
+
tooltipPlacement: import("prop-types").Requireable<string>;
|
|
5
|
+
showForDisabled: import("prop-types").Requireable<boolean>;
|
|
6
|
+
}, never>> & Partial<import("prop-types").InferPropsInner<Pick<{
|
|
7
|
+
tooltipTitle: import("prop-types").Requireable<import("prop-types").ReactNodeLike>;
|
|
8
|
+
tooltipPlacement: import("prop-types").Requireable<string>;
|
|
9
|
+
showForDisabled: import("prop-types").Requireable<boolean>;
|
|
10
|
+
}, "tooltipTitle" | "tooltipPlacement" | "showForDisabled">>> & {
|
|
11
|
+
avatar?: React.ReactElement<any, string | React.JSXElementConstructor<any>>;
|
|
12
|
+
children?: null;
|
|
13
|
+
clickable?: boolean;
|
|
14
|
+
color?: "default" | "primary" | "secondary";
|
|
15
|
+
deleteIcon?: React.ReactElement<any, string | React.JSXElementConstructor<any>>;
|
|
16
|
+
disabled?: boolean;
|
|
17
|
+
icon?: React.ReactElement<any, string | React.JSXElementConstructor<any>>;
|
|
18
|
+
label?: React.ReactNode;
|
|
19
|
+
onDelete?: (event: any) => void;
|
|
20
|
+
size?: "medium" | "small";
|
|
21
|
+
variant?: "default" | "outlined";
|
|
22
|
+
} & import("@material-ui/core/OverridableComponent").CommonProps<import("@material-ui/core/Chip").ChipTypeMap<{}, "div">> & Pick<Pick<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "key" | keyof React.HTMLAttributes<HTMLDivElement>> & {
|
|
23
|
+
ref?: React.Ref<HTMLDivElement>;
|
|
24
|
+
}, "translate" | "hidden" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "id" | "lang" | "placeholder" | "slot" | "spellCheck" | "tabIndex" | "title" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "ref" | "key">>;
|
|
25
|
+
declare type Props = {
|
|
26
|
+
className?: string;
|
|
27
|
+
description?: string;
|
|
28
|
+
showDescription?: boolean;
|
|
29
|
+
};
|
|
30
|
+
declare const DescriptionIcon: ({ className, description }: Props) => JSX.Element;
|
|
31
|
+
export default DescriptionIcon;
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
|
+
};
|
|
28
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
+
exports.ChipWithTooltip = void 0;
|
|
30
|
+
var react_1 = __importStar(require("react"));
|
|
31
|
+
var classnames_1 = __importDefault(require("classnames"));
|
|
32
|
+
var Chip_1 = __importDefault(require("@material-ui/core/Chip"));
|
|
33
|
+
var contexts_1 = require("../../../contexts");
|
|
34
|
+
var HOCs_1 = require("../../../HOCs");
|
|
35
|
+
var Description_1 = __importDefault(require("../../../icons/Description"));
|
|
36
|
+
var styles_1 = require("./styles");
|
|
37
|
+
exports.ChipWithTooltip = (0, HOCs_1.withTooltip)(Chip_1.default);
|
|
38
|
+
var DescriptionIcon = function (_a) {
|
|
39
|
+
var className = _a.className, description = _a.description;
|
|
40
|
+
var showDescription = (0, react_1.useContext)(contexts_1.FeaturesContext).showDescription;
|
|
41
|
+
var styles = (0, styles_1.useStyles)();
|
|
42
|
+
if (!description || !showDescription) {
|
|
43
|
+
return null;
|
|
44
|
+
}
|
|
45
|
+
return (react_1.default.createElement(exports.ChipWithTooltip, { tooltipTitle: description, tooltipPlacement: "bottom", icon: react_1.default.createElement(Description_1.default, null), classes: {
|
|
46
|
+
root: (0, classnames_1.default)(styles.container, className),
|
|
47
|
+
label: styles.label,
|
|
48
|
+
icon: styles.icon
|
|
49
|
+
} }));
|
|
50
|
+
};
|
|
51
|
+
exports.default = DescriptionIcon;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default } from "./DescriptionIcon";
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var DescriptionIcon_1 = require("./DescriptionIcon");
|
|
8
|
+
Object.defineProperty(exports, "default", { enumerable: true, get: function () { return __importDefault(DescriptionIcon_1).default; } });
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export const useStyles: (props?: any) => import("@material-ui/core/styles/withStyles").ClassNameMap<"icon" | "label" | "container">;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.useStyles = void 0;
|
|
4
|
+
var styles_1 = require("@material-ui/core/styles");
|
|
5
|
+
exports.useStyles = (0, styles_1.makeStyles)(function () { return ({
|
|
6
|
+
container: {
|
|
7
|
+
height: '15px',
|
|
8
|
+
backgroundColor: 'transparent',
|
|
9
|
+
'&:hover': {
|
|
10
|
+
backgroundColor: 'transparent'
|
|
11
|
+
}
|
|
12
|
+
},
|
|
13
|
+
label: {
|
|
14
|
+
paddingLeft: '4px',
|
|
15
|
+
paddingRight: '4px',
|
|
16
|
+
fontSize: '10px',
|
|
17
|
+
lineHeight: '11px'
|
|
18
|
+
},
|
|
19
|
+
icon: {
|
|
20
|
+
width: '12px',
|
|
21
|
+
height: '12px',
|
|
22
|
+
marginRight: 0
|
|
23
|
+
}
|
|
24
|
+
}); });
|
|
@@ -53,7 +53,7 @@ var OvIcon = function (_a) {
|
|
|
53
53
|
var tooltipTitle = nonOvValues.length
|
|
54
54
|
? nonOvValues.map(function (value, i) { return (react_1.default.createElement("div", { key: i }, (0, mdm_sdk_1.isComplexAttribute)(attributeType) ? ((0, mdm_sdk_1.getLabel)(value.label)) : (react_1.default.createElement(DataTypeValue_1.default, { value: (0, mdm_sdk_1.getAttributeValue)(value), dataTypeDefinition: (0, mdm_sdk_1.getAttrDataTypeDefinition)(attributeType), rich: false })))); })
|
|
55
55
|
: null;
|
|
56
|
-
return (react_1.default.createElement(exports.ChipWithTooltip, { tooltipTitle: tooltipTitle, tooltipPlacement: "
|
|
56
|
+
return (react_1.default.createElement(exports.ChipWithTooltip, { tooltipTitle: tooltipTitle, tooltipPlacement: "bottom", label: "+ ".concat(nonOvTotal), variant: "outlined", onClick: onClick, classes: {
|
|
57
57
|
root: (0, classnames_1.default)(styles.container, className),
|
|
58
58
|
label: styles.label
|
|
59
59
|
} }));
|
|
@@ -43,13 +43,14 @@ var HOCs_1 = require("../../../../HOCs");
|
|
|
43
43
|
var PinnedAttributesContext_1 = require("../contexts/PinnedAttributesContext");
|
|
44
44
|
var hooks_1 = require("../../../../hooks");
|
|
45
45
|
var contexts_1 = require("../../../../contexts");
|
|
46
|
+
var DescriptionIcon_1 = __importDefault(require("../../DescriptionIcon/DescriptionIcon"));
|
|
46
47
|
var styles_1 = require("./styles");
|
|
47
48
|
var AttributeRenderer = function (_a) {
|
|
48
49
|
var max = _a.max, values = _a.values, attributeType = _a.attributeType, parentUri = _a.parentUri, mode = _a.mode, drawLines = _a.drawLines, showEmptyEditors = _a.showEmptyEditors, errorMessage = _a.errorMessage, errors = _a.errors, paging = _a.paging, crosswalks = _a.crosswalks, showNonOv = _a.showNonOv, nonVisibleValues = _a.nonVisibleValues, highlightedError = _a.highlightedError, onAddAttributes = _a.onAddAttributes, onDeleteAttribute = _a.onDeleteAttribute, onChangeAttribute = _a.onChangeAttribute, onDeactivateError = _a.onDeactivateError, additionalControlsRenderer = _a.additionalControlsRenderer, requestNextPageOfAttributeValues = _a.requestNextPageOfAttributeValues;
|
|
49
50
|
var styles = (0, styles_1.useStyles)();
|
|
50
51
|
var _b = (0, react_1.useState)(max), visibleValuesCount = _b[0], setVisibleValuesCount = _b[1];
|
|
51
52
|
var _c = (0, react_1.useState)(false), hadDeletions = _c[0], setHadDeletions = _c[1];
|
|
52
|
-
var label = attributeType.label, isRequired = attributeType.required, cardinality = attributeType.cardinality, name = attributeType.name, attributeTypeUri = attributeType.uri;
|
|
53
|
+
var label = attributeType.label, isRequired = attributeType.required, cardinality = attributeType.cardinality, name = attributeType.name, attributeTypeUri = attributeType.uri, description = attributeType.description;
|
|
53
54
|
var isEditableMode = (0, mdm_sdk_1.isEditableMode)(mode);
|
|
54
55
|
var _d = (0, hooks_1.useScrollToAttributeError)({ highlightedError: highlightedError }), ref = _d.ref, errorClassName = _d.errorClassName;
|
|
55
56
|
var pinnedAttributes = (0, react_1.useContext)(PinnedAttributesContext_1.PinnedAttributesContext);
|
|
@@ -110,6 +111,7 @@ var AttributeRenderer = function (_a) {
|
|
|
110
111
|
react_1.default.createElement("div", { ref: ref, className: (0, classnames_1.default)(styles.wrapper, errorClassName) },
|
|
111
112
|
react_1.default.createElement("div", { className: styles.titleWrapper },
|
|
112
113
|
react_1.default.createElement(Title_1.default, { label: label, isRequired: isRequired, className: styles.title, "data-reltio-id": "reltio-attribute-label" }),
|
|
114
|
+
react_1.default.createElement(DescriptionIcon_1.default, { description: description, className: styles.description }),
|
|
113
115
|
react_1.default.createElement(OvIcon_1.default, { nonOvValues: nonVisibleValues, attributeType: attributeType, className: styles.ovIcon, nonOvTotal: totalNonVisibleValues })),
|
|
114
116
|
isEditableMode && react_1.default.createElement(CardinalityMessage_1.default, { cardinality: cardinality }),
|
|
115
117
|
isEditableMode && react_1.default.createElement(ErrorMessage_1.default, { message: errorMessage, className: styles.typeError }),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const useStyles: (props?: any) => import("@material-ui/core/styles/withStyles").ClassNameMap<"caption" | "title" | "link" | "wrapper" | "ovIcon" | "svg-icon__root" | "attributesWrapper" | "typeError" | "titleWrapper">;
|
|
1
|
+
export declare const useStyles: (props?: any) => import("@material-ui/core/styles/withStyles").ClassNameMap<"caption" | "title" | "link" | "description" | "wrapper" | "ovIcon" | "svg-icon__root" | "attributesWrapper" | "typeError" | "titleWrapper">;
|
|
@@ -35,6 +35,7 @@ var Title_1 = __importDefault(require("../../../Title/Title"));
|
|
|
35
35
|
var ShowMore_1 = __importDefault(require("../../pagersCommon/ShowMore"));
|
|
36
36
|
var ShowLess_1 = __importDefault(require("../../pagersCommon/ShowLess"));
|
|
37
37
|
var OvIcon_1 = __importDefault(require("../../OvIcon"));
|
|
38
|
+
var DescriptionIcon_1 = __importDefault(require("../../DescriptionIcon"));
|
|
38
39
|
var MultiLineRenderer = function (_a) {
|
|
39
40
|
var max = _a.max, values = _a.values, nonVisibleValues = _a.nonVisibleValues, totalVisibleValues = _a.totalVisibleValues, attributeType = _a.attributeType, parentUri = _a.parentUri, requestNextPageOfAttributeValues = _a.requestNextPageOfAttributeValues, titleClassName = _a.titleClassName, contentClassName = _a.contentClassName, showNonOv = _a.showNonOv, totalNonVisibleValues = _a.totalNonVisibleValues;
|
|
40
41
|
var styles = (0, styles_1.useMultiLineStyles)();
|
|
@@ -42,7 +43,7 @@ var MultiLineRenderer = function (_a) {
|
|
|
42
43
|
var hasPaging = max < totalVisibleValues;
|
|
43
44
|
var showMore = hasPaging && visibleValuesCount < totalVisibleValues;
|
|
44
45
|
var showLess = hasPaging && visibleValuesCount >= totalVisibleValues;
|
|
45
|
-
var label = attributeType.label;
|
|
46
|
+
var label = attributeType.label, description = attributeType.description;
|
|
46
47
|
var onShowMore = function () {
|
|
47
48
|
if (values.length < totalVisibleValues) {
|
|
48
49
|
requestNextPageOfAttributeValues({
|
|
@@ -63,6 +64,7 @@ var MultiLineRenderer = function (_a) {
|
|
|
63
64
|
return (react_1.default.createElement("div", { className: styles.wrapper },
|
|
64
65
|
react_1.default.createElement("div", { className: styles.titleRow },
|
|
65
66
|
react_1.default.createElement(Title_1.default, { label: label, className: (0, classnames_1.default)(styles.title, titleClassName), "data-reltio-id": "reltio-attribute-label" }),
|
|
67
|
+
react_1.default.createElement(DescriptionIcon_1.default, { description: description }),
|
|
66
68
|
react_1.default.createElement(OvIcon_1.default, { nonOvValues: nonVisibleValues, attributeType: attributeType, className: styles.ovIcon, nonOvTotal: totalNonVisibleValues })),
|
|
67
69
|
react_1.default.createElement("div", { className: styles.attributes }, shownValues.map(function (value) { return (react_1.default.createElement(Attribute_1.default, { key: value.uri, className: (0, classnames_1.default)(styles.attribute, contentClassName), attributeValue: value, attributeType: attributeType, showNonOv: showNonOv })); })),
|
|
68
70
|
showMore && (react_1.default.createElement(ShowMore_1.default, { moreNumber: (0, ramda_1.min)(max, hiddenValuesCount), valueNumber: hiddenValuesCount, onClick: onShowMore })),
|
|
@@ -10,18 +10,20 @@ var constants_1 = require("../../../../constants");
|
|
|
10
10
|
var CommentsContainer_1 = __importDefault(require("../../../CommentsContainer/CommentsContainer"));
|
|
11
11
|
var Title_1 = __importDefault(require("../../../Title/Title"));
|
|
12
12
|
var OvIcon_1 = __importDefault(require("../../OvIcon"));
|
|
13
|
+
var DescriptionIcon_1 = __importDefault(require("../../DescriptionIcon/DescriptionIcon"));
|
|
13
14
|
var Attribute_1 = __importDefault(require("../AttributesFactory/Attribute"));
|
|
14
15
|
var styles_1 = require("./styles");
|
|
15
16
|
var OneLineRenderer = function (_a) {
|
|
16
17
|
var value = _a.value, nonVisibleValues = _a.nonVisibleValues, attributeType = _a.attributeType, titleClassName = _a.titleClassName, contentClassName = _a.contentClassName, showNonOv = _a.showNonOv, totalNonVisibleValues = _a.totalNonVisibleValues;
|
|
17
18
|
var styles = (0, styles_1.useOneLineStyles)();
|
|
18
|
-
var label = attributeType.label;
|
|
19
|
+
var label = attributeType.label, description = attributeType.description;
|
|
19
20
|
var objectType = (0, mdm_sdk_1.isRelationAttrType)(attributeType)
|
|
20
21
|
? mdm_sdk_1.CollaborationObjectTypes.RELATION_ATTRIBUTE
|
|
21
22
|
: mdm_sdk_1.CollaborationObjectTypes.ENTITY_ATTRIBUTE;
|
|
22
23
|
return (react_1.default.createElement("div", { className: (0, classnames_1.default)(styles.collaborationWrapper, constants_1.COMMENTS_CONTAINER_VISIBILITY_AREA) },
|
|
23
24
|
react_1.default.createElement("div", { className: (0, classnames_1.default)(styles.titleRow, styles.wrapper) },
|
|
24
25
|
react_1.default.createElement(Title_1.default, { label: label, className: (0, classnames_1.default)(styles.title, titleClassName), "data-reltio-id": "reltio-attribute-label" }),
|
|
26
|
+
react_1.default.createElement(DescriptionIcon_1.default, { description: description, className: styles.descriptionIcon }),
|
|
25
27
|
react_1.default.createElement(OvIcon_1.default, { nonOvValues: nonVisibleValues, attributeType: attributeType, className: styles.ovIcon, nonOvTotal: totalNonVisibleValues }),
|
|
26
28
|
react_1.default.createElement(Attribute_1.default, { className: (0, classnames_1.default)(styles.attribute, contentClassName), attributeValue: value, attributeType: attributeType, showNonOv: showNonOv, inlined: true })),
|
|
27
29
|
react_1.default.createElement(CommentsContainer_1.default, { uri: value.uri, relatedObjectUris: (0, mdm_sdk_1.createRelatedObjectUris)(objectType, {
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export const useStyles: (props?: any) => import("@material-ui/core/styles/withStyles").ClassNameMap<"paddingWrapper" | "paddingWrapperWithLines">;
|
|
2
|
-
export const useOneLineStyles: (props?: any) => import("@material-ui/core/styles/withStyles").ClassNameMap<"title" | "attribute" | "wrapper" | "collaborationWrapper" | "titleIcon" | "titleRow" | "ovIcon">;
|
|
3
|
-
export const useMultiLineStyles: (props?: any) => import("@material-ui/core/styles/withStyles").ClassNameMap<"title" | "attributes" | "attribute" | "wrapper" | "titleRow" | "ovIcon">;
|
|
2
|
+
export const useOneLineStyles: (props?: any) => import("@material-ui/core/styles/withStyles").ClassNameMap<"title" | "attribute" | "wrapper" | "collaborationWrapper" | "titleIcon" | "titleRow" | "ovIcon" | "descriptionIcon">;
|
|
3
|
+
export const useMultiLineStyles: (props?: any) => import("@material-ui/core/styles/withStyles").ClassNameMap<"title" | "attributes" | "attribute" | "wrapper" | "titleRow" | "ovIcon" | "descriptionIcon">;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export * from './activityLog';
|
|
2
2
|
export { default as AttributeListItem } from './AttributeListItem/AttributeListItem';
|
|
3
3
|
export { default as AttributesView } from './attributes/AttributesView';
|
|
4
|
+
export { default as DescriptionIcon } from './attributes/DescriptionIcon';
|
|
4
5
|
export { default as BranchDecorator } from './attributes/BranchDecorator/BranchDecorator';
|
|
5
6
|
export { default as AttributesList } from './attributes/editMode/AttributesList';
|
|
6
7
|
export { default as EntityCreator } from './attributes/editMode/EntityCreator';
|
package/cjs/components/index.js
CHANGED
|
@@ -17,14 +17,16 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
17
17
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
18
18
|
};
|
|
19
19
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20
|
-
exports.
|
|
21
|
-
exports.
|
|
22
|
-
exports.DataTenantBadge = exports.SettingsMenu = exports.TenantsDropDownSelector = exports.TenantIcon = exports.SourceSystemsSelector = exports.MatchRulesSelector = exports.MultiValueSelector = exports.DragAndDrop = exports.ConnectionEditor = exports.AttributesFiltersBuilder = exports.AttributesFiltersButton = exports.AttributeGroupIcon = exports.BasicAttributeSelector = exports.ProfilesList = exports.ActionButtonMode = exports.ActionButton = exports.NotMatchButton = exports.MergeButton = exports.ProfileMatchCard = exports.RelationEditor = exports.OvIcon = exports.ErrorMessage = exports.ReltioMap = exports.ConfirmDeleteDialog = exports.ConfirmationDialog = exports.Marginator = exports.LightArrowTooltip = exports.ArrowExpandButton = exports.ScrollableTabs = exports.ExpandableSearchInput = exports.VirtualGroupedList = exports.ViewMoreToggle = exports.VerticalHeadingsTable = exports.VerticalDivider = exports.AttributeTitle = exports.Spacer = exports.SourceIcon = exports.SmallIconButtonWithTooltip = exports.SmallIconButton = exports.SimpleDropDownSelector = exports.SidePanelContentHeader = exports.SidePanel = exports.SidePanelEmptyState = void 0;
|
|
20
|
+
exports.EmptyState = exports.NoResults = exports.NoData = exports.DropDownSelector = exports.DropDownMenuButton = exports.Drawer = exports.DataTypeValue = exports.ConnectionRelationTypeSelector = exports.ConfigureColumnsPopup = exports.MenuWithPopper = exports.MenuList = exports.LoadMoreButton = exports.DropdownIndicatorWithIconButton = exports.DropdownIndicator = exports.CommentsContainer = exports.ColorBar = exports.CollapseButton = exports.CollaborationItem = exports.ClickAwayProvider = exports.BasicViewHeader = exports.BasicViewContent = exports.BasicView = exports.ScreenProfileBand = exports.ProfileBandNavigation = exports.AvatarWithFallback = exports.AutoSizeList = exports.ReadOnlyAttributesPager = exports.SimpleAttribute = exports.ReferenceAttribute = exports.NestedAttribute = exports.EditableImageAttributesLine = exports.ImageAttributesLine = exports.ReadOnlyAttributesList = exports.ReadOnlyAttributeValuesBlock = exports.EditableAttribute = exports.ReadOnlyAttribute = exports.CardinalityMessage = exports.AttributesPager = exports.SimpleAttributeEditor = exports.RelationTypeSelector = exports.ReferenceAttributeEditor = exports.NestedAttributeEditor = exports.MoreAttributesButton = exports.EntitySelector = exports.EntityCreator = exports.AttributesList = exports.BranchDecorator = exports.DescriptionIcon = exports.AttributesView = exports.AttributeListItem = void 0;
|
|
21
|
+
exports.SelectorWithOnlyOptionAutoSelect = exports.SelectionPopupPopper = exports.SelectionPopup = exports.useKeyboardNavigation = exports.WhiteSearchInput = exports.SearchInput = exports.ResizablePanes = exports.ReltioGridLayout = exports.ReactSortableTreeUtils = exports.ReactSortableTreeHandlers = exports.ReactSortableTree = exports.ReactSelectOptionFilters = exports.MultiSelect = exports.QueryBuilderRowsGroup = exports.QueryBuilderRow = exports.ProfileCard = exports.ProfileBand = exports.PotentialMatchReviewCard = exports.PopupWithArrow = exports.Popper = exports.MultipleInput = exports.ModeSwitcherSelect = exports.ModeSwitcher = exports.TransitiveMatchBlock = exports.SimpleMatchRulesBlock = exports.MatchRuleVariant = exports.MatchRulesBlock = exports.LoadingSpinner = exports.Link = exports.LinearLoadIndicator = exports.ImportModes = exports.ImportButton = exports.ImageGalleryDialog = exports.Highlighter = exports.HierarchicalAttributeTooltip = exports.HideOnShrink = exports.FlipCard = exports.FacetViewHeader = exports.ExpandedValueTooltip = exports.ErrorWrapper = exports.ErrorPopup = exports.ErrorBoundary = exports.EntityUriLink = exports.RelationTypesSelector = exports.EntityTypesSelector = exports.EntityTypeIcon = exports.EntityTypeBadge = exports.EntityAvatar = exports.EMPTY_STATE_VARIANTS = exports.EMPTY_STATE_ICONS = void 0;
|
|
22
|
+
exports.DataTenantBadge = exports.SettingsMenu = exports.TenantsDropDownSelector = exports.TenantIcon = exports.SourceSystemsSelector = exports.MatchRulesSelector = exports.MultiValueSelector = exports.DragAndDrop = exports.ConnectionEditor = exports.AttributesFiltersBuilder = exports.AttributesFiltersButton = exports.AttributeGroupIcon = exports.BasicAttributeSelector = exports.ProfilesList = exports.ActionButtonMode = exports.ActionButton = exports.NotMatchButton = exports.MergeButton = exports.ProfileMatchCard = exports.RelationEditor = exports.OvIcon = exports.ErrorMessage = exports.ReltioMap = exports.ConfirmDeleteDialog = exports.ConfirmationDialog = exports.Marginator = exports.LightArrowTooltip = exports.ArrowExpandButton = exports.ScrollableTabs = exports.ExpandableSearchInput = exports.VirtualGroupedList = exports.ViewMoreToggle = exports.VerticalHeadingsTable = exports.VerticalDivider = exports.AttributeTitle = exports.Spacer = exports.SourceIcon = exports.SmallIconButtonWithTooltip = exports.SmallIconButton = exports.SimpleDropDownSelector = exports.SidePanelContentHeader = exports.SidePanel = exports.SidePanelEmptyState = exports.SideButtonsPanel = void 0;
|
|
23
23
|
__exportStar(require("./activityLog"), exports);
|
|
24
24
|
var AttributeListItem_1 = require("./AttributeListItem/AttributeListItem");
|
|
25
25
|
Object.defineProperty(exports, "AttributeListItem", { enumerable: true, get: function () { return __importDefault(AttributeListItem_1).default; } });
|
|
26
26
|
var AttributesView_1 = require("./attributes/AttributesView");
|
|
27
27
|
Object.defineProperty(exports, "AttributesView", { enumerable: true, get: function () { return __importDefault(AttributesView_1).default; } });
|
|
28
|
+
var DescriptionIcon_1 = require("./attributes/DescriptionIcon");
|
|
29
|
+
Object.defineProperty(exports, "DescriptionIcon", { enumerable: true, get: function () { return __importDefault(DescriptionIcon_1).default; } });
|
|
28
30
|
var BranchDecorator_1 = require("./attributes/BranchDecorator/BranchDecorator");
|
|
29
31
|
Object.defineProperty(exports, "BranchDecorator", { enumerable: true, get: function () { return __importDefault(BranchDecorator_1).default; } });
|
|
30
32
|
var AttributesList_1 = require("./attributes/editMode/AttributesList");
|
|
@@ -20,6 +20,7 @@ var useWorkflowTasks = function (config) {
|
|
|
20
20
|
var tenant = (0, react_redux_1.useSelector)(mdm_module_1.default.selectors.getTenant);
|
|
21
21
|
var entityUri = (0, react_redux_1.useSelector)(mdm_module_1.default.selectors.getEntityUri);
|
|
22
22
|
var isEditableMode = (0, react_redux_1.useSelector)(mdm_module_1.default.selectors.getIsEditableMode);
|
|
23
|
+
var entityLastLoadedTime = (0, react_redux_1.useSelector)(mdm_module_1.default.selectors.getProfileLastLoadedTime);
|
|
23
24
|
var checkWorkflowPermission = (0, useWorkflowCheckPermission_1.useWorkflowCheckPermission)();
|
|
24
25
|
var canViewTasks = checkWorkflowPermission('VIEW_TASKS');
|
|
25
26
|
var enabled = !!(workflowPath && environment) && isWorkflowEnabled && canViewTasks;
|
|
@@ -51,7 +52,18 @@ var useWorkflowTasks = function (config) {
|
|
|
51
52
|
.finally(function () {
|
|
52
53
|
setLoading(false);
|
|
53
54
|
});
|
|
54
|
-
|
|
55
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
56
|
+
}, [
|
|
57
|
+
entityUri,
|
|
58
|
+
environment,
|
|
59
|
+
safePromise,
|
|
60
|
+
tenant,
|
|
61
|
+
workflowPath,
|
|
62
|
+
assignee,
|
|
63
|
+
showClosedTasks,
|
|
64
|
+
processTypes,
|
|
65
|
+
entityLastLoadedTime
|
|
66
|
+
]);
|
|
55
67
|
(0, react_1.useEffect)(function () {
|
|
56
68
|
if (entityUri && enabled && !(0, mdm_sdk_1.isTempUri)(entityUri)) {
|
|
57
69
|
loadTasks();
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.FeaturesContext = void 0;
|
|
7
|
+
var react_1 = __importDefault(require("react"));
|
|
8
|
+
exports.FeaturesContext = react_1.default.createContext({});
|
|
9
|
+
exports.FeaturesContext.displayName = 'FeaturesContext';
|
package/cjs/contexts/index.d.ts
CHANGED
|
@@ -25,3 +25,4 @@ export { SearchValueContext } from './SearchValueContext';
|
|
|
25
25
|
export { ScrollToErrorContext, ScrollToErrorProvider } from './ScrollToErrorContext';
|
|
26
26
|
export { UrlGeneratorsContext } from './UrlGeneratorsContext';
|
|
27
27
|
export { LabelsContext } from './LabelsContext';
|
|
28
|
+
export { FeaturesContext } from './FeaturesContext';
|
package/cjs/contexts/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.LabelsContext = exports.UrlGeneratorsContext = exports.ScrollToErrorProvider = exports.ScrollToErrorContext = 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.EntityMarkerContext = exports.useAttributeExpanded = exports.ExpandedAttributesProvider = exports.useHighlightedCrosswalks = exports.useCrosswalkHighlight = exports.useCrosswalkFocus = exports.useCrosswalkColor = exports.CrosswalksDisplayProvider = exports.EntitiesMapContext = exports.IdContext = exports.ProfilePerspectiveViewContext = exports.PivotingAttributeContext = exports.UsersContext = exports.CollaborationContextProvider = exports.CollaborationContext = exports.BlockImageGalleryDialogContext = exports.ViewIdContext = exports.PopupBoundariesContext = exports.HistoryDiffContext = exports.AsyncMountContext = void 0;
|
|
3
|
+
exports.FeaturesContext = exports.LabelsContext = exports.UrlGeneratorsContext = exports.ScrollToErrorProvider = exports.ScrollToErrorContext = 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.EntityMarkerContext = exports.useAttributeExpanded = exports.ExpandedAttributesProvider = exports.useHighlightedCrosswalks = exports.useCrosswalkHighlight = exports.useCrosswalkFocus = exports.useCrosswalkColor = exports.CrosswalksDisplayProvider = exports.EntitiesMapContext = exports.IdContext = exports.ProfilePerspectiveViewContext = exports.PivotingAttributeContext = exports.UsersContext = exports.CollaborationContextProvider = exports.CollaborationContext = exports.BlockImageGalleryDialogContext = exports.ViewIdContext = exports.PopupBoundariesContext = exports.HistoryDiffContext = exports.AsyncMountContext = void 0;
|
|
4
4
|
var AsyncMountContext_1 = require("./AsyncMountContext");
|
|
5
5
|
Object.defineProperty(exports, "AsyncMountContext", { enumerable: true, get: function () { return AsyncMountContext_1.AsyncMountContext; } });
|
|
6
6
|
var HistoryAppearanceContext_1 = require("./HistoryAppearanceContext");
|
|
@@ -64,3 +64,5 @@ var UrlGeneratorsContext_1 = require("./UrlGeneratorsContext");
|
|
|
64
64
|
Object.defineProperty(exports, "UrlGeneratorsContext", { enumerable: true, get: function () { return UrlGeneratorsContext_1.UrlGeneratorsContext; } });
|
|
65
65
|
var LabelsContext_1 = require("./LabelsContext");
|
|
66
66
|
Object.defineProperty(exports, "LabelsContext", { enumerable: true, get: function () { return LabelsContext_1.LabelsContext; } });
|
|
67
|
+
var FeaturesContext_1 = require("./FeaturesContext");
|
|
68
|
+
Object.defineProperty(exports, "FeaturesContext", { enumerable: true, get: function () { return FeaturesContext_1.FeaturesContext; } });
|
package/cjs/hooks/useAPI/API.js
CHANGED
|
@@ -60,7 +60,7 @@ var processFromQuery = function (params, permissions, workflowPath, tenant, envi
|
|
|
60
60
|
if (!workflowPath) {
|
|
61
61
|
return new Promise(function (resolve) { return resolve({ errorMessage: 'Workflow path is not defined' }); });
|
|
62
62
|
}
|
|
63
|
-
var errors = validateParams(__assign({
|
|
63
|
+
var errors = validateParams(__assign({ validationUrl: '/processInstances/_generateFromQuery' }, params), permissions);
|
|
64
64
|
if (errors) {
|
|
65
65
|
return new Promise(function (resolve) { return resolve(errors); });
|
|
66
66
|
}
|
|
@@ -120,7 +120,7 @@ var sendApiRequest = function (params, permissions, signHandler) { return __awai
|
|
|
120
120
|
case 0:
|
|
121
121
|
errors = validateParams(params, permissions);
|
|
122
122
|
if (errors) {
|
|
123
|
-
return [2 /*return*/, errors];
|
|
123
|
+
return [2 /*return*/, Promise.reject(errors)];
|
|
124
124
|
}
|
|
125
125
|
return [4 /*yield*/, getHeaders(params, signHandler)];
|
|
126
126
|
case 1:
|
|
@@ -137,18 +137,18 @@ var sendApiRequest = function (params, permissions, signHandler) { return __awai
|
|
|
137
137
|
});
|
|
138
138
|
}); };
|
|
139
139
|
var validateParams = function (params, permissions) {
|
|
140
|
-
var
|
|
141
|
-
if (!
|
|
140
|
+
var validationUrl = params.validationUrl;
|
|
141
|
+
if (!validationUrl)
|
|
142
142
|
return { errorMessage: 'URL is empty' };
|
|
143
143
|
var allowed = permissions === null || permissions === void 0 ? void 0 : permissions.some(function (permission) {
|
|
144
144
|
var _a;
|
|
145
|
-
var urlOrigin = (_a =
|
|
145
|
+
var urlOrigin = (_a = validationUrl.match(/^(https?:\/\/[^:/?#]*).*$/)) === null || _a === void 0 ? void 0 : _a[1];
|
|
146
146
|
var permRegex = new RegExp('^' + permission + '$');
|
|
147
147
|
var decodedPerm = permission.replace(/\/*$/, '');
|
|
148
|
-
return (decodedPerm ===
|
|
148
|
+
return (decodedPerm === validationUrl ||
|
|
149
149
|
(urlOrigin && urlOrigin === decodedPerm) ||
|
|
150
|
-
((decodedPerm === null || decodedPerm === void 0 ? void 0 : decodedPerm.startsWith('/')) && (
|
|
151
|
-
(permission && permRegex.test(
|
|
150
|
+
((decodedPerm === null || decodedPerm === void 0 ? void 0 : decodedPerm.startsWith('/')) && (validationUrl === null || validationUrl === void 0 ? void 0 : validationUrl.startsWith(decodedPerm))) ||
|
|
151
|
+
(permission && permRegex.test(validationUrl)));
|
|
152
152
|
});
|
|
153
153
|
if (!allowed || ((permissions === null || permissions === void 0 ? void 0 : permissions.length) || 0) === 0) {
|
|
154
154
|
return { errorMessage: 'Not enough permissions' };
|
|
@@ -159,8 +159,13 @@ var processRequest = function (_a) {
|
|
|
159
159
|
var name = _a.name, paramObject = _a.paramObject, permissions = _a.permissions, worker = _a.worker, metadata = _a.metadata, config = _a.config, apiPath = _a.apiPath, servicesPath = _a.servicesPath, user = _a.user, workflowPath = _a.workflowPath, entity = _a.entity, tenant = _a.tenant, entityUri = _a.entityUri, query = _a.query, openSearch = _a.openSearch, environment = _a.environment, getCurrentPerspectiveId = _a.getCurrentPerspectiveId, showPerspective = _a.showPerspective, workflowCheckPermission = _a.workflowCheckPermission, setEntityUri = _a.setEntityUri;
|
|
160
160
|
var handleRequest = function (request) {
|
|
161
161
|
request
|
|
162
|
+
.then(function (response) { return (response.json ? response.json() : response); })
|
|
162
163
|
.then(function (data) {
|
|
163
|
-
worker.postMessage(__assign({ action: 'response', result: {
|
|
164
|
+
worker.postMessage(__assign({ action: 'response', result: {
|
|
165
|
+
data: JSON.parse(JSON.stringify(data)),
|
|
166
|
+
headers: paramObject.params.headers,
|
|
167
|
+
status: 200
|
|
168
|
+
} }, paramObject.params));
|
|
164
169
|
})
|
|
165
170
|
.catch(function (error) {
|
|
166
171
|
worker.postMessage(__assign({ action: 'response', result: { data: error, headers: paramObject.params.headers, status: 0 } }, paramObject.params));
|
|
@@ -29,9 +29,10 @@ export declare const setUpRequestInterceptor: ({ apiPath, reltioPath, tenant, pr
|
|
|
29
29
|
processApiRequest: any;
|
|
30
30
|
workerRef: any;
|
|
31
31
|
setRequestListeners: any;
|
|
32
|
-
}) => ({ options, url, next }: {
|
|
32
|
+
}) => ({ options, url, next, resolve }: {
|
|
33
33
|
next: (url: string, options: RequestInit) => void;
|
|
34
34
|
abort?: (error: Error) => void;
|
|
35
|
+
resolve: (data: unknown) => void;
|
|
35
36
|
url: string;
|
|
36
37
|
options: RequestInit;
|
|
37
38
|
}) => void;
|
|
@@ -143,14 +143,14 @@ exports.setUpQooxdooResponseInterceptor = setUpQooxdooResponseInterceptor;
|
|
|
143
143
|
var setUpRequestInterceptor = function (_a) {
|
|
144
144
|
var apiPath = _a.apiPath, reltioPath = _a.reltioPath, tenant = _a.tenant, processApiRequest = _a.processApiRequest, workerRef = _a.workerRef, setRequestListeners = _a.setRequestListeners;
|
|
145
145
|
return function (_a) {
|
|
146
|
-
var _b = _a.options, options = _b === void 0 ? {} : _b, url = _a.url, next = _a.next;
|
|
146
|
+
var _b = _a.options, options = _b === void 0 ? {} : _b, url = _a.url, next = _a.next, resolve = _a.resolve;
|
|
147
147
|
var fakeURL = url.startsWith('/') && !url.startsWith(apiPath)
|
|
148
148
|
? "".concat(reltioPath, "/api/").concat(tenant).concat(url)
|
|
149
149
|
: "".concat(reltioPath).concat(url.replace(apiPath, ''));
|
|
150
150
|
var isProcessableUrl = isURLtoProcess(processApiRequest, fakeURL);
|
|
151
151
|
if (isProcessableUrl) {
|
|
152
152
|
var requestId = (0, nanoid_1.default)();
|
|
153
|
-
setRequestListeners(options, next, requestId);
|
|
153
|
+
setRequestListeners(options, next, requestId, resolve);
|
|
154
154
|
workerRef.current.postMessage({
|
|
155
155
|
action: 'apiRequest',
|
|
156
156
|
id: requestId,
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { CSSProperties } from 'react';
|
|
2
|
-
import {
|
|
2
|
+
import { CustomActionExtension, CustomActionViewConfig } from '@reltio/mdm-sdk';
|
|
3
3
|
declare type Config = CustomActionViewConfig | CustomActionExtension;
|
|
4
4
|
export declare const useAPI: (config?: Config) => {
|
|
5
5
|
html: HTMLElement;
|