@reltio/components 1.4.2181 → 1.4.2183
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/ActionButton/ActionButton.js +1 -1
- package/CommentDialog/CommentDialog.d.ts +14 -0
- package/CommentDialog/CommentDialog.js +43 -0
- package/CommentDialog/CommentDialog.module.css.js +9 -0
- package/cjs/ActionButton/ActionButton.js +1 -1
- package/cjs/CommentDialog/CommentDialog.d.ts +14 -0
- package/cjs/CommentDialog/CommentDialog.js +73 -0
- package/cjs/CommentDialog/CommentDialog.module.css.js +9 -0
- package/cjs/contexts/CommentDialogContext/index.d.ts +16 -0
- package/cjs/contexts/CommentDialogContext/index.js +68 -0
- package/cjs/contexts/WorkflowDefinitionsContext/index.d.ts +11 -0
- package/cjs/contexts/WorkflowDefinitionsContext/index.js +25 -0
- package/cjs/features/workflow/AddWorkflowDialog/AddWorkflowDialog.js +15 -11
- package/cjs/features/workflow/AddWorkflowDialog/AddWorkflowDialog.spec.js +10 -9
- package/cjs/features/workflow/AddWorkflowDialog/styles.d.ts +1 -1
- package/cjs/features/workflow/AddWorkflowDialog/styles.js +11 -4
- package/cjs/features/workflow/ReassignButton/components/ReassignDialog/styles.d.ts +1 -1
- package/cjs/features/workflow/TaskActionButtons/TaskActionButtons.spec.js +54 -1
- package/cjs/features/workflow/WorkflowTaskCard/WorkflowTaskCard.test.js +3 -1
- package/cjs/features/workflow/WorkflowTaskCard/components/DataChangeRequestTaskCard/DataChangeRequestTaskCard.spec.js +3 -1
- package/cjs/features/workflow/WorkflowTaskCard/components/GenericWorkflowTaskCard/GenericWorkflowTaskCard.spec.js +9 -7
- package/cjs/features/workflow/WorkflowTaskCard/components/PotentialMatchTaskCard/PotentialMatchTaskCard.spec.js +3 -1
- package/cjs/features/workflow/helpers/common.d.ts +2 -1
- package/cjs/features/workflow/helpers/common.js +3 -1
- package/cjs/features/workflow/hooks/useWorkflowActions.js +82 -22
- package/cjs/features/workflow/hooks/useWorkflowDefinitions.d.ts +7 -2
- package/cjs/features/workflow/hooks/useWorkflowDefinitions.js +20 -7
- package/cjs/features/workflow/index.d.ts +1 -0
- package/cjs/features/workflow/index.js +4 -1
- package/cjs/hooks/useRequestDCRReview/useRequestDCRReview.js +88 -17
- package/contexts/CommentDialogContext/index.d.ts +16 -0
- package/contexts/CommentDialogContext/index.js +40 -0
- package/contexts/WorkflowDefinitionsContext/index.d.ts +11 -0
- package/contexts/WorkflowDefinitionsContext/index.js +18 -0
- package/features/workflow/AddWorkflowDialog/AddWorkflowDialog.js +15 -11
- package/features/workflow/AddWorkflowDialog/AddWorkflowDialog.spec.js +10 -9
- package/features/workflow/AddWorkflowDialog/styles.d.ts +1 -1
- package/features/workflow/AddWorkflowDialog/styles.js +11 -4
- package/features/workflow/ReassignButton/components/ReassignDialog/styles.d.ts +1 -1
- package/features/workflow/TaskActionButtons/TaskActionButtons.spec.js +55 -2
- package/features/workflow/WorkflowTaskCard/WorkflowTaskCard.test.js +3 -1
- package/features/workflow/WorkflowTaskCard/components/DataChangeRequestTaskCard/DataChangeRequestTaskCard.spec.js +3 -1
- package/features/workflow/WorkflowTaskCard/components/GenericWorkflowTaskCard/GenericWorkflowTaskCard.spec.js +9 -7
- package/features/workflow/WorkflowTaskCard/components/PotentialMatchTaskCard/PotentialMatchTaskCard.spec.js +3 -1
- package/features/workflow/helpers/common.d.ts +2 -1
- package/features/workflow/helpers/common.js +2 -1
- package/features/workflow/hooks/useWorkflowActions.js +82 -22
- package/features/workflow/hooks/useWorkflowDefinitions.d.ts +7 -2
- package/features/workflow/hooks/useWorkflowDefinitions.js +22 -9
- package/features/workflow/index.d.ts +1 -0
- package/features/workflow/index.js +2 -0
- package/hooks/useRequestDCRReview/useRequestDCRReview.js +90 -19
- package/package.json +2 -2
|
@@ -51,7 +51,7 @@ export var ActionButton = forwardRef(function (_a, ref) {
|
|
|
51
51
|
onClick();
|
|
52
52
|
};
|
|
53
53
|
var isComplexItem = !!description;
|
|
54
|
-
return (React.createElement(MenuItem, __assign({ classes: { root: classnames(styles.menuItem, (_a = {}, _a[styles.complexItem] = isComplexItem, _a)) }, onClick: handleClick, ref: ref }, otherProps),
|
|
54
|
+
return (React.createElement(MenuItem, __assign({ classes: { root: classnames(styles.menuItem, (_a = {}, _a[styles.complexItem] = isComplexItem, _a)) }, disabled: disabled, onClick: handleClick, ref: ref }, otherProps),
|
|
55
55
|
Icon && (React.createElement(ListItemIcon, null,
|
|
56
56
|
React.createElement(Icon, null))),
|
|
57
57
|
React.createElement(ListItemText, { primary: label, secondary: description, classes: {
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
type Props = {
|
|
3
|
+
open?: boolean;
|
|
4
|
+
title?: string;
|
|
5
|
+
message?: string;
|
|
6
|
+
confirmLabel?: string;
|
|
7
|
+
cancelLabel?: string;
|
|
8
|
+
defaultComment?: string;
|
|
9
|
+
required?: boolean;
|
|
10
|
+
onConfirm: (value: string) => void;
|
|
11
|
+
onCancel: () => void;
|
|
12
|
+
};
|
|
13
|
+
export declare const CommentDialog: ({ open, title, confirmLabel, cancelLabel, defaultComment, required, onConfirm, onCancel }: Props) => React.JSX.Element;
|
|
14
|
+
export {};
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import React, { useCallback, useState } from 'react';
|
|
2
|
+
import Button from '@mui/material/Button';
|
|
3
|
+
import Dialog from '@mui/material/Dialog';
|
|
4
|
+
import DialogActions from '@mui/material/DialogActions';
|
|
5
|
+
import DialogContent from '@mui/material/DialogContent';
|
|
6
|
+
import DialogTitle from '@mui/material/DialogTitle';
|
|
7
|
+
import TextField from '@mui/material/TextField';
|
|
8
|
+
import i18n from 'ui-i18n';
|
|
9
|
+
import styles from './CommentDialog.module.css';
|
|
10
|
+
export var CommentDialog = function (_a) {
|
|
11
|
+
var _b = _a.open, open = _b === void 0 ? true : _b, title = _a.title, confirmLabel = _a.confirmLabel, cancelLabel = _a.cancelLabel, _c = _a.defaultComment, defaultComment = _c === void 0 ? '' : _c, _d = _a.required, required = _d === void 0 ? true : _d, onConfirm = _a.onConfirm, onCancel = _a.onCancel;
|
|
12
|
+
var _e = useState(defaultComment || ''), comment = _e[0], setComment = _e[1];
|
|
13
|
+
var handleChangeComment = useCallback(function (e) {
|
|
14
|
+
setComment(e.target.value);
|
|
15
|
+
}, []);
|
|
16
|
+
var handleConfirm = useCallback(function () {
|
|
17
|
+
if (required && !comment.trim())
|
|
18
|
+
return;
|
|
19
|
+
onConfirm(comment);
|
|
20
|
+
setComment('');
|
|
21
|
+
}, [comment, required, onConfirm]);
|
|
22
|
+
var handleCancel = useCallback(function () {
|
|
23
|
+
onCancel();
|
|
24
|
+
}, [onCancel]);
|
|
25
|
+
var isConfirmDisabled = required && !comment.trim();
|
|
26
|
+
return (React.createElement(Dialog, { open: open, onClose: handleCancel, fullWidth: true, classes: { paper: styles.dialog } },
|
|
27
|
+
React.createElement(DialogTitle, { classes: { root: styles.dialogTitle } }, title || i18n.text('Please provide a comment for your action')),
|
|
28
|
+
React.createElement(DialogContent, { classes: { root: styles.dialogContent } },
|
|
29
|
+
React.createElement(TextField, { autoFocus: true, multiline: true, minRows: 5, fullWidth: true, variant: "filled", value: comment, size: "small", onChange: handleChangeComment, required: required, InputLabelProps: {
|
|
30
|
+
classes: {
|
|
31
|
+
root: styles.inputLabelRoot,
|
|
32
|
+
asterisk: styles.asterisk
|
|
33
|
+
}
|
|
34
|
+
}, InputProps: {
|
|
35
|
+
classes: {
|
|
36
|
+
input: styles.input,
|
|
37
|
+
formControl: styles.formControl
|
|
38
|
+
}
|
|
39
|
+
}, label: i18n.text('Type a comment') })),
|
|
40
|
+
React.createElement(DialogActions, { classes: { root: styles.dialogActions } },
|
|
41
|
+
React.createElement(Button, { onClick: handleCancel }, cancelLabel || i18n.text('Cancel')),
|
|
42
|
+
React.createElement(Button, { onClick: handleConfirm, disabled: isConfirmDisabled, color: "primary" }, confirmLabel || i18n.text('Done')))));
|
|
43
|
+
};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
const styles = {"dialog":"CommentDialog-dialog--28OuU","dialogTitle":"CommentDialog-dialogTitle--mtuLI","dialogContent":"CommentDialog-dialogContent--bx8o1","input":"CommentDialog-input--v9ZO3","formControl":"CommentDialog-formControl--vptF6","inputLabelRoot":"CommentDialog-inputLabelRoot--VGQ5g","dialogActions":"CommentDialog-dialogActions--4669K","asterisk":"CommentDialog-asterisk--8ondZ"};
|
|
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 = `.CommentDialog-dialog--28OuU{width:465px}.CommentDialog-dialogTitle--mtuLI{padding:16px 16px 4px}.CommentDialog-dialogContent--bx8o1{padding:20px 16px}.CommentDialog-input--v9ZO3{font-size:14px;line-height:16px}.CommentDialog-formControl--vptF6{padding-bottom:6px}.CommentDialog-inputLabelRoot--VGQ5g{font-size:14px}.CommentDialog-dialogActions--4669K{border-top:1px solid rgba(0,0,0,.12);padding:4px 2px}.CommentDialog-asterisk--8ondZ{color:red}`;
|
|
7
|
+
head.appendChild(style);
|
|
8
|
+
}
|
|
9
|
+
export default styles;
|
|
@@ -80,7 +80,7 @@ exports.ActionButton = (0, react_1.forwardRef)(function (_a, ref) {
|
|
|
80
80
|
onClick();
|
|
81
81
|
};
|
|
82
82
|
var isComplexItem = !!description;
|
|
83
|
-
return (react_1.default.createElement(MenuItem_1.default, __assign({ classes: { root: (0, classnames_1.default)(styles.menuItem, (_a = {}, _a[styles.complexItem] = isComplexItem, _a)) }, onClick: handleClick, ref: ref }, otherProps),
|
|
83
|
+
return (react_1.default.createElement(MenuItem_1.default, __assign({ classes: { root: (0, classnames_1.default)(styles.menuItem, (_a = {}, _a[styles.complexItem] = isComplexItem, _a)) }, disabled: disabled, onClick: handleClick, ref: ref }, otherProps),
|
|
84
84
|
Icon && (react_1.default.createElement(ListItemIcon_1.default, null,
|
|
85
85
|
react_1.default.createElement(Icon, null))),
|
|
86
86
|
react_1.default.createElement(ListItemText_1.default, { primary: label, secondary: description, classes: {
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
type Props = {
|
|
3
|
+
open?: boolean;
|
|
4
|
+
title?: string;
|
|
5
|
+
message?: string;
|
|
6
|
+
confirmLabel?: string;
|
|
7
|
+
cancelLabel?: string;
|
|
8
|
+
defaultComment?: string;
|
|
9
|
+
required?: boolean;
|
|
10
|
+
onConfirm: (value: string) => void;
|
|
11
|
+
onCancel: () => void;
|
|
12
|
+
};
|
|
13
|
+
export declare const CommentDialog: ({ open, title, confirmLabel, cancelLabel, defaultComment, required, onConfirm, onCancel }: Props) => React.JSX.Element;
|
|
14
|
+
export {};
|
|
@@ -0,0 +1,73 @@
|
|
|
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.CommentDialog = void 0;
|
|
30
|
+
var react_1 = __importStar(require("react"));
|
|
31
|
+
var Button_1 = __importDefault(require("@mui/material/Button"));
|
|
32
|
+
var Dialog_1 = __importDefault(require("@mui/material/Dialog"));
|
|
33
|
+
var DialogActions_1 = __importDefault(require("@mui/material/DialogActions"));
|
|
34
|
+
var DialogContent_1 = __importDefault(require("@mui/material/DialogContent"));
|
|
35
|
+
var DialogTitle_1 = __importDefault(require("@mui/material/DialogTitle"));
|
|
36
|
+
var TextField_1 = __importDefault(require("@mui/material/TextField"));
|
|
37
|
+
var ui_i18n_1 = __importDefault(require("ui-i18n"));
|
|
38
|
+
var CommentDialog_module_css_1 = __importDefault(require("./CommentDialog.module.css"));
|
|
39
|
+
var CommentDialog = function (_a) {
|
|
40
|
+
var _b = _a.open, open = _b === void 0 ? true : _b, title = _a.title, confirmLabel = _a.confirmLabel, cancelLabel = _a.cancelLabel, _c = _a.defaultComment, defaultComment = _c === void 0 ? '' : _c, _d = _a.required, required = _d === void 0 ? true : _d, onConfirm = _a.onConfirm, onCancel = _a.onCancel;
|
|
41
|
+
var _e = (0, react_1.useState)(defaultComment || ''), comment = _e[0], setComment = _e[1];
|
|
42
|
+
var handleChangeComment = (0, react_1.useCallback)(function (e) {
|
|
43
|
+
setComment(e.target.value);
|
|
44
|
+
}, []);
|
|
45
|
+
var handleConfirm = (0, react_1.useCallback)(function () {
|
|
46
|
+
if (required && !comment.trim())
|
|
47
|
+
return;
|
|
48
|
+
onConfirm(comment);
|
|
49
|
+
setComment('');
|
|
50
|
+
}, [comment, required, onConfirm]);
|
|
51
|
+
var handleCancel = (0, react_1.useCallback)(function () {
|
|
52
|
+
onCancel();
|
|
53
|
+
}, [onCancel]);
|
|
54
|
+
var isConfirmDisabled = required && !comment.trim();
|
|
55
|
+
return (react_1.default.createElement(Dialog_1.default, { open: open, onClose: handleCancel, fullWidth: true, classes: { paper: CommentDialog_module_css_1.default.dialog } },
|
|
56
|
+
react_1.default.createElement(DialogTitle_1.default, { classes: { root: CommentDialog_module_css_1.default.dialogTitle } }, title || ui_i18n_1.default.text('Please provide a comment for your action')),
|
|
57
|
+
react_1.default.createElement(DialogContent_1.default, { classes: { root: CommentDialog_module_css_1.default.dialogContent } },
|
|
58
|
+
react_1.default.createElement(TextField_1.default, { autoFocus: true, multiline: true, minRows: 5, fullWidth: true, variant: "filled", value: comment, size: "small", onChange: handleChangeComment, required: required, InputLabelProps: {
|
|
59
|
+
classes: {
|
|
60
|
+
root: CommentDialog_module_css_1.default.inputLabelRoot,
|
|
61
|
+
asterisk: CommentDialog_module_css_1.default.asterisk
|
|
62
|
+
}
|
|
63
|
+
}, InputProps: {
|
|
64
|
+
classes: {
|
|
65
|
+
input: CommentDialog_module_css_1.default.input,
|
|
66
|
+
formControl: CommentDialog_module_css_1.default.formControl
|
|
67
|
+
}
|
|
68
|
+
}, label: ui_i18n_1.default.text('Type a comment') })),
|
|
69
|
+
react_1.default.createElement(DialogActions_1.default, { classes: { root: CommentDialog_module_css_1.default.dialogActions } },
|
|
70
|
+
react_1.default.createElement(Button_1.default, { onClick: handleCancel }, cancelLabel || ui_i18n_1.default.text('Cancel')),
|
|
71
|
+
react_1.default.createElement(Button_1.default, { onClick: handleConfirm, disabled: isConfirmDisabled, color: "primary" }, confirmLabel || ui_i18n_1.default.text('Done')))));
|
|
72
|
+
};
|
|
73
|
+
exports.CommentDialog = CommentDialog;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
const styles = {"dialog":"CommentDialog-dialog--28OuU","dialogTitle":"CommentDialog-dialogTitle--mtuLI","dialogContent":"CommentDialog-dialogContent--bx8o1","input":"CommentDialog-input--v9ZO3","formControl":"CommentDialog-formControl--vptF6","inputLabelRoot":"CommentDialog-inputLabelRoot--VGQ5g","dialogActions":"CommentDialog-dialogActions--4669K","asterisk":"CommentDialog-asterisk--8ondZ"};
|
|
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 = `.CommentDialog-dialog--28OuU{width:465px}.CommentDialog-dialogTitle--mtuLI{padding:16px 16px 4px}.CommentDialog-dialogContent--bx8o1{padding:20px 16px}.CommentDialog-input--v9ZO3{font-size:14px;line-height:16px}.CommentDialog-formControl--vptF6{padding-bottom:6px}.CommentDialog-inputLabelRoot--VGQ5g{font-size:14px}.CommentDialog-dialogActions--4669K{border-top:1px solid rgba(0,0,0,.12);padding:4px 2px}.CommentDialog-asterisk--8ondZ{color:red}`;
|
|
7
|
+
head.appendChild(style);
|
|
8
|
+
}
|
|
9
|
+
module.exports = styles;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import React, { ReactNode } from 'react';
|
|
2
|
+
type DialogOptions = {
|
|
3
|
+
title?: string;
|
|
4
|
+
message?: string;
|
|
5
|
+
confirmLabel?: string;
|
|
6
|
+
cancelLabel?: string;
|
|
7
|
+
defaultComment?: string;
|
|
8
|
+
required?: boolean;
|
|
9
|
+
};
|
|
10
|
+
type DialogResult = string | null;
|
|
11
|
+
type CommentDialogContextType = (options?: DialogOptions) => Promise<DialogResult>;
|
|
12
|
+
export declare const useCommentDialog: () => CommentDialogContextType;
|
|
13
|
+
export declare const CommentDialogProvider: ({ children }: {
|
|
14
|
+
children: ReactNode;
|
|
15
|
+
}) => React.JSX.Element;
|
|
16
|
+
export {};
|
|
@@ -0,0 +1,68 @@
|
|
|
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 __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
14
|
+
if (k2 === undefined) k2 = k;
|
|
15
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
16
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
17
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
18
|
+
}
|
|
19
|
+
Object.defineProperty(o, k2, desc);
|
|
20
|
+
}) : (function(o, m, k, k2) {
|
|
21
|
+
if (k2 === undefined) k2 = k;
|
|
22
|
+
o[k2] = m[k];
|
|
23
|
+
}));
|
|
24
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
25
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
26
|
+
}) : function(o, v) {
|
|
27
|
+
o["default"] = v;
|
|
28
|
+
});
|
|
29
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
30
|
+
if (mod && mod.__esModule) return mod;
|
|
31
|
+
var result = {};
|
|
32
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
33
|
+
__setModuleDefault(result, mod);
|
|
34
|
+
return result;
|
|
35
|
+
};
|
|
36
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
37
|
+
exports.CommentDialogProvider = exports.useCommentDialog = void 0;
|
|
38
|
+
var CommentDialog_1 = require("../../CommentDialog/CommentDialog");
|
|
39
|
+
var react_1 = __importStar(require("react"));
|
|
40
|
+
var CommentDialogContext = (0, react_1.createContext)(undefined);
|
|
41
|
+
var useCommentDialog = function () {
|
|
42
|
+
var context = (0, react_1.useContext)(CommentDialogContext);
|
|
43
|
+
if (!context)
|
|
44
|
+
throw new Error('useCommentDialog must be used within CommentDialogProvider');
|
|
45
|
+
return context;
|
|
46
|
+
};
|
|
47
|
+
exports.useCommentDialog = useCommentDialog;
|
|
48
|
+
var CommentDialogProvider = function (_a) {
|
|
49
|
+
var children = _a.children;
|
|
50
|
+
var _b = (0, react_1.useState)(null), options = _b[0], setOptions = _b[1];
|
|
51
|
+
var commentResolverRef = (0, react_1.useRef)(null);
|
|
52
|
+
var showCommentDialog = (0, react_1.useCallback)(function (options) {
|
|
53
|
+
setOptions(options || {});
|
|
54
|
+
return new Promise(function (resolve) {
|
|
55
|
+
commentResolverRef.current = resolve;
|
|
56
|
+
});
|
|
57
|
+
}, []);
|
|
58
|
+
var handleClose = function (result) {
|
|
59
|
+
var _a;
|
|
60
|
+
setOptions(null);
|
|
61
|
+
(_a = commentResolverRef.current) === null || _a === void 0 ? void 0 : _a.call(commentResolverRef, result);
|
|
62
|
+
commentResolverRef.current = null;
|
|
63
|
+
};
|
|
64
|
+
return (react_1.default.createElement(CommentDialogContext.Provider, { value: showCommentDialog },
|
|
65
|
+
children,
|
|
66
|
+
options && react_1.default.createElement(CommentDialog_1.CommentDialog, __assign({}, options, { onConfirm: handleClose, onCancel: function () { return handleClose(null); } }))));
|
|
67
|
+
};
|
|
68
|
+
exports.CommentDialogProvider = CommentDialogProvider;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { WorkflowDefinition } from '@reltio/mdm-sdk';
|
|
3
|
+
type WorkflowDefinitionsContextType = {
|
|
4
|
+
definitions: WorkflowDefinition[];
|
|
5
|
+
loading: boolean;
|
|
6
|
+
};
|
|
7
|
+
export declare const WorkflowDefinitionsContext: React.Context<WorkflowDefinitionsContextType>;
|
|
8
|
+
export declare const WorkflowDefinitionsProvider: ({ children }: {
|
|
9
|
+
children: React.ReactNode;
|
|
10
|
+
}) => React.JSX.Element;
|
|
11
|
+
export {};
|
|
@@ -0,0 +1,25 @@
|
|
|
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.WorkflowDefinitionsProvider = exports.WorkflowDefinitionsContext = void 0;
|
|
7
|
+
var react_1 = __importDefault(require("react"));
|
|
8
|
+
var useWorkflowDefinitions_1 = require("../../features/workflow/hooks/useWorkflowDefinitions");
|
|
9
|
+
var useWorkflowCheckPermission_1 = require("../../features/workflow/hooks/useWorkflowCheckPermission");
|
|
10
|
+
var MdmModuleContext_1 = require("../MdmModuleContext");
|
|
11
|
+
exports.WorkflowDefinitionsContext = react_1.default.createContext({
|
|
12
|
+
definitions: [],
|
|
13
|
+
loading: false
|
|
14
|
+
});
|
|
15
|
+
exports.WorkflowDefinitionsContext.displayName = 'WorkflowDefinitionsContext';
|
|
16
|
+
var WorkflowDefinitionsProvider = function (_a) {
|
|
17
|
+
var children = _a.children;
|
|
18
|
+
var isWorkflowEnabled = (0, MdmModuleContext_1.useMdmIsWorkflowEnabled)();
|
|
19
|
+
var checkWorkflowPermission = (0, useWorkflowCheckPermission_1.useWorkflowCheckPermission)();
|
|
20
|
+
var canViewProcessDefinitions = checkWorkflowPermission('VIEW_PROCESS_DEFINITIONS');
|
|
21
|
+
var canViewDefinitions = isWorkflowEnabled && canViewProcessDefinitions;
|
|
22
|
+
var workflowDefinitions = (0, useWorkflowDefinitions_1.useWorkflowDefinitions)({ all: true, canViewDefinitions: canViewDefinitions });
|
|
23
|
+
return (react_1.default.createElement(exports.WorkflowDefinitionsContext.Provider, { value: workflowDefinitions }, children));
|
|
24
|
+
};
|
|
25
|
+
exports.WorkflowDefinitionsProvider = WorkflowDefinitionsProvider;
|
|
@@ -35,9 +35,10 @@ var Snackbar_1 = __importDefault(require("@mui/material/Snackbar"));
|
|
|
35
35
|
var Popover_1 = __importDefault(require("@mui/material/Popover"));
|
|
36
36
|
var Typography_1 = __importDefault(require("@mui/material/Typography"));
|
|
37
37
|
var Button_1 = __importDefault(require("@mui/material/Button"));
|
|
38
|
-
var
|
|
38
|
+
var DropDownSelector_1 = require("../../../DropDownSelector");
|
|
39
39
|
var useWorkflowDefinitions_1 = require("../hooks/useWorkflowDefinitions");
|
|
40
40
|
var useWorkflowProcessInstance_1 = require("../hooks/useWorkflowProcessInstance");
|
|
41
|
+
var common_1 = require("../helpers/common");
|
|
41
42
|
var styles_1 = require("./styles");
|
|
42
43
|
var AddWorkflowDialog = function (_a) {
|
|
43
44
|
var anchorEl = _a.anchorEl, onClose = _a.onClose;
|
|
@@ -45,8 +46,8 @@ var AddWorkflowDialog = function (_a) {
|
|
|
45
46
|
var _b = (0, react_1.useState)(''), comment = _b[0], setComment = _b[1];
|
|
46
47
|
var _c = (0, react_1.useState)(null), taskType = _c[0], setTaskType = _c[1];
|
|
47
48
|
var _d = (0, react_1.useState)(false), isOpenSnackbar = _d[0], setIsOpenSnackbar = _d[1];
|
|
48
|
-
var
|
|
49
|
-
var
|
|
49
|
+
var _e = (0, useWorkflowDefinitions_1.useWorkflowDefinitions)(), definitions = _e.definitions, loadingDefinitions = _e.loading;
|
|
50
|
+
var _f = (0, useWorkflowProcessInstance_1.useWorkflowProcessInstance)(), processInstance = _f.processInstance, loading = _f.loading;
|
|
50
51
|
var handleChangeComment = function (e) {
|
|
51
52
|
setComment(e.target.value);
|
|
52
53
|
};
|
|
@@ -67,6 +68,9 @@ var AddWorkflowDialog = function (_a) {
|
|
|
67
68
|
setIsOpenSnackbar(false);
|
|
68
69
|
};
|
|
69
70
|
var open = Boolean(anchorEl);
|
|
71
|
+
var currentDefinition = (0, common_1.findWorkflowDefinitionByType)(definitions, taskType === null || taskType === void 0 ? void 0 : taskType.value);
|
|
72
|
+
var isCommentRequired = (currentDefinition === null || currentDefinition === void 0 ? void 0 : currentDefinition.requiresCommentOnStart) || false;
|
|
73
|
+
var isStartButtonDisabled = loading || taskType === null || loadingDefinitions || (isCommentRequired && !comment);
|
|
70
74
|
return (react_1.default.createElement(react_1.default.Fragment, null,
|
|
71
75
|
react_1.default.createElement(Popover_1.default, { open: open, anchorEl: anchorEl, onClose: onClose, anchorOrigin: {
|
|
72
76
|
vertical: 'bottom',
|
|
@@ -79,26 +83,26 @@ var AddWorkflowDialog = function (_a) {
|
|
|
79
83
|
} },
|
|
80
84
|
react_1.default.createElement("div", { className: styles.content },
|
|
81
85
|
react_1.default.createElement(Typography_1.default, { className: styles.title }, ui_i18n_1.default.text('Add new workflow')),
|
|
82
|
-
react_1.default.createElement(
|
|
83
|
-
InputProps: {
|
|
84
|
-
disableUnderline: true
|
|
85
|
-
}
|
|
86
|
-
}, placeholder: ui_i18n_1.default.text('Select task type'), value: taskType, onChange: handleChangeTaskType, label: '', options: definitions.map(function (definition) {
|
|
86
|
+
react_1.default.createElement(DropDownSelector_1.DropDownSelector, { className: styles.simpleDropDownSelector, height: 44, value: taskType, onChange: handleChangeTaskType, label: ui_i18n_1.default.text('Select task type'), options: definitions.map(function (definition) {
|
|
87
87
|
return {
|
|
88
88
|
value: definition.type,
|
|
89
89
|
label: definition.displayName
|
|
90
90
|
};
|
|
91
91
|
}) }),
|
|
92
|
-
react_1.default.createElement(TextField_1.default, { variant: "filled", hiddenLabel: true, size: "small",
|
|
93
|
-
disableUnderline: true,
|
|
92
|
+
react_1.default.createElement(TextField_1.default, { variant: "filled", hiddenLabel: true, size: "small", minRows: 1, required: isCommentRequired, label: ui_i18n_1.default.text('Type a comment'), InputProps: {
|
|
94
93
|
classes: {
|
|
95
94
|
input: styles.input,
|
|
96
95
|
root: styles.inputRoot
|
|
97
96
|
}
|
|
97
|
+
}, InputLabelProps: {
|
|
98
|
+
classes: {
|
|
99
|
+
root: styles.inputLabelRoot,
|
|
100
|
+
asterisk: styles.asterisk
|
|
101
|
+
}
|
|
98
102
|
}, value: comment, onChange: handleChangeComment, multiline: true })),
|
|
99
103
|
react_1.default.createElement("div", { className: styles.footer },
|
|
100
104
|
react_1.default.createElement(Button_1.default, { disabled: loading, className: styles.cancelButton, onClick: onClose }, ui_i18n_1.default.text('Cancel')),
|
|
101
|
-
react_1.default.createElement(Button_1.default, { disabled:
|
|
105
|
+
react_1.default.createElement(Button_1.default, { disabled: isStartButtonDisabled, color: "primary", onClick: handleStart }, ui_i18n_1.default.text('Start')))),
|
|
102
106
|
react_1.default.createElement(Portal_1.default, { container: document.body },
|
|
103
107
|
react_1.default.createElement(Snackbar_1.default, { open: isOpenSnackbar, autoHideDuration: 5000, onClose: handleCloseSnackbar, message: ui_i18n_1.default.text('A new workflow has started'), anchorOrigin: { vertical: 'bottom', horizontal: 'center' } }))));
|
|
104
108
|
};
|
|
@@ -61,7 +61,7 @@ var constants_1 = require("../../../constants");
|
|
|
61
61
|
var MdmModuleContext_1 = require("../../../contexts/MdmModuleContext");
|
|
62
62
|
var WorkflowTasksContext_1 = require("../../../contexts/WorkflowTasksContext");
|
|
63
63
|
var AddWorkflowDialog_1 = require("./AddWorkflowDialog");
|
|
64
|
-
jest.mock('@reltio/mdm-sdk', function () { return (__assign(__assign({}, jest.requireActual('@reltio/mdm-sdk')), { processDefinitions: jest.fn(), startProcessInstance: jest.fn() })); });
|
|
64
|
+
jest.mock('@reltio/mdm-sdk', function () { return (__assign(__assign({}, jest.requireActual('@reltio/mdm-sdk')), { processDefinitions: jest.fn(), startProcessInstance: jest.fn(), memoizeWith: jest.fn(function (keyFn, fn) { return fn; }) })); });
|
|
65
65
|
var tenant = { id: 'alenat', name: 'alenat' };
|
|
66
66
|
var workflowEnvironmentUrl = 'https://tst-01.reltio.com';
|
|
67
67
|
var workflowPath = 'https://tst-01-workflow.reltio.com/workflow-adapter';
|
|
@@ -136,7 +136,7 @@ describe('AddWorkflowDialog tests', function () {
|
|
|
136
136
|
});
|
|
137
137
|
}); });
|
|
138
138
|
it('should render Popover and selector correctly if anchorEl exists', function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
139
|
-
var mockAnchorEl, props, user;
|
|
139
|
+
var mockAnchorEl, props, user, dropdown;
|
|
140
140
|
return __generator(this, function (_a) {
|
|
141
141
|
switch (_a.label) {
|
|
142
142
|
case 0:
|
|
@@ -147,10 +147,10 @@ describe('AddWorkflowDialog tests', function () {
|
|
|
147
147
|
};
|
|
148
148
|
user = setUp(props).user;
|
|
149
149
|
expect(react_2.screen.getByText('Add new workflow')).toBeInTheDocument();
|
|
150
|
-
|
|
150
|
+
dropdown = react_2.screen.getByRole('combobox');
|
|
151
|
+
return [4 /*yield*/, user.click(dropdown)];
|
|
151
152
|
case 1:
|
|
152
153
|
_a.sent();
|
|
153
|
-
expect(react_2.screen.getByText('RDM Data Change Request Review')).toBeInTheDocument();
|
|
154
154
|
expect(react_2.screen.getByText('Data Verification With Loop')).toBeInTheDocument();
|
|
155
155
|
expect(react_2.screen.getByText('Account onboarding')).toBeInTheDocument();
|
|
156
156
|
return [2 /*return*/];
|
|
@@ -170,13 +170,14 @@ describe('AddWorkflowDialog tests', function () {
|
|
|
170
170
|
};
|
|
171
171
|
user = setUp(props).user;
|
|
172
172
|
expect(react_2.screen.getByText('Add new workflow')).toBeInTheDocument();
|
|
173
|
-
return [4 /*yield*/, user.click(react_2.screen.
|
|
173
|
+
return [4 /*yield*/, user.click(react_2.screen.getByRole('combobox'))];
|
|
174
174
|
case 1:
|
|
175
175
|
_a.sent();
|
|
176
|
+
expect(react_2.screen.getByText('RDM Data Change Request Review')).toBeInTheDocument();
|
|
176
177
|
return [4 /*yield*/, user.click(react_2.screen.getByText('RDM Data Change Request Review'))];
|
|
177
178
|
case 2:
|
|
178
179
|
_a.sent();
|
|
179
|
-
comment = react_2.screen.
|
|
180
|
+
comment = react_2.screen.getByLabelText('Type a comment');
|
|
180
181
|
return [4 /*yield*/, user.type(comment, 'comment')];
|
|
181
182
|
case 3:
|
|
182
183
|
_a.sent();
|
|
@@ -215,13 +216,13 @@ describe('AddWorkflowDialog tests', function () {
|
|
|
215
216
|
};
|
|
216
217
|
user = setUp(props).user;
|
|
217
218
|
expect(react_2.screen.getByText('Add new workflow')).toBeInTheDocument();
|
|
218
|
-
return [4 /*yield*/, user.click(react_2.screen.
|
|
219
|
+
return [4 /*yield*/, user.click(react_2.screen.getByRole('combobox'))];
|
|
219
220
|
case 1:
|
|
220
221
|
_a.sent();
|
|
221
222
|
return [4 /*yield*/, user.click(react_2.screen.getByText('RDM Data Change Request Review'))];
|
|
222
223
|
case 2:
|
|
223
224
|
_a.sent();
|
|
224
|
-
comment = react_2.screen.
|
|
225
|
+
comment = react_2.screen.getByLabelText('Type a comment');
|
|
225
226
|
return [4 /*yield*/, user.type(comment, 'comment')];
|
|
226
227
|
case 3:
|
|
227
228
|
_a.sent();
|
|
@@ -256,7 +257,7 @@ describe('AddWorkflowDialog tests', function () {
|
|
|
256
257
|
anchorEl: mockAnchorEl
|
|
257
258
|
};
|
|
258
259
|
user = setUp(props).user;
|
|
259
|
-
return [4 /*yield*/, user.click(react_2.screen.
|
|
260
|
+
return [4 /*yield*/, user.click(react_2.screen.getByRole('combobox'))];
|
|
260
261
|
case 1:
|
|
261
262
|
_a.sent();
|
|
262
263
|
expect(consoleSpy).toHaveBeenCalledWith('Workflow error', 'Some error');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const useStyles: (props?: any) => import("@mui/styles").ClassNameMap<"content" | "title" | "footer" | "input" | "select" | "inputRoot" | "cancelButton" | "popoverPaper" | "simpleDropDownSelector">;
|
|
1
|
+
export declare const useStyles: (props?: any) => import("@mui/styles").ClassNameMap<"content" | "title" | "footer" | "input" | "select" | "inputRoot" | "asterisk" | "cancelButton" | "inputLabelRoot" | "popoverPaper" | "simpleDropDownSelector">;
|
|
@@ -12,20 +12,26 @@ exports.useStyles = (0, styles_1.makeStyles)(function (theme) { return ({
|
|
|
12
12
|
letterSpacing: '0.25px',
|
|
13
13
|
lineHeight: '24px',
|
|
14
14
|
color: theme.palette.text.primary,
|
|
15
|
-
marginBottom: '
|
|
15
|
+
marginBottom: '20px'
|
|
16
16
|
},
|
|
17
17
|
content: {
|
|
18
18
|
display: 'flex',
|
|
19
19
|
flexDirection: 'column',
|
|
20
|
-
padding: '
|
|
20
|
+
padding: '18px 16px 20px 16px'
|
|
21
21
|
},
|
|
22
22
|
simpleDropDownSelector: {
|
|
23
23
|
marginBottom: '20px'
|
|
24
24
|
},
|
|
25
25
|
inputRoot: {
|
|
26
|
-
paddingTop: '
|
|
26
|
+
paddingTop: '12px !important',
|
|
27
27
|
paddingBottom: '0 !important'
|
|
28
28
|
},
|
|
29
|
+
inputLabelRoot: {
|
|
30
|
+
fontSize: '14px'
|
|
31
|
+
},
|
|
32
|
+
asterisk: {
|
|
33
|
+
color: 'red'
|
|
34
|
+
},
|
|
29
35
|
select: {
|
|
30
36
|
fontSize: '14px'
|
|
31
37
|
},
|
|
@@ -39,6 +45,7 @@ exports.useStyles = (0, styles_1.makeStyles)(function (theme) { return ({
|
|
|
39
45
|
marginRight: '8px'
|
|
40
46
|
},
|
|
41
47
|
input: {
|
|
42
|
-
fontSize: '14px'
|
|
48
|
+
fontSize: '14px',
|
|
49
|
+
paddingBottom: '5px'
|
|
43
50
|
}
|
|
44
51
|
}); });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const useStyles: (props?: any) => import("@mui/styles").ClassNameMap<"caption" | "disabled" | "title" | "currentAssignee" | "
|
|
1
|
+
export declare const useStyles: (props?: any) => import("@mui/styles").ClassNameMap<"caption" | "disabled" | "title" | "currentAssignee" | "dialogContent" | "dialogText">;
|
|
@@ -57,6 +57,7 @@ var user_event_1 = __importDefault(require("@testing-library/user-event"));
|
|
|
57
57
|
var TaskActionButtons_1 = require("../TaskActionButtons");
|
|
58
58
|
var WorkflowTasksContext_1 = require("../../../contexts/WorkflowTasksContext");
|
|
59
59
|
var MdmModuleContext_1 = require("../../../contexts/MdmModuleContext");
|
|
60
|
+
var CommentDialogContext_1 = require("../../../contexts/CommentDialogContext");
|
|
60
61
|
jest.mock('@reltio/mdm-sdk', function () { return (__assign(__assign({}, jest.requireActual('@reltio/mdm-sdk')), { runTaskAction: jest.fn() })); });
|
|
61
62
|
var task = {
|
|
62
63
|
assignee: 'somebody',
|
|
@@ -97,7 +98,8 @@ var setUp = function (props) {
|
|
|
97
98
|
var Providers = function (_a) {
|
|
98
99
|
var children = _a.children;
|
|
99
100
|
return (react_1.default.createElement(WorkflowTasksContext_1.WorkflowTasksContext.Provider, { value: workflowTaskContextValue },
|
|
100
|
-
react_1.default.createElement(
|
|
101
|
+
react_1.default.createElement(CommentDialogContext_1.CommentDialogProvider, null,
|
|
102
|
+
react_1.default.createElement(MdmModuleContext_1.MdmModuleProvider, { values: mdmValues }, children))));
|
|
101
103
|
};
|
|
102
104
|
return __assign(__assign({}, (0, react_2.render)(react_1.default.createElement(TaskActionButtons_1.TaskActionButtons, __assign({}, props)), { wrapper: Providers })), { user: user });
|
|
103
105
|
};
|
|
@@ -137,4 +139,55 @@ describe('TaskActionButtons tests', function () {
|
|
|
137
139
|
}
|
|
138
140
|
});
|
|
139
141
|
}); });
|
|
142
|
+
describe('required comments', function () {
|
|
143
|
+
it('should show comment dialog if commentRequired is true', function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
144
|
+
var task, user, dialog, textfield;
|
|
145
|
+
return __generator(this, function (_a) {
|
|
146
|
+
switch (_a.label) {
|
|
147
|
+
case 0:
|
|
148
|
+
task = __assign(__assign({}, defaultProps.task), { possibleActions: [
|
|
149
|
+
{ action: 'Approve', label: 'Approve', commentRequired: false },
|
|
150
|
+
{ action: 'Reject', label: 'Reject', commentRequired: true }
|
|
151
|
+
] });
|
|
152
|
+
user = setUp({ task: task }).user;
|
|
153
|
+
return [4 /*yield*/, user.click(react_2.screen.getByText('Reject'))];
|
|
154
|
+
case 1:
|
|
155
|
+
_a.sent();
|
|
156
|
+
expect(onActionSuccess).not.toHaveBeenCalledWith('Reject');
|
|
157
|
+
dialog = react_2.screen.getAllByRole('presentation')[1];
|
|
158
|
+
expect((0, react_2.within)(dialog).getByText('Please provide a comment for your action')).toBeInTheDocument();
|
|
159
|
+
expect((0, react_2.within)(dialog).getByText('Type a comment')).toBeInTheDocument();
|
|
160
|
+
expect((0, react_2.within)(dialog).getByText('Cancel')).toBeInTheDocument();
|
|
161
|
+
expect((0, react_2.within)(dialog).getByText('Done')).toBeInTheDocument();
|
|
162
|
+
return [4 /*yield*/, user.click((0, react_2.within)(dialog).getByText('Cancel'))];
|
|
163
|
+
case 2:
|
|
164
|
+
_a.sent();
|
|
165
|
+
expect(onActionSuccess).not.toHaveBeenCalled();
|
|
166
|
+
return [4 /*yield*/, user.click(react_2.screen.getByText('Reject'))];
|
|
167
|
+
case 3:
|
|
168
|
+
_a.sent();
|
|
169
|
+
textfield = react_2.screen.getAllByRole('textbox')[0];
|
|
170
|
+
return [4 /*yield*/, user.click(textfield)];
|
|
171
|
+
case 4:
|
|
172
|
+
_a.sent();
|
|
173
|
+
return [4 /*yield*/, user.paste('test comment')];
|
|
174
|
+
case 5:
|
|
175
|
+
_a.sent();
|
|
176
|
+
return [4 /*yield*/, user.click((0, react_2.within)(react_2.screen.getAllByRole('presentation')[1]).getByText('Done'))];
|
|
177
|
+
case 6:
|
|
178
|
+
_a.sent();
|
|
179
|
+
expect(onActionSuccess).toHaveBeenCalledWith('Reject');
|
|
180
|
+
expect(mdm_sdk_1.runTaskAction).toHaveBeenCalledWith({
|
|
181
|
+
taskId: '38453993',
|
|
182
|
+
workflowPath: 'workflowPath',
|
|
183
|
+
environment: 'workflowEnvironmentURL',
|
|
184
|
+
tenant: 't1',
|
|
185
|
+
action: 'Reject',
|
|
186
|
+
processInstanceComment: 'test comment'
|
|
187
|
+
});
|
|
188
|
+
return [2 /*return*/];
|
|
189
|
+
}
|
|
190
|
+
});
|
|
191
|
+
}); });
|
|
192
|
+
});
|
|
140
193
|
});
|
|
@@ -67,6 +67,7 @@ var WorkflowTaskCard_1 = require("./WorkflowTaskCard");
|
|
|
67
67
|
var LocalizationProvider_1 = require("@mui/x-date-pickers/LocalizationProvider");
|
|
68
68
|
var AdapterMoment_1 = require("@mui/x-date-pickers/AdapterMoment");
|
|
69
69
|
var MdmModuleContext_1 = require("../../../contexts/MdmModuleContext");
|
|
70
|
+
var CommentDialogContext_1 = require("../../../contexts/CommentDialogContext");
|
|
70
71
|
jest.mock('@reltio/mdm-sdk', function () { return (__assign(__assign({}, jest.requireActual('@reltio/mdm-sdk')), { getDataChangeRequest: jest.fn(), getEntitiesByUris: jest.fn() })); });
|
|
71
72
|
jest.mock('../../../icons/DefaultTaskIcon', function () {
|
|
72
73
|
var MockDefaultTaskIcon = function () { return react_1.default.createElement("div", { "data-reltio-id": "default-task-icon" }); };
|
|
@@ -102,7 +103,8 @@ describe('WorkflowTaskCard tests', function () {
|
|
|
102
103
|
var Providers = function (_a) {
|
|
103
104
|
var children = _a.children;
|
|
104
105
|
return (react_1.default.createElement(LocalizationProvider_1.LocalizationProvider, { dateAdapter: AdapterMoment_1.AdapterMoment },
|
|
105
|
-
react_1.default.createElement(
|
|
106
|
+
react_1.default.createElement(CommentDialogContext_1.CommentDialogProvider, null,
|
|
107
|
+
react_1.default.createElement(MdmModuleContext_1.MdmModuleProvider, { values: mdmValues }, children))));
|
|
106
108
|
};
|
|
107
109
|
return __assign({ user: user }, (0, react_2.render)(react_1.default.createElement(WorkflowTaskCard_1.WorkflowTaskCard, { task: __assign(__assign({}, defaultTask), task) }), { wrapper: Providers }));
|
|
108
110
|
};
|
|
@@ -67,6 +67,7 @@ var LocalizationProvider_1 = require("@mui/x-date-pickers/LocalizationProvider")
|
|
|
67
67
|
var AdapterMoment_1 = require("@mui/x-date-pickers/AdapterMoment");
|
|
68
68
|
var mdm_sdk_1 = require("@reltio/mdm-sdk");
|
|
69
69
|
var MdmModuleContext_1 = require("../../../../../contexts/MdmModuleContext");
|
|
70
|
+
var CommentDialogContext_1 = require("../../../../../contexts/CommentDialogContext");
|
|
70
71
|
var DataChangeRequestTaskCard_1 = require("./DataChangeRequestTaskCard");
|
|
71
72
|
jest.mock('@reltio/mdm-sdk', function () { return (__assign(__assign({}, jest.requireActual('@reltio/mdm-sdk')), { getDataChangeRequest: jest.fn(), getEntitiesByUris: jest.fn() })); });
|
|
72
73
|
jest.mock('../../../../../contexts/MdmModuleContext', function () { return (__assign(__assign({}, jest.requireActual('../../../../../contexts/MdmModuleContext')), { useMdmMetadata: jest.fn() })); });
|
|
@@ -263,7 +264,8 @@ describe('DataChangeRequestTaskCard tests', function () {
|
|
|
263
264
|
var user = user_event_1.default.setup();
|
|
264
265
|
var Providers = function (_a) {
|
|
265
266
|
var children = _a.children;
|
|
266
|
-
return (react_1.default.createElement(LocalizationProvider_1.LocalizationProvider, { dateAdapter: AdapterMoment_1.AdapterMoment },
|
|
267
|
+
return (react_1.default.createElement(LocalizationProvider_1.LocalizationProvider, { dateAdapter: AdapterMoment_1.AdapterMoment },
|
|
268
|
+
react_1.default.createElement(CommentDialogContext_1.CommentDialogProvider, null, children)));
|
|
267
269
|
};
|
|
268
270
|
return __assign(__assign({}, (0, react_2.render)(react_1.default.createElement(DataChangeRequestTaskCard_1.DataChangeRequestTaskCard, { task: task }), { wrapper: Providers })), { user: user });
|
|
269
271
|
};
|