@reltio/components 1.4.885 → 1.4.890
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/ConfigureColumnsPopup/ConfigureColumnsPopup.js +17 -14
- package/cjs/components/DropDownSelector/DropDownSelector.d.ts +3 -1
- package/cjs/components/DropDownSelector/DropDownSelector.js +5 -3
- package/cjs/components/EntityTypesSelector/styles.d.ts +1 -1
- package/cjs/components/ErrorWrapper/styles.d.ts +1 -1
- package/cjs/components/attributes/editMode/AttributesPager/SpecialRenderer.js +2 -2
- package/cjs/components/attributes/editMode/Roles/Roles.d.ts +6 -0
- package/cjs/components/attributes/editMode/Roles/Roles.js +64 -0
- package/cjs/components/attributes/editMode/Roles/styles.d.ts +1 -0
- package/cjs/components/attributes/editMode/Roles/styles.js +10 -0
- package/cjs/components/crosswalks/CrosswalkDateEditor/CrosswalkDateEditor.js +1 -4
- package/cjs/components/editors/DateEditor/DateEditor.d.ts +14 -21
- package/cjs/components/editors/DateEditor/DateEditor.js +10 -19
- package/cjs/components/editors/DateEditor/styles.d.ts +1 -1
- package/cjs/components/editors/DateRangeEditor/styles.d.ts +1 -1
- package/cjs/components/editors/TimestampEditor/TimestampEditor.d.ts +18 -21
- package/cjs/components/editors/TimestampEditor/TimestampEditor.js +9 -19
- package/cjs/components/editors/TimestampEditor/styles.d.ts +1 -1
- package/cjs/components/workflow/cards/GenericWorkflowTaskCard/GenericWorkflowTaskCard.js +6 -6
- package/cjs/components/workflow/components/AssigneeSelector/AssigneeSelector.d.ts +4 -2
- package/cjs/components/workflow/components/AssigneeSelector/AssigneeSelector.js +3 -2
- package/cjs/components/workflow/components/DueDateField/DueDateField.d.ts +2 -1
- package/cjs/components/workflow/components/DueDateField/DueDateField.js +6 -2
- package/cjs/components/workflow/components/DueDateField/styles.d.ts +1 -1
- package/cjs/components/workflow/components/PrioritySelector/PrioritySelector.d.ts +2 -1
- package/cjs/components/workflow/components/PrioritySelector/PrioritySelector.js +6 -2
- package/cjs/components/workflow/components/TaskActions/TaskActions.d.ts +4 -2
- package/cjs/components/workflow/components/TaskActions/TaskActions.js +7 -2
- package/cjs/components/workflow/components/WorkflowComments/WorkflowComments.d.ts +2 -1
- package/cjs/components/workflow/components/WorkflowComments/WorkflowComments.js +6 -2
- package/cjs/components/workflow/helpers/index.d.ts +3 -1
- package/cjs/components/workflow/helpers/index.js +3 -1
- package/cjs/components/workflow/hooks/useWorkflowActions.d.ts +1 -1
- package/cjs/components/workflow/hooks/useWorkflowActions.js +4 -3
- package/cjs/components/workflow/hooks/useWorkflowAssignee.d.ts +1 -1
- package/cjs/components/workflow/hooks/useWorkflowAssignee.js +3 -2
- package/cjs/components/workflow/hooks/useWorkflowComments.d.ts +1 -1
- package/cjs/components/workflow/hooks/useWorkflowComments.js +3 -2
- package/cjs/components/workflow/hooks/useWorkflowDueDate.d.ts +1 -1
- package/cjs/components/workflow/hooks/useWorkflowDueDate.js +3 -2
- package/cjs/components/workflow/hooks/useWorkflowPriority.d.ts +1 -1
- package/cjs/components/workflow/hooks/useWorkflowPriority.js +3 -2
- package/cjs/{hooks → components/workflow/hooks}/useWorkflowTasks.d.ts +7 -1
- package/cjs/{hooks → components/workflow/hooks}/useWorkflowTasks.js +28 -17
- package/cjs/components/workflow/index.d.ts +1 -0
- package/cjs/components/workflow/index.js +3 -1
- package/cjs/constants/prop-types.d.ts +0 -1
- package/cjs/constants/prop-types.js +1 -3
- package/cjs/hooks/index.d.ts +0 -1
- package/cjs/hooks/index.js +1 -3
- package/esm/components/ConfigureColumnsPopup/ConfigureColumnsPopup.js +17 -14
- package/esm/components/DropDownSelector/DropDownSelector.d.ts +3 -1
- package/esm/components/DropDownSelector/DropDownSelector.js +5 -3
- package/esm/components/EntityTypesSelector/styles.d.ts +1 -1
- package/esm/components/ErrorWrapper/styles.d.ts +1 -1
- package/esm/components/attributes/editMode/AttributesPager/SpecialRenderer.js +1 -1
- package/esm/components/attributes/editMode/Roles/Roles.d.ts +6 -0
- package/esm/components/attributes/editMode/Roles/Roles.js +38 -0
- package/esm/components/attributes/editMode/Roles/styles.d.ts +1 -0
- package/esm/components/attributes/editMode/Roles/styles.js +7 -0
- package/esm/components/crosswalks/CrosswalkDateEditor/CrosswalkDateEditor.js +1 -4
- package/esm/components/editors/DateEditor/DateEditor.d.ts +14 -21
- package/esm/components/editors/DateEditor/DateEditor.js +10 -19
- package/esm/components/editors/DateEditor/styles.d.ts +1 -1
- package/esm/components/editors/DateRangeEditor/styles.d.ts +1 -1
- package/esm/components/editors/TimestampEditor/TimestampEditor.d.ts +18 -21
- package/esm/components/editors/TimestampEditor/TimestampEditor.js +9 -19
- package/esm/components/editors/TimestampEditor/styles.d.ts +1 -1
- package/esm/components/workflow/cards/GenericWorkflowTaskCard/GenericWorkflowTaskCard.js +6 -6
- package/esm/components/workflow/components/AssigneeSelector/AssigneeSelector.d.ts +4 -2
- package/esm/components/workflow/components/AssigneeSelector/AssigneeSelector.js +3 -2
- package/esm/components/workflow/components/DueDateField/DueDateField.d.ts +2 -1
- package/esm/components/workflow/components/DueDateField/DueDateField.js +6 -2
- package/esm/components/workflow/components/DueDateField/styles.d.ts +1 -1
- package/esm/components/workflow/components/PrioritySelector/PrioritySelector.d.ts +2 -1
- package/esm/components/workflow/components/PrioritySelector/PrioritySelector.js +6 -2
- package/esm/components/workflow/components/TaskActions/TaskActions.d.ts +4 -2
- package/esm/components/workflow/components/TaskActions/TaskActions.js +7 -2
- package/esm/components/workflow/components/WorkflowComments/WorkflowComments.d.ts +2 -1
- package/esm/components/workflow/components/WorkflowComments/WorkflowComments.js +6 -2
- package/esm/components/workflow/helpers/index.d.ts +3 -1
- package/esm/components/workflow/helpers/index.js +2 -1
- package/esm/components/workflow/hooks/useWorkflowActions.d.ts +1 -1
- package/esm/components/workflow/hooks/useWorkflowActions.js +4 -3
- package/esm/components/workflow/hooks/useWorkflowAssignee.d.ts +1 -1
- package/esm/components/workflow/hooks/useWorkflowAssignee.js +3 -2
- package/esm/components/workflow/hooks/useWorkflowComments.d.ts +1 -1
- package/esm/components/workflow/hooks/useWorkflowComments.js +3 -2
- package/esm/components/workflow/hooks/useWorkflowDueDate.d.ts +1 -1
- package/esm/components/workflow/hooks/useWorkflowDueDate.js +3 -2
- package/esm/components/workflow/hooks/useWorkflowPriority.d.ts +1 -1
- package/esm/components/workflow/hooks/useWorkflowPriority.js +3 -2
- package/esm/{hooks → components/workflow/hooks}/useWorkflowTasks.d.ts +7 -1
- package/esm/{hooks → components/workflow/hooks}/useWorkflowTasks.js +28 -17
- package/esm/components/workflow/index.d.ts +1 -0
- package/esm/components/workflow/index.js +1 -0
- package/esm/constants/prop-types.d.ts +0 -1
- package/esm/constants/prop-types.js +1 -2
- package/esm/hooks/index.d.ts +0 -1
- package/esm/hooks/index.js +0 -1
- package/package.json +10 -3
|
@@ -37,11 +37,15 @@ var useWorkflowComments_1 = require("../../hooks/useWorkflowComments");
|
|
|
37
37
|
var SmallIconButton_1 = require("../../../SmallIconButton");
|
|
38
38
|
var getValue = function (e) { return e.target.value; };
|
|
39
39
|
var WorkflowComments = function (_a) {
|
|
40
|
-
var processInstanceComments = _a.processInstanceComments, taskId = _a.taskId;
|
|
40
|
+
var processInstanceComments = _a.processInstanceComments, taskId = _a.taskId, isTaskOpen = _a.isTaskOpen;
|
|
41
41
|
var styles = styles_1.useWorkflowStyles();
|
|
42
42
|
var _b = react_1.useState(false), expanded = _b[0], setExpanded = _b[1];
|
|
43
43
|
var _c = react_1.useState(''), comment = _c[0], setComment = _c[1];
|
|
44
|
-
var _d = useWorkflowComments_1.useWorkflowComments({
|
|
44
|
+
var _d = useWorkflowComments_1.useWorkflowComments({
|
|
45
|
+
processInstanceComments: processInstanceComments,
|
|
46
|
+
taskId: taskId,
|
|
47
|
+
isOpen: isTaskOpen
|
|
48
|
+
}), comments = _d.comments, writeComment = _d.writeComment, readOnly = _d.readOnly;
|
|
45
49
|
var sendComment = react_1.useCallback(function () {
|
|
46
50
|
writeComment(comment);
|
|
47
51
|
setComment('');
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { WorkflowTaskData } from '@reltio/mdm-sdk';
|
|
1
2
|
declare const getDCRUri: (objectUris?: string[]) => string;
|
|
2
3
|
declare const getDCRId: (objectUris?: string[]) => string;
|
|
3
|
-
|
|
4
|
+
declare const isOpenTask: (isOpen: WorkflowTaskData['isOpen']) => boolean;
|
|
5
|
+
export { getDCRUri, getDCRId, isOpenTask };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getDCRId = exports.getDCRUri = void 0;
|
|
3
|
+
exports.isOpenTask = exports.getDCRId = exports.getDCRUri = void 0;
|
|
4
4
|
var ramda_1 = require("ramda");
|
|
5
5
|
var getDCRUri = function (objectUris) {
|
|
6
6
|
if (objectUris === void 0) { objectUris = []; }
|
|
@@ -12,3 +12,5 @@ var getDCRId = function (objectUris) {
|
|
|
12
12
|
return ramda_1.pipe(getDCRUri, ramda_1.unless(ramda_1.isNil, ramda_1.pipe(ramda_1.split('/'), ramda_1.nth(1))))(objectUris);
|
|
13
13
|
};
|
|
14
14
|
exports.getDCRId = getDCRId;
|
|
15
|
+
var isOpenTask = function (isOpen) { return isOpen === undefined || isOpen === true; };
|
|
16
|
+
exports.isOpenTask = isOpenTask;
|
|
@@ -3,7 +3,7 @@ declare type TaskAction = {
|
|
|
3
3
|
text: string;
|
|
4
4
|
onClick: () => void;
|
|
5
5
|
};
|
|
6
|
-
export declare const useWorkflowActions: ({ possibleActions, assignee, taskId }: Pick<WorkflowTaskData, 'taskId' | 'possibleActions' | 'assignee'>) => {
|
|
6
|
+
export declare const useWorkflowActions: ({ possibleActions, assignee, taskId, isOpen }: Pick<WorkflowTaskData, 'taskId' | 'possibleActions' | 'assignee' | 'isOpen'>) => {
|
|
7
7
|
actions: TaskAction[];
|
|
8
8
|
actionRequestIsInProgress: boolean;
|
|
9
9
|
};
|
|
@@ -27,8 +27,9 @@ var mdm_module_1 = __importStar(require("@reltio/mdm-module"));
|
|
|
27
27
|
var ViewIdContext_1 = require("../../../contexts/ViewIdContext");
|
|
28
28
|
var errors_1 = require("../helpers/errors");
|
|
29
29
|
var WorkflowTasksContext_1 = require("../../../contexts/WorkflowTasksContext");
|
|
30
|
+
var helpers_1 = require("../helpers");
|
|
30
31
|
var useWorkflowActions = function (_a) {
|
|
31
|
-
var possibleActions = _a.possibleActions, assignee = _a.assignee, taskId = _a.taskId;
|
|
32
|
+
var possibleActions = _a.possibleActions, assignee = _a.assignee, taskId = _a.taskId, isOpen = _a.isOpen;
|
|
32
33
|
var loadWorkflowTasks = (react_1.useContext(WorkflowTasksContext_1.WorkflowTasksContext) || {}).loadWorkflowTasks;
|
|
33
34
|
var workflowPath = react_redux_1.useSelector(mdm_module_1.default.selectors.getWorkflowPath);
|
|
34
35
|
var environment = react_redux_1.useSelector(mdm_module_1.default.selectors.getWorkflowEnvironmentUrl);
|
|
@@ -65,7 +66,7 @@ var useWorkflowActions = function (_a) {
|
|
|
65
66
|
}
|
|
66
67
|
}; }, [workflowPath, taskId, environment, tenant, dispatch, entityUri, viewId, loadWorkflowTasks]);
|
|
67
68
|
var actions = react_1.useMemo(function () {
|
|
68
|
-
return username === assignee
|
|
69
|
+
return username === assignee && helpers_1.isOpenTask(isOpen)
|
|
69
70
|
? (possibleActions || []).map(function (_a) {
|
|
70
71
|
var action = _a.action, label = _a.label;
|
|
71
72
|
return ({
|
|
@@ -74,7 +75,7 @@ var useWorkflowActions = function (_a) {
|
|
|
74
75
|
});
|
|
75
76
|
})
|
|
76
77
|
: [];
|
|
77
|
-
}, [possibleActions, performTaskAction, username, assignee]);
|
|
78
|
+
}, [possibleActions, performTaskAction, username, assignee, isOpen]);
|
|
78
79
|
return { actions: actions, actionRequestIsInProgress: actionRequestIsInProgress };
|
|
79
80
|
};
|
|
80
81
|
exports.useWorkflowActions = useWorkflowActions;
|
|
@@ -3,7 +3,7 @@ declare type AssigneeOption = {
|
|
|
3
3
|
label: string;
|
|
4
4
|
value: string;
|
|
5
5
|
};
|
|
6
|
-
export declare const useWorkflowAssignee: ({ assignee, taskId }: Pick<WorkflowTaskData, 'taskId' | 'assignee'>) => {
|
|
6
|
+
export declare const useWorkflowAssignee: ({ assignee, taskId, isOpen }: Pick<WorkflowTaskData, 'taskId' | 'assignee' | 'isOpen'>) => {
|
|
7
7
|
assignee: AssigneeOption;
|
|
8
8
|
getAssignees: (text: any) => Promise<void | unknown[]>;
|
|
9
9
|
updateAssignee: (newValue: AssigneeOption) => void;
|
|
@@ -13,12 +13,13 @@ var hooks_1 = require("../../../hooks");
|
|
|
13
13
|
var WorkflowTasksContext_1 = require("../../../contexts/WorkflowTasksContext");
|
|
14
14
|
var errors_1 = require("../helpers/errors");
|
|
15
15
|
var useWorkflowCheckPermission_1 = require("./useWorkflowCheckPermission");
|
|
16
|
+
var helpers_1 = require("../helpers");
|
|
16
17
|
var assigneeToValue = function (assignee) { return ({
|
|
17
18
|
label: assignee,
|
|
18
19
|
value: assignee
|
|
19
20
|
}); };
|
|
20
21
|
var useWorkflowAssignee = function (_a) {
|
|
21
|
-
var assignee = _a.assignee, taskId = _a.taskId;
|
|
22
|
+
var assignee = _a.assignee, taskId = _a.taskId, isOpen = _a.isOpen;
|
|
22
23
|
var updateTaskState = (react_1.useContext(WorkflowTasksContext_1.WorkflowTasksContext) || {}).updateTaskState;
|
|
23
24
|
var workflowPath = react_redux_1.useSelector(mdm_module_1.default.selectors.getWorkflowPath);
|
|
24
25
|
var environment = react_redux_1.useSelector(mdm_module_1.default.selectors.getWorkflowEnvironmentUrl);
|
|
@@ -29,7 +30,7 @@ var useWorkflowAssignee = function (_a) {
|
|
|
29
30
|
var _c = react_1.useState(), assignees = _c[0], setAssignees = _c[1];
|
|
30
31
|
var _d = react_1.useState(false), updateRequestIsInProgress = _d[0], setUpdateRequestIsInProgress = _d[1];
|
|
31
32
|
var checkWorkflowPermission = useWorkflowCheckPermission_1.useWorkflowCheckPermission();
|
|
32
|
-
var canUpdateTask = checkWorkflowPermission('UPDATE_TASK');
|
|
33
|
+
var canUpdateTask = checkWorkflowPermission('UPDATE_TASK') && helpers_1.isOpenTask(isOpen);
|
|
33
34
|
react_1.useEffect(function () {
|
|
34
35
|
setCurrentAssignee(assigneeToValue(assignee));
|
|
35
36
|
}, [assignee]);
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { WorkflowTaskData } from '@reltio/mdm-sdk';
|
|
2
|
-
export declare const useWorkflowComments: ({ processInstanceComments, taskId }: WorkflowTaskData) => {
|
|
2
|
+
export declare const useWorkflowComments: ({ processInstanceComments, taskId, isOpen }: WorkflowTaskData) => {
|
|
3
3
|
comments: any[];
|
|
4
4
|
requestIsInProgress: boolean;
|
|
5
5
|
writeComment: (comment: any) => void;
|
|
@@ -12,8 +12,9 @@ var hooks_1 = require("../../../hooks");
|
|
|
12
12
|
var WorkflowTasksContext_1 = require("../../../contexts/WorkflowTasksContext");
|
|
13
13
|
var errors_1 = require("../helpers/errors");
|
|
14
14
|
var useWorkflowCheckPermission_1 = require("./useWorkflowCheckPermission");
|
|
15
|
+
var helpers_1 = require("../helpers");
|
|
15
16
|
var useWorkflowComments = function (_a) {
|
|
16
|
-
var processInstanceComments = _a.processInstanceComments, taskId = _a.taskId;
|
|
17
|
+
var processInstanceComments = _a.processInstanceComments, taskId = _a.taskId, isOpen = _a.isOpen;
|
|
17
18
|
var updateTaskState = (react_1.useContext(WorkflowTasksContext_1.WorkflowTasksContext) || {}).updateTaskState;
|
|
18
19
|
var workflowPath = react_redux_1.useSelector(mdm_module_1.default.selectors.getWorkflowPath);
|
|
19
20
|
var environment = react_redux_1.useSelector(mdm_module_1.default.selectors.getWorkflowEnvironmentUrl);
|
|
@@ -22,7 +23,7 @@ var useWorkflowComments = function (_a) {
|
|
|
22
23
|
var _b = react_1.useState([]), comments = _b[0], setComments = _b[1];
|
|
23
24
|
var _c = react_1.useState(false), requestIsInProgress = _c[0], setRequestIsInProgress = _c[1];
|
|
24
25
|
var checkWorkflowPermission = useWorkflowCheckPermission_1.useWorkflowCheckPermission();
|
|
25
|
-
var canUpdateTask = checkWorkflowPermission('UPDATE_TASK');
|
|
26
|
+
var canUpdateTask = checkWorkflowPermission('UPDATE_TASK') && helpers_1.isOpenTask(isOpen);
|
|
26
27
|
react_1.useEffect(function () {
|
|
27
28
|
setComments(processInstanceComments || []);
|
|
28
29
|
}, [processInstanceComments]);
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { WorkflowTaskData } from '@reltio/mdm-sdk';
|
|
2
|
-
export declare const useWorkflowDueDate: ({ dueDate, taskId }: Pick<WorkflowTaskData, 'dueDate' | 'taskId'>) => {
|
|
2
|
+
export declare const useWorkflowDueDate: ({ dueDate, taskId, isOpen }: Pick<WorkflowTaskData, 'dueDate' | 'taskId' | 'isOpen'>) => {
|
|
3
3
|
updateDueDate: (newValue: number) => void;
|
|
4
4
|
updateRequestIsInProgress: boolean;
|
|
5
5
|
readOnly: boolean;
|
|
@@ -12,8 +12,9 @@ var hooks_1 = require("../../../hooks");
|
|
|
12
12
|
var WorkflowTasksContext_1 = require("../../../contexts/WorkflowTasksContext");
|
|
13
13
|
var errors_1 = require("../helpers/errors");
|
|
14
14
|
var useWorkflowCheckPermission_1 = require("./useWorkflowCheckPermission");
|
|
15
|
+
var helpers_1 = require("../helpers");
|
|
15
16
|
var useWorkflowDueDate = function (_a) {
|
|
16
|
-
var dueDate = _a.dueDate, taskId = _a.taskId;
|
|
17
|
+
var dueDate = _a.dueDate, taskId = _a.taskId, isOpen = _a.isOpen;
|
|
17
18
|
var updateTaskState = (react_1.useContext(WorkflowTasksContext_1.WorkflowTasksContext) || {}).updateTaskState;
|
|
18
19
|
var workflowPath = react_redux_1.useSelector(mdm_module_1.default.selectors.getWorkflowPath);
|
|
19
20
|
var environment = react_redux_1.useSelector(mdm_module_1.default.selectors.getWorkflowEnvironmentUrl);
|
|
@@ -21,7 +22,7 @@ var useWorkflowDueDate = function (_a) {
|
|
|
21
22
|
var safePromise = hooks_1.useSafePromise();
|
|
22
23
|
var _b = react_1.useState(false), updateRequestIsInProgress = _b[0], setUpdateRequestIsInProgress = _b[1];
|
|
23
24
|
var checkWorkflowPermission = useWorkflowCheckPermission_1.useWorkflowCheckPermission();
|
|
24
|
-
var canUpdateTask = checkWorkflowPermission('UPDATE_TASK');
|
|
25
|
+
var canUpdateTask = checkWorkflowPermission('UPDATE_TASK') && helpers_1.isOpenTask(isOpen);
|
|
25
26
|
var updateDueDate = react_1.useCallback(function (newValue) {
|
|
26
27
|
if (workflowPath && canUpdateTask && taskId && newValue && dueDate !== newValue) {
|
|
27
28
|
setUpdateRequestIsInProgress(true);
|
|
@@ -3,7 +3,7 @@ declare type PriorityOption = {
|
|
|
3
3
|
label: string;
|
|
4
4
|
value: number;
|
|
5
5
|
};
|
|
6
|
-
export declare const useWorkflowPriority: ({ priority, taskId }: Pick<WorkflowTaskData, 'taskId' | 'priority'>) => {
|
|
6
|
+
export declare const useWorkflowPriority: ({ priority, taskId, isOpen }: Pick<WorkflowTaskData, 'taskId' | 'priority' | 'isOpen'>) => {
|
|
7
7
|
priorities: PriorityOption[];
|
|
8
8
|
updatePriority: (newValue: PriorityOption) => void;
|
|
9
9
|
updateRequestIsInProgress: boolean;
|
|
@@ -13,8 +13,9 @@ var hooks_1 = require("../../../hooks");
|
|
|
13
13
|
var WorkflowTasksContext_1 = require("../../../contexts/WorkflowTasksContext");
|
|
14
14
|
var errors_1 = require("../helpers/errors");
|
|
15
15
|
var useWorkflowCheckPermission_1 = require("./useWorkflowCheckPermission");
|
|
16
|
+
var helpers_1 = require("../helpers");
|
|
16
17
|
var useWorkflowPriority = function (_a) {
|
|
17
|
-
var priority = _a.priority, taskId = _a.taskId;
|
|
18
|
+
var priority = _a.priority, taskId = _a.taskId, isOpen = _a.isOpen;
|
|
18
19
|
var updateTaskState = (react_1.useContext(WorkflowTasksContext_1.WorkflowTasksContext) || {}).updateTaskState;
|
|
19
20
|
var workflowPath = react_redux_1.useSelector(mdm_module_1.default.selectors.getWorkflowPath);
|
|
20
21
|
var environment = react_redux_1.useSelector(mdm_module_1.default.selectors.getWorkflowEnvironmentUrl);
|
|
@@ -22,7 +23,7 @@ var useWorkflowPriority = function (_a) {
|
|
|
22
23
|
var safePromise = hooks_1.useSafePromise();
|
|
23
24
|
var _b = react_1.useState(false), updateRequestIsInProgress = _b[0], setUpdateRequestIsInProgress = _b[1];
|
|
24
25
|
var checkWorkflowPermission = useWorkflowCheckPermission_1.useWorkflowCheckPermission();
|
|
25
|
-
var canUpdateTask = checkWorkflowPermission('UPDATE_TASK');
|
|
26
|
+
var canUpdateTask = checkWorkflowPermission('UPDATE_TASK') && helpers_1.isOpenTask(isOpen);
|
|
26
27
|
var updatePriority = react_1.useCallback(function (newValue) {
|
|
27
28
|
var newPriority = newValue.value;
|
|
28
29
|
if (workflowPath && canUpdateTask && taskId && priority !== newPriority) {
|
|
@@ -1,8 +1,14 @@
|
|
|
1
1
|
import { WorkflowTaskData } from '@reltio/mdm-sdk';
|
|
2
|
-
|
|
2
|
+
declare type Config = {
|
|
3
|
+
processTypes?: string[];
|
|
4
|
+
assignee?: string;
|
|
5
|
+
showClosedTasks?: boolean;
|
|
6
|
+
};
|
|
7
|
+
export declare const useWorkflowTasks: (config?: Config) => {
|
|
3
8
|
tasks: WorkflowTaskData[];
|
|
4
9
|
total: number;
|
|
5
10
|
loading: boolean;
|
|
6
11
|
updateTaskState: (taskId: WorkflowTaskData['taskId'], payload: Partial<WorkflowTaskData>) => void;
|
|
7
12
|
loadWorkflowTasks: () => void;
|
|
8
13
|
};
|
|
14
|
+
export {};
|
|
@@ -17,11 +17,13 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
17
17
|
exports.useWorkflowTasks = void 0;
|
|
18
18
|
var react_1 = require("react");
|
|
19
19
|
var react_redux_1 = require("react-redux");
|
|
20
|
+
var ramda_1 = require("ramda");
|
|
20
21
|
var mdm_module_1 = __importDefault(require("@reltio/mdm-module"));
|
|
21
22
|
var mdm_sdk_1 = require("@reltio/mdm-sdk");
|
|
22
|
-
var useSafePromise_1 = require("
|
|
23
|
-
var useWorkflowCheckPermission_1 = require("
|
|
24
|
-
var useWorkflowTasks = function () {
|
|
23
|
+
var useSafePromise_1 = require("../../../hooks/useSafePromise");
|
|
24
|
+
var useWorkflowCheckPermission_1 = require("./useWorkflowCheckPermission");
|
|
25
|
+
var useWorkflowTasks = function (config) {
|
|
26
|
+
var _a = config || {}, processTypes = _a.processTypes, assignee = _a.assignee, showClosedTasks = _a.showClosedTasks;
|
|
25
27
|
var safePromise = useSafePromise_1.useSafePromise();
|
|
26
28
|
var workflowPath = react_redux_1.useSelector(mdm_module_1.default.selectors.getWorkflowPath);
|
|
27
29
|
var environment = react_redux_1.useSelector(mdm_module_1.default.selectors.getWorkflowEnvironmentUrl);
|
|
@@ -31,21 +33,27 @@ var useWorkflowTasks = function () {
|
|
|
31
33
|
var checkWorkflowPermission = useWorkflowCheckPermission_1.useWorkflowCheckPermission();
|
|
32
34
|
var canViewTasks = checkWorkflowPermission('VIEW_TASKS');
|
|
33
35
|
var enabled = !!(workflowPath && environment) && canViewTasks;
|
|
34
|
-
var
|
|
35
|
-
var
|
|
36
|
-
var
|
|
36
|
+
var _b = react_1.useState(null), tasks = _b[0], setTasks = _b[1];
|
|
37
|
+
var _c = react_1.useState(0), total = _c[0], setTotal = _c[1];
|
|
38
|
+
var _d = react_1.useState(false), loading = _d[0], setLoading = _d[1];
|
|
37
39
|
var loadWorkflowTasks = react_1.useCallback(function () {
|
|
38
40
|
setLoading(true);
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
41
|
+
var parsedProcessTypes = !Array.isArray(processTypes) || processTypes.includes('*') ? null : processTypes;
|
|
42
|
+
var requests = (parsedProcessTypes || [null]).map(function (processType) {
|
|
43
|
+
return mdm_sdk_1.getTasksForEntity({
|
|
44
|
+
entityUri: entityUri,
|
|
45
|
+
workflowPath: workflowPath,
|
|
46
|
+
environment: environment,
|
|
47
|
+
tenant: tenant,
|
|
48
|
+
filter: { assignee: assignee, processType: processType },
|
|
49
|
+
includeClosed: !!showClosedTasks
|
|
50
|
+
});
|
|
51
|
+
});
|
|
52
|
+
safePromise(Promise.all(requests))
|
|
53
|
+
.then(function (responses) {
|
|
54
|
+
var tasks = ramda_1.pipe(ramda_1.map(ramda_1.prop('data')), ramda_1.reject(ramda_1.isNil), ramda_1.flatten, ramda_1.uniqBy(ramda_1.prop('taskId')), ramda_1.filter(isRequestedTask(parsedProcessTypes, assignee)))(responses);
|
|
55
|
+
setTasks(tasks);
|
|
56
|
+
setTotal(tasks.length);
|
|
49
57
|
})
|
|
50
58
|
.catch(function (error) {
|
|
51
59
|
console.warn('Workflow error', error);
|
|
@@ -53,7 +61,7 @@ var useWorkflowTasks = function () {
|
|
|
53
61
|
.finally(function () {
|
|
54
62
|
setLoading(false);
|
|
55
63
|
});
|
|
56
|
-
}, [entityUri, environment, safePromise, tenant, workflowPath]);
|
|
64
|
+
}, [entityUri, environment, safePromise, tenant, workflowPath, assignee, showClosedTasks, processTypes]);
|
|
57
65
|
react_1.useEffect(function () {
|
|
58
66
|
if (entityUri && enabled && !mdm_sdk_1.isTempUri(entityUri)) {
|
|
59
67
|
loadWorkflowTasks();
|
|
@@ -70,3 +78,6 @@ var useWorkflowTasks = function () {
|
|
|
70
78
|
return { tasks: tasks, total: total, loading: loading, updateTaskState: updateTaskState, loadWorkflowTasks: loadWorkflowTasks };
|
|
71
79
|
};
|
|
72
80
|
exports.useWorkflowTasks = useWorkflowTasks;
|
|
81
|
+
var isRequestedTask = function (processTypes, assignee) { return function (task) {
|
|
82
|
+
return (!processTypes || processTypes.includes(task.processType)) && (!assignee || assignee === task.assignee);
|
|
83
|
+
}; };
|
|
@@ -4,3 +4,4 @@ export { default as WorkflowComments } from './components/WorkflowComments';
|
|
|
4
4
|
export { useWorkflowAssignee } from './hooks/useWorkflowAssignee';
|
|
5
5
|
export { useWorkflowComments } from './hooks/useWorkflowComments';
|
|
6
6
|
export { useWorkflowCheckPermission } from './hooks/useWorkflowCheckPermission';
|
|
7
|
+
export { useWorkflowTasks } from './hooks/useWorkflowTasks';
|
|
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.useWorkflowCheckPermission = exports.useWorkflowComments = exports.useWorkflowAssignee = exports.WorkflowComments = exports.AddWorkflowButton = exports.WorkflowTaskCard = void 0;
|
|
6
|
+
exports.useWorkflowTasks = exports.useWorkflowCheckPermission = exports.useWorkflowComments = exports.useWorkflowAssignee = exports.WorkflowComments = exports.AddWorkflowButton = exports.WorkflowTaskCard = void 0;
|
|
7
7
|
var WorkflowTaskCard_1 = require("./cards/WorkflowTaskCard");
|
|
8
8
|
Object.defineProperty(exports, "WorkflowTaskCard", { enumerable: true, get: function () { return WorkflowTaskCard_1.WorkflowTaskCard; } });
|
|
9
9
|
var AddWorkflowButton_1 = require("./components/AddWorkflowButton/AddWorkflowButton");
|
|
@@ -16,3 +16,5 @@ var useWorkflowComments_1 = require("./hooks/useWorkflowComments");
|
|
|
16
16
|
Object.defineProperty(exports, "useWorkflowComments", { enumerable: true, get: function () { return useWorkflowComments_1.useWorkflowComments; } });
|
|
17
17
|
var useWorkflowCheckPermission_1 = require("./hooks/useWorkflowCheckPermission");
|
|
18
18
|
Object.defineProperty(exports, "useWorkflowCheckPermission", { enumerable: true, get: function () { return useWorkflowCheckPermission_1.useWorkflowCheckPermission; } });
|
|
19
|
+
var useWorkflowTasks_1 = require("./hooks/useWorkflowTasks");
|
|
20
|
+
Object.defineProperty(exports, "useWorkflowTasks", { enumerable: true, get: function () { return useWorkflowTasks_1.useWorkflowTasks; } });
|
|
@@ -44,7 +44,6 @@ export const ColumnFilterType: PropTypes.Requireable<PropTypes.InferProps<{
|
|
|
44
44
|
}>)[])[]>;
|
|
45
45
|
filter: PropTypes.Requireable<string>;
|
|
46
46
|
}>>;
|
|
47
|
-
export const InputVariant: PropTypes.Requireable<string>;
|
|
48
47
|
export const ColumnsDataType: PropTypes.Requireable<PropTypes.InferProps<{
|
|
49
48
|
id: PropTypes.Requireable<string>;
|
|
50
49
|
label: PropTypes.Requireable<string>;
|
|
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.QueryBuilderAttributeType = exports.QueryBuilderAttributeDataType = exports.GroupedColumnsDataType = exports.ColumnsDataType = exports.
|
|
6
|
+
exports.QueryBuilderAttributeType = exports.QueryBuilderAttributeDataType = exports.GroupedColumnsDataType = exports.ColumnsDataType = exports.ColumnFilterType = exports.SortingType = exports.ColumnDataType = exports.DropDownGroupEntryType = exports.DropDownEntryType = exports.SelectValueType = exports.NumberFormatType = void 0;
|
|
7
7
|
var prop_types_1 = __importDefault(require("prop-types"));
|
|
8
8
|
var mdm_sdk_1 = require("@reltio/mdm-sdk");
|
|
9
9
|
var NumberFormatType = prop_types_1.default.shape({
|
|
@@ -47,8 +47,6 @@ var ColumnFilterType = prop_types_1.default.shape({
|
|
|
47
47
|
filter: prop_types_1.default.string
|
|
48
48
|
});
|
|
49
49
|
exports.ColumnFilterType = ColumnFilterType;
|
|
50
|
-
var InputVariant = prop_types_1.default.oneOf(['standard', 'outlined', 'filled']);
|
|
51
|
-
exports.InputVariant = InputVariant;
|
|
52
50
|
var PlainColumnsDataType = prop_types_1.default.arrayOf(prop_types_1.default.shape({
|
|
53
51
|
id: prop_types_1.default.string,
|
|
54
52
|
label: prop_types_1.default.string,
|
package/cjs/hooks/index.d.ts
CHANGED
|
@@ -11,4 +11,3 @@ export { useSavedState } from './useSavedState';
|
|
|
11
11
|
export { useUsers } from './useUsers';
|
|
12
12
|
export { useWhyDidYouUpdate } from './useWhyDidYouUpdate';
|
|
13
13
|
export { useConfigPermissions } from './useConfigPermissions';
|
|
14
|
-
export { useWorkflowTasks } from './useWorkflowTasks';
|
package/cjs/hooks/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.useConfigPermissions = exports.useWhyDidYouUpdate = exports.useUsers = exports.useSavedState = exports.useSafePromise = exports.useRunOnceAfterValueInitialization = exports.useRelationsLoader = exports.useRelationTypeSelector = exports.usePrevious = exports.useDidUpdateEffect = exports.useCollaboration = exports.useAsyncMount = exports.useActions = void 0;
|
|
4
4
|
var useActions_1 = require("./useActions");
|
|
5
5
|
Object.defineProperty(exports, "useActions", { enumerable: true, get: function () { return useActions_1.useActions; } });
|
|
6
6
|
var useAsyncMount_1 = require("./useAsyncMount");
|
|
@@ -27,5 +27,3 @@ var useWhyDidYouUpdate_1 = require("./useWhyDidYouUpdate");
|
|
|
27
27
|
Object.defineProperty(exports, "useWhyDidYouUpdate", { enumerable: true, get: function () { return useWhyDidYouUpdate_1.useWhyDidYouUpdate; } });
|
|
28
28
|
var useConfigPermissions_1 = require("./useConfigPermissions");
|
|
29
29
|
Object.defineProperty(exports, "useConfigPermissions", { enumerable: true, get: function () { return useConfigPermissions_1.useConfigPermissions; } });
|
|
30
|
-
var useWorkflowTasks_1 = require("./useWorkflowTasks");
|
|
31
|
-
Object.defineProperty(exports, "useWorkflowTasks", { enumerable: true, get: function () { return useWorkflowTasks_1.useWorkflowTasks; } });
|
|
@@ -50,20 +50,23 @@ export var ConfigureColumnsPopup = function (_a) {
|
|
|
50
50
|
filterItem
|
|
51
51
|
]);
|
|
52
52
|
var getItemSize = function () { return ITEM_HEIGHT; };
|
|
53
|
-
var
|
|
54
|
-
{
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
53
|
+
var getAttributesData = useMemo(function () {
|
|
54
|
+
var getAttributeGroupData = curry(function (level, item, groupId, groupName) { return __spreadArray([
|
|
55
|
+
{
|
|
56
|
+
item: __assign(__assign({}, item), { filterText: filterText }),
|
|
57
|
+
level: level,
|
|
58
|
+
groupId: groupId,
|
|
59
|
+
groupName: groupName
|
|
60
|
+
}
|
|
61
|
+
], getAttributesData(item.children || [], groupId, groupName, level + 1)); });
|
|
62
|
+
var getAttributesData = function (data, groupId, groupName, level) {
|
|
63
|
+
if (level === void 0) { level = 0; }
|
|
64
|
+
var getItemGroupData = function (item) { return getAttributeGroupData(level, item, groupId, groupName); };
|
|
65
|
+
var filteredData = data.filter(filterItemsTree);
|
|
66
|
+
return (renderGroupTitle ? map : chain)(getItemGroupData, filteredData);
|
|
67
|
+
};
|
|
68
|
+
return getAttributesData;
|
|
69
|
+
}, [filterText, renderGroupTitle, filterItemsTree]);
|
|
67
70
|
var getGroupsData = useCallback(function (groups) {
|
|
68
71
|
return groups
|
|
69
72
|
.map(function (group) { return ({
|
|
@@ -11,10 +11,11 @@ export namespace DropDownSelectorType {
|
|
|
11
11
|
const textFieldInputRef: PropTypes.Requireable<object>;
|
|
12
12
|
const TextFieldProps: PropTypes.Requireable<object>;
|
|
13
13
|
const height: PropTypes.Requireable<number>;
|
|
14
|
+
const classes: PropTypes.Requireable<object>;
|
|
14
15
|
}
|
|
15
16
|
export default DropDownSelector;
|
|
16
17
|
import PropTypes from "prop-types";
|
|
17
|
-
declare function DropDownSelector({ value, label, createLabel, getOptions, options, height, onChange, onCreate, onClear, components, textFieldInputRef, TextFieldProps, ...otherProps }: {
|
|
18
|
+
declare function DropDownSelector({ value, label, createLabel, getOptions, options, height, onChange, onCreate, onClear, components, textFieldInputRef, TextFieldProps, classes, ...otherProps }: {
|
|
18
19
|
[x: string]: any;
|
|
19
20
|
value: any;
|
|
20
21
|
label: any;
|
|
@@ -28,6 +29,7 @@ declare function DropDownSelector({ value, label, createLabel, getOptions, optio
|
|
|
28
29
|
components: any;
|
|
29
30
|
textFieldInputRef: any;
|
|
30
31
|
TextFieldProps: any;
|
|
32
|
+
classes: any;
|
|
31
33
|
}): JSX.Element;
|
|
32
34
|
declare namespace DropDownSelector {
|
|
33
35
|
export { DropDownSelectorType as propTypes };
|
|
@@ -35,7 +35,7 @@ import SingleValue from './components/SingleValue';
|
|
|
35
35
|
import { useStyles, customStyles, overloadMenuListStyle, withoutLabelInputStyle } from './styles';
|
|
36
36
|
var DropDownSelector = function (_a) {
|
|
37
37
|
var _b;
|
|
38
|
-
var value = _a.value, label = _a.label, createLabel = _a.createLabel, getOptions = _a.getOptions, options = _a.options, _c = _a.height, height = _c === void 0 ? 46 : _c, _d = _a.onChange, onChange = _d === void 0 ? identity : _d, onCreate = _a.onCreate, _e = _a.onClear, onClear = _e === void 0 ? identity : _e, components = _a.components, textFieldInputRef = _a.textFieldInputRef, TextFieldProps = _a.TextFieldProps, otherProps = __rest(_a, ["value", "label", "createLabel", "getOptions", "options", "height", "onChange", "onCreate", "onClear", "components", "textFieldInputRef", "TextFieldProps"]);
|
|
38
|
+
var value = _a.value, label = _a.label, createLabel = _a.createLabel, getOptions = _a.getOptions, options = _a.options, _c = _a.height, height = _c === void 0 ? 46 : _c, _d = _a.onChange, onChange = _d === void 0 ? identity : _d, onCreate = _a.onCreate, _e = _a.onClear, onClear = _e === void 0 ? identity : _e, components = _a.components, textFieldInputRef = _a.textFieldInputRef, TextFieldProps = _a.TextFieldProps, classes = _a.classes, otherProps = __rest(_a, ["value", "label", "createLabel", "getOptions", "options", "height", "onChange", "onCreate", "onClear", "components", "textFieldInputRef", "TextFieldProps", "classes"]);
|
|
39
39
|
var styles = useStyles({ height: height });
|
|
40
40
|
var underlineStyle = useInputStyles();
|
|
41
41
|
var _f = useState(false), open = _f[0], setOpen = _f[1];
|
|
@@ -53,7 +53,8 @@ var DropDownSelector = function (_a) {
|
|
|
53
53
|
var overloadStylesIfGroup = prop('Group', components) ? overloadMenuListStyle : {};
|
|
54
54
|
var overloadStylesIfNoLabel = isEmpty(label) ? withoutLabelInputStyle : {};
|
|
55
55
|
var mergedStyles = __assign(__assign(__assign({}, customStyles), overloadStylesIfGroup), overloadStylesIfNoLabel);
|
|
56
|
-
|
|
56
|
+
var mergedClasses = __assign(__assign({}, styles), classes);
|
|
57
|
+
return (React.createElement(SelectComponent, __assign({ placeholder: "", defaultOptions: true }, otherProps, { value: defaultTo(null, value), loadOptions: getOptions, options: options, cacheOptions: true, onChange: onChange, onCreate: handleCreate, onClear: onClear, createLabel: createLabel, classes: mergedClasses, styles: mergedStyles, components: __assign(__assign({ DropdownIndicator: DropdownIndicator, LoadingIndicator: EmptyStub, SingleValue: SingleValue,
|
|
57
58
|
Menu: Menu }, showIndicatorSeparator), components), menuPlacement: "auto", TextFieldProps: __assign(__assign({}, TextFieldProps), { label: label, variant: 'filled', margin: 'dense', classes: __assign(__assign({}, prop('classes', TextFieldProps)), { root: classnames(styles.formControl, path(['classes', 'root'], TextFieldProps)) }), inputProps: __assign({}, prop('inputProps', TextFieldProps)), InputProps: __assign(__assign({}, prop('InputProps', TextFieldProps)), { classes: __assign(__assign({}, path(['InputProps', 'classes'], TextFieldProps)), { root: classnames(styles.filledInputRoot, path(['InputProps', 'classes', 'root'], TextFieldProps)), underline: classnames((_b = {}, _b[underlineStyle.filledInputUnderline] = isEmptyValue(value), _b), path(['InputProps', 'classes', 'underline'], TextFieldProps)), focused: classnames('focused', path(['InputProps', 'classes', 'focused'], TextFieldProps)) }) }), InputLabelProps: __assign(__assign({}, prop('InputLabelProps', TextFieldProps)), { classes: __assign(__assign({}, path(['InputLabelProps', 'classes'], TextFieldProps)), { root: classnames(styles.inputLabel, path(['InputLabelProps', 'classes', 'root'], TextFieldProps)), shrink: classnames('shrink', path(['InputLabelProps', 'classes', 'shrink'], TextFieldProps)) }), shrink: !isEmptyValue(value) ? true : undefined }), ref: textFieldInputRef || inputRef }), inputRef: textFieldInputRef || inputRef, menuIsOpen: open, onMenuOpen: function () { return setOpen(true); }, onMenuClose: function () { return setOpen(false); } })));
|
|
58
59
|
};
|
|
59
60
|
export var DropDownSelectorType = {
|
|
@@ -68,7 +69,8 @@ export var DropDownSelectorType = {
|
|
|
68
69
|
components: PropTypes.object,
|
|
69
70
|
textFieldInputRef: PropTypes.object,
|
|
70
71
|
TextFieldProps: PropTypes.object,
|
|
71
|
-
height: PropTypes.number
|
|
72
|
+
height: PropTypes.number,
|
|
73
|
+
classes: PropTypes.object
|
|
72
74
|
};
|
|
73
75
|
DropDownSelector.propTypes = DropDownSelectorType;
|
|
74
76
|
export default DropDownSelector;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export const useStyles: (props?: any) => import("@material-ui/core/styles/withStyles").ClassNameMap<"icon" | "input" | "root" | "
|
|
1
|
+
export const useStyles: (props?: any) => import("@material-ui/core/styles/withStyles").ClassNameMap<"icon" | "input" | "root" | "inputLabel" | "inputRoot" | "inputText" | "emptyInput" | "disabledInput" | "disabledPointer" | "disabledUnderline" | "popup-opened-icon">;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const useStyles: (props?: any) => import("@material-ui/core/styles/withStyles").ClassNameMap<"caption" | "
|
|
1
|
+
export declare const useStyles: (props?: any) => import("@material-ui/core/styles/withStyles").ClassNameMap<"caption" | "helperText" | "wrapper">;
|
|
@@ -27,8 +27,8 @@ import Title from '../../../Title/Title';
|
|
|
27
27
|
import Cardinality from './CardinalityMessage';
|
|
28
28
|
import ErrorMessage from '../../../ErrorWrapper/ErrorMessage';
|
|
29
29
|
import Attribute from '../AttributesFactory/Attribute';
|
|
30
|
+
import { Roles } from '../Roles/Roles';
|
|
30
31
|
import Tags from '../Tags';
|
|
31
|
-
import Roles from '../../readMode/SpecialAttributes/Roles'; //TODO: should be edit mode
|
|
32
32
|
import { useStyles } from './styles';
|
|
33
33
|
var SpecialRenderer = function (_a) {
|
|
34
34
|
var values = _a.values, attributeType = _a.attributeType, parentUri = _a.parentUri, mode = _a.mode, errorMessage = _a.errorMessage, otherProps = __rest(_a, ["values", "attributeType", "parentUri", "mode", "errorMessage"]);
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { prop, propEq } from 'ramda';
|
|
3
|
+
import { useSelector, useDispatch } from 'react-redux';
|
|
4
|
+
import { EntityAttrTypes, getRolesForEntityType, getLastUriPart } from '@reltio/mdm-sdk';
|
|
5
|
+
import mdmModule, { profile } from '@reltio/mdm-module';
|
|
6
|
+
import SimpleDropDownSelector from '../../../SimpleDropDownSelector/SimpleDropDownSelector';
|
|
7
|
+
import { MultiValueChip } from '../../..';
|
|
8
|
+
import { useStyles } from './styles';
|
|
9
|
+
var components = { MultiValue: MultiValueChip };
|
|
10
|
+
export var Roles = function (_a) {
|
|
11
|
+
var values = _a.values;
|
|
12
|
+
var styles = useStyles();
|
|
13
|
+
var dispatch = useDispatch();
|
|
14
|
+
var metadata = useSelector(mdmModule.selectors.getMetadata);
|
|
15
|
+
var entity = useSelector(mdmModule.selectors.getEntity);
|
|
16
|
+
var entityUri = entity.uri;
|
|
17
|
+
var options = getRolesForEntityType(metadata, entity.type).map(function (role) { return ({
|
|
18
|
+
value: role.uri,
|
|
19
|
+
label: role.label
|
|
20
|
+
}); });
|
|
21
|
+
var formattedValues = values.map(function (value) {
|
|
22
|
+
var _a;
|
|
23
|
+
var label = (_a = options.find(propEq('value', value))) === null || _a === void 0 ? void 0 : _a.label;
|
|
24
|
+
return {
|
|
25
|
+
value: value,
|
|
26
|
+
label: label || getLastUriPart(value)
|
|
27
|
+
};
|
|
28
|
+
});
|
|
29
|
+
var handleChange = function (values) {
|
|
30
|
+
var roles = (values === null || values === void 0 ? void 0 : values.map(prop('value'))) || [];
|
|
31
|
+
dispatch(profile.actions.modifyAttribute({
|
|
32
|
+
value: roles,
|
|
33
|
+
attributeType: EntityAttrTypes.roles,
|
|
34
|
+
uri: entityUri
|
|
35
|
+
}));
|
|
36
|
+
};
|
|
37
|
+
return (React.createElement(SimpleDropDownSelector, { label: '', height: 40, isMulti: true, options: options, value: formattedValues, onChange: handleChange, components: components, classes: styles }));
|
|
38
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const useStyles: (props?: any) => import("@material-ui/core/styles/withStyles").ClassNameMap<"valueContainer">;
|
|
@@ -8,10 +8,7 @@ var CrosswalkDateEditor = function (_a) {
|
|
|
8
8
|
var styles = useStyles();
|
|
9
9
|
var _d = useState(false), isOpen = _d[0], setIsOpen = _d[1];
|
|
10
10
|
var handleChange = function (date) { return onChange(date.valueOf()); };
|
|
11
|
-
return (
|
|
12
|
-
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
13
|
-
// @ts-ignore
|
|
14
|
-
React.createElement(TimestampEditor, { variant: "filled", value: value ? new Date(value) : null, disabled: disabled, onChange: unless(always(isOpen), handleChange), onAccept: handleChange, onOpen: function () { return setIsOpen(true); }, onClose: function () { return setIsOpen(false); }, InputProps: {
|
|
11
|
+
return (React.createElement(TimestampEditor, { variant: "filled", value: value ? new Date(value) : null, disabled: disabled, onChange: unless(always(isOpen), handleChange), onAccept: handleChange, onOpen: function () { return setIsOpen(true); }, onClose: function () { return setIsOpen(false); }, InputProps: {
|
|
15
12
|
disableUnderline: true,
|
|
16
13
|
classes: { input: styles.timestampEditorInput, root: classnames(styles.timestampEditor, classes.root) }
|
|
17
14
|
} }));
|
|
@@ -1,22 +1,15 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { TextFieldProps } from '@material-ui/core/TextField';
|
|
3
|
+
import { KeyboardDatePickerProps } from '@material-ui/pickers/DatePicker';
|
|
4
|
+
declare type DateEditorProps = {
|
|
5
|
+
value: number | Date;
|
|
6
|
+
label: string;
|
|
7
|
+
variant?: TextFieldProps['variant'];
|
|
8
|
+
size?: TextFieldProps['size'];
|
|
9
|
+
hiddenLabel?: TextFieldProps['hiddenLabel'];
|
|
10
|
+
onBlur?: () => void;
|
|
11
|
+
onFocus?: () => void;
|
|
12
|
+
onChange: (value: number | Date) => void;
|
|
13
|
+
} & Omit<KeyboardDatePickerProps, 'value' | 'label' | 'variant' | 'size' | 'hiddenLabel' | 'onBlur' | 'onFocus' | 'onChange'>;
|
|
14
|
+
declare const DateEditor: ({ value, label, variant, onChange, InputProps, InputLabelProps, onBlur, onFocus, ...otherProps }: DateEditorProps) => JSX.Element;
|
|
1
15
|
export default DateEditor;
|
|
2
|
-
declare function DateEditor({ value, label, variant, onChange, InputProps, InputLabelProps, ...otherProps }: {
|
|
3
|
-
[x: string]: any;
|
|
4
|
-
value?: any;
|
|
5
|
-
label: any;
|
|
6
|
-
variant?: string;
|
|
7
|
-
onChange: any;
|
|
8
|
-
InputProps?: {};
|
|
9
|
-
InputLabelProps?: {};
|
|
10
|
-
}): JSX.Element;
|
|
11
|
-
declare namespace DateEditor {
|
|
12
|
-
namespace propTypes {
|
|
13
|
-
export const value: PropTypes.Requireable<number | Date>;
|
|
14
|
-
export const label: PropTypes.Requireable<string>;
|
|
15
|
-
export { InputVariant as variant };
|
|
16
|
-
export const InputProps: PropTypes.Requireable<object>;
|
|
17
|
-
export const InputLabelProps: PropTypes.Requireable<object>;
|
|
18
|
-
export const onChange: PropTypes.Validator<(...args: any[]) => any>;
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
import PropTypes from "prop-types";
|
|
22
|
-
import { InputVariant } from "../../../constants/prop-types";
|