using new bpmn-js-spiffworkflow for python scripts w/ burnettk danfunk

This commit is contained in:
jasquat 2022-10-31 16:51:27 -04:00
parent 0c08eb2c35
commit 383f21b7a6
3 changed files with 36 additions and 16 deletions

View File

@ -177,11 +177,16 @@ export default function ReactDiagramEditor({
});
}
function handleLaunchScriptEditor(element: any) {
function handleLaunchScriptEditor(
element: any,
script: string,
scriptType: string,
eventBus: any
) {
if (onLaunchScriptEditor) {
setPerformingXmlUpdates(true);
const modeling = diagramModeler.get('modeling');
onLaunchScriptEditor(element, modeling);
// const modeling = diagramModeler.get('modeling');
onLaunchScriptEditor(element, script, scriptType, eventBus);
}
}
@ -199,12 +204,12 @@ export default function ReactDiagramEditor({
setDiagramModelerState(diagramModeler);
diagramModeler.on('launch.script.editor', (event: any) => {
const { error, element } = event;
diagramModeler.on('script.editor.launch', (event: any) => {
const { error, element, scriptType, script, eventBus } = event;
if (error) {
console.log(error);
}
handleLaunchScriptEditor(element);
handleLaunchScriptEditor(element, script, scriptType, eventBus);
});
// 'element.hover',

View File

@ -18,7 +18,9 @@ export default function ProcessModelEditDiagram() {
const [showFileNameEditor, setShowFileNameEditor] = useState(false);
const handleShowFileNameEditor = () => setShowFileNameEditor(true);
const [scriptText, setScriptText] = useState('');
const [scriptText, setScriptText] = useState<string>('');
const [scriptType, setScriptType] = useState<string>('');
const [scriptEventBus, setScriptEventBus] = useState<any>(null);
const [scriptModeling, setScriptModeling] = useState(null);
const [scriptElement, setScriptElement] = useState(null);
const [showScriptEditor, setShowScriptEditor] = useState(false);
@ -275,25 +277,38 @@ export default function ProcessModelEditDiagram() {
}
};
const onLaunchScriptEditor = (element: any, modeling: any) => {
setScriptText(element.businessObject.script || '');
setScriptModeling(modeling);
const onLaunchScriptEditor = (
element: any,
script: string,
scriptType: string,
eventBus: any
) => {
setScriptText(script || '');
setScriptType(scriptType);
setScriptEventBus(eventBus);
// setScriptModeling(modeling);
setScriptElement(element);
setScriptUnitTestElementWithIndex(0, element);
// setScriptUnitTestElementWithIndex(0, element);
handleShowScriptEditor();
};
const handleScriptEditorClose = () => {
scriptEventBus.fire('script.editor.update', {
scriptType,
script: scriptText,
element: scriptElement,
});
resetUnitTextResult();
setShowScriptEditor(false);
};
const handleEditorScriptChange = (value: any) => {
setScriptText(value);
(scriptModeling as any).updateProperties(scriptElement, {
scriptFormat: 'python',
script: value,
});
// (scriptModeling as any).updateProperties(scriptElement, {
// scriptFormat: 'python',
// script: value,
// });
};
const handleEditorScriptTestUnitInputChange = (value: any) => {

View File

@ -144,7 +144,7 @@ export default function TaskShow() {
const instructionsElement = (taskToUse: any) => {
let instructions = '';
if (taskToUse.type === 'Manual Task') {
if (taskToUse.properties.instructionsForEndUser) {
instructions = taskToUse.properties.instructionsForEndUser;
}
return (