diff --git a/src/components/BpmnDesign/PropertyPanel.vue b/src/components/BpmnDesign/PropertyPanel.vue index 371b30a..6861a05 100644 --- a/src/components/BpmnDesign/PropertyPanel.vue +++ b/src/components/BpmnDesign/PropertyPanel.vue @@ -11,7 +11,7 @@ import ProcessPanel from './panel/ProcessPanel.vue'; import StartEndPanel from './panel/StartEndPanel.vue'; import GatewayPanel from './panel/GatewayPanel.vue'; import SequenceFlowPanel from './panel/SequenceFlowPanel.vue'; -import { Modeler, Element } from 'bpmn'; +import { Modeler, ModdleElement } from 'bpmn'; const { proxy } = getCurrentInstance() as ComponentInternalInstance; interface propsType { users: Array; @@ -20,8 +20,8 @@ interface propsType { } const props = withDefaults(defineProps(), {}); -const element = ref(); -const processElement = ref(); +const element = ref(); +const processElement = ref(); const startEndType = ['bpmn:IntermediateThrowEvent', 'bpmn:StartEvent', 'bpmn:EndEvent']; const taskType = [ diff --git a/src/components/BpmnDesign/hooks/usePanel.ts b/src/components/BpmnDesign/hooks/usePanel.ts index 2b25410..0dbc3f3 100644 --- a/src/components/BpmnDesign/hooks/usePanel.ts +++ b/src/components/BpmnDesign/hooks/usePanel.ts @@ -1,8 +1,8 @@ import showConfig from '@/components/BpmnDesign/assets/showConfig'; -import { Element } from 'bpmn'; +import { ModdleElement } from 'bpmn'; import useModelerStore from '@/store/modules/modeler'; interface Options { - element: Element; + element: ModdleElement; } export default (ops: Options) => { @@ -30,7 +30,7 @@ export default (ops: Options) => { * @param properties 属性 * @param parent 父节点 */ - const createModdleElement = (elementType: string, properties: any, parent: Element) => { + const createModdleElement = (elementType: string, properties: any, parent: ModdleElement) => { const element = moddle.create(elementType, properties); parent && (element.$parent = parent); return element; @@ -40,7 +40,7 @@ export default (ops: Options) => { * 获取扩展属性,如果不存在会自动创建 */ const getExtensionElements = (create = true) => { - let extensionElements = element.businessObject.get('extensionElements'); + let extensionElements = element.businessObject.get('extensionElements'); if (!extensionElements && create) { extensionElements = createModdleElement('bpmn:ExtensionElements', { values: [] }, element.businessObject); modeling.updateModdleProperties(element, element.businessObject, { extensionElements }); @@ -52,7 +52,7 @@ export default (ops: Options) => { * 获取extensionElements下的properties * @param extensionElements 可选参数,默认获取当前Element下的extensionElements下的Properties */ - const getPropertiesElements = (extensionElements?) => { + const getPropertiesElements = (extensionElements?: ModdleElement) => { if (!extensionElements) { extensionElements = getExtensionElements(); } @@ -60,7 +60,7 @@ export default (ops: Options) => { if (!propertiesElements) { propertiesElements = createModdleElement('flowable:properties', { values: [] }, extensionElements); modeling.updateModdleProperties(element, extensionElements, { - values: [...extensionElements.get('values'), propertiesElements] + values: [...extensionElements.get<[]>('values'), propertiesElements] }); } return propertiesElements; diff --git a/src/components/BpmnDesign/hooks/useParseElement.ts b/src/components/BpmnDesign/hooks/useParseElement.ts index 94ae2a4..a5a255d 100644 --- a/src/components/BpmnDesign/hooks/useParseElement.ts +++ b/src/components/BpmnDesign/hooks/useParseElement.ts @@ -1,7 +1,7 @@ -import { Element } from 'bpmn'; +import { ModdleElement } from 'bpmn'; interface Options { - element: Element; + element: ModdleElement; } interface Data { @@ -25,7 +25,7 @@ export default (ops: Options) => { delete result[key]; } } - return { ...result }; + return { ...result } as T; }; return { diff --git a/src/components/BpmnDesign/panel/GatewayPanel.vue b/src/components/BpmnDesign/panel/GatewayPanel.vue index 07d7cd4..46c67b5 100644 --- a/src/components/BpmnDesign/panel/GatewayPanel.vue +++ b/src/components/BpmnDesign/panel/GatewayPanel.vue @@ -41,12 +41,12 @@