diff --git a/package.json b/package.json index 82373b7..0391212 100644 --- a/package.json +++ b/package.json @@ -19,7 +19,6 @@ "url": "https://gitee.com/JavaLionLi/plus-ui.git" }, "dependencies": { - "@bpmn-io/properties-panel": "^3.16.0", "@element-plus/icons-vue": "2.3.1", "@highlightjs/vue-plugin": "2.1.0", "@lezer/common": "1.2.1", @@ -28,8 +27,7 @@ "animate.css": "4.1.1", "await-to-js": "3.0.0", "axios": "1.6.5", - "bpmn-js": "13.2.2", - "bpmn-js-properties-panel": "2.1.0", + "bpmn-js": "16.3.2", "camunda-bpmn-js-behaviors": "1.2.2", "camunda-bpmn-moddle": "7.0.1", "crypto-js": "4.2.0", diff --git a/src/components/BpmnDesign/PropertyPanel.vue b/src/components/BpmnDesign/PropertyPanel.vue index 81a1e04..35da069 100644 --- a/src/components/BpmnDesign/PropertyPanel.vue +++ b/src/components/BpmnDesign/PropertyPanel.vue @@ -63,7 +63,7 @@ const component = computed(() => { const nodeName = computed(() => { if (element.value) { const bizObj = element.value.businessObject; - const type = bizObj?.eventDefinitions ? bizObj.eventDefinitions[0].$type : bizObj.$type; + const type = bizObj?.eventDefinitions && bizObj?.eventDefinitions.length > 0 ? bizObj.eventDefinitions[0].$type : bizObj.$type; return NodeName[type] || type; } }); diff --git a/src/components/BpmnDesign/assets/lang/zh.ts b/src/components/BpmnDesign/assets/lang/zh.ts index 469b96e..72c7b41 100644 --- a/src/components/BpmnDesign/assets/lang/zh.ts +++ b/src/components/BpmnDesign/assets/lang/zh.ts @@ -20,279 +20,99 @@ export const NodeName = { }; export default { - 'Activate the create/remove space tool': '启动创建/删除空间工具', - 'Activate the global connect tool': '启动全局连接工具', - 'Activate the hand tool': '启动手动工具', - 'Activate the lasso tool': '启动 Lasso 工具', - 'Ad-hoc': 'Ad-hoc子流程', - 'Add Lane above': '添加到通道之上', - 'Add Lane below': '添加到通道之下', - 'Append compensation activity': '追加补偿活动', - 'Append {type}': '追加 {type}', - 'Business Rule Task': '规则任务', - 'Call Activity': '引用流程', - 'Cancel Boundary Event': '取消边界事件', - 'Cancel End Event': '结束取消事件', + 'Activate hand tool': '启动手动工具', + 'Activate lasso tool': '启动 Lasso 工具', + 'Activate create/remove space tool': '启动创建/删除空间工具', + 'Activate global connect tool': '启动全局连接工具', + 'Ad-hoc': 'Ad-hoc', + 'Add lane above': '在上方添加泳道', + 'Add lane below': '在下方添加泳道', + 'Business rule task': '规则任务', + 'Call activity': '引用流程', + 'Compensation end event': '结束补偿事件', + 'Compensation intermediate throw event': '中间补偿抛出事件', + 'Complex gateway': '复杂网关', + 'Conditional intermediate catch event': '中间条件捕获事件', + 'Conditional start event (non-interrupting)': '条件启动事件 (非中断)', + 'Conditional start event': '条件启动事件', + 'Connect using association': '文本关联', + 'Connect using sequence/message flow or association': '消息关联', + 'Change element': '更改元素', 'Change type': '更改类型', - 'Collapsed Pool': '折叠池', - 'Compensation Boundary Event': '补偿边界事件', - 'Compensation End Event': '结束补偿事件', - 'Compensation Intermediate Throw Event': '中间补偿抛出事件', - 'Compensation Start Event': '补偿启动事件', - 'Complex Gateway': '复杂网关', - 'Conditional Boundary Event (non-interrupting)': '条件边界事件 (非中断)', - 'Conditional Boundary Event': '条件边界事件', - 'Conditional Intermediate Catch Event': '中间条件捕获事件', - 'Conditional Start Event (non-interrupting)': '条件启动事件 (非中断)', - 'Conditional Start Event': '条件启动事件', - 'Connect using Association': '文本关联', - 'Connect using DataInputAssociation': '数据关联', - 'Connect using Sequence/MessageFlow or Association': '消息关联', - 'Create IntermediateThrowEvent/BoundaryEvent': '创建中间抛出/边界事件', - 'Create Pool/Participant': '创建池/参与者', - 'Create expanded SubProcess': '创建可折叠子流程', - 'Create {type}': '创建 {type}', - 'Divide into three Lanes': '分成三条通道', - 'Divide into two Lanes': '分成两条通道', - 'End Event': '结束事件', - 'Error Boundary Event': '错误边界事件', - 'Error End Event': '结束错误事件', - 'Error Start Event': '错误启动事件', - 'Escalation Boundary Event (non-interrupting)': '升级边界事件 (非中断)', - 'Escalation Boundary Event': '升级边界事件', - 'Escalation End Event': '结束升级事件', - 'Escalation Intermediate Throw Event': '中间升级抛出事件', - 'Escalation Start Event (non-interrupting)': '升级启动事件 (非中断)', - 'Escalation Start Event': '升级启动事件', - 'Event Sub Process': '事件子流程', - 'Event based Gateway': '事件网关', - 'Exclusive Gateway': '独占网关', - 'Expanded Pool': '展开池', - 'Inclusive Gateway': '包容网关', - 'Intermediate Throw Event': '中间抛出事件', - 'Link Intermediate Catch Event': '中间链接捕获事件', - 'Link Intermediate Throw Event': '中间链接抛出事件', + 'Create data object reference': '创建数据对象引用', + 'Create data store reference': '创建数据存储引用', + 'Create expanded sub-process': '创建可折叠子流程', + 'Create pool/participant': '创建池/参与者', + 'Collection': '集合', + 'Connect using data input association': '数据输入关联', + 'Data store reference': '数据存储引用', + 'Data object reference': '数据对象引用', + 'Divide into two lanes': '分成两个泳道', + 'Divide into three lanes': '分成三个泳道', + 'End event': '结束事件', + 'Error end event': '结束错误事件', + 'Escalation end event': '结束升级事件', + 'Escalation intermediate throw event': '中间升级抛出事件', + 'Event sub-process': '事件子流程', + 'Event-based gateway': '事件网关', + 'Exclusive gateway': '独占网关', + 'Empty pool/participant (removes content)': '清空池/参与者 (删除内容)', + 'Inclusive gateway': '包容网关', + 'Intermediate throw event': '中间抛出事件', 'Loop': '循环', - 'Manual Task': '手动任务', - 'Message Boundary Event (non-interrupting)': '消息边界事件 (非中断)', - 'Message Boundary Event': '消息边界事件', - 'Message End Event': '结束消息事件', - 'Message Intermediate Catch Event': '中间消息捕获事件', - 'Message Intermediate Throw Event': '中间消息抛出事件', - 'Message Start Event (non-interrupting)': '消息启动事件 (非中断)', - 'Message Start Event': '消息启动事件', - 'Parallel Gateway': '并行网关', - 'Parallel Multi Instance': '并行多实例', - 'Receive Task': '接受任务', + 'Link intermediate catch event': '中间链接捕获事件', + 'Link intermediate throw event': '中间链接抛出事件', + 'Manual task': '手动任务', + 'Message end event': '结束消息事件', + 'Message intermediate catch event': '中间消息捕获事件', + 'Message intermediate throw event': '中间消息抛出事件', + 'Message start event': '消息启动事件', + 'Parallel gateway': '并行网关', + 'Parallel multi-instance': '并行多实例', + 'Participant multiplicity': '参与者多重性', + 'Receive task': '接受任务', 'Remove': '移除', - 'Script Task': '脚本任务', - 'Send Task': '发送任务', - 'Sequential Multi Instance': '串行多实例', - 'Service Task': '服务任务', - 'Signal Boundary Event (non-interrupting)': '信号边界事件 (非中断)', - 'Signal Boundary Event': '信号边界事件', - 'Signal End Event': '结束信号事件', - 'Signal Intermediate Catch Event': '中间信号捕获事件', - 'Signal Intermediate Throw Event': '中间信号抛出事件', - 'Signal Start Event (non-interrupting)': '信号启动事件 (非中断)', - 'Signal Start Event': '信号启动事件', - 'Start Event': '开始事件', - 'Sub Process (collapsed)': '可折叠子流程', - 'Sub Process (expanded)': '可展开子流程', - 'Sub Process': '子流程', + 'Script task': '脚本任务', + 'Send task': '发送任务', + 'Sequential multi-instance': '串行多实例', + 'Service task': '服务任务', + 'Signal end event': '结束信号事件', + 'Signal intermediate catch event': '中间信号捕获事件', + 'Signal intermediate throw event': '中间信号抛出事件', + 'Signal start event (non-interrupting)': '信号启动事件 (非中断)', + 'Signal start event': '信号启动事件', + 'Start event': '开始事件', + 'Sub-process (collapsed)': '可折叠子流程', + 'Sub-process (expanded)': '可展开子流程', + 'Sub rocess': '子流程', 'Task': '任务', - 'Terminate End Event': '终止边界事件', - 'Timer Boundary Event (non-interrupting)': '定时边界事件 (非中断)', - 'Timer Boundary Event': '定时边界事件', - 'Timer Intermediate Catch Event': '中间定时捕获事件', - 'Timer Start Event (non-interrupting)': '定时启动事件 (非中断)', - 'Timer Start Event': '定时启动事件', 'Transaction': '事务', - 'User Task': '用户任务', - 'already rendered {element}': '{element} 已呈现', - 'diagram not part of bpmn:Definitions': '图表不是 bpmn:Definitions 的一部分', - 'element required': '需要元素', - 'element {element} referenced by {referenced}#{property} not yet drawn': '元素 {element} 的引用 {referenced}#{property} 尚未绘制', - 'failed to import {element}': '{element} 导入失败', - 'flow elements must be children of pools/participants': '元素必须是池/参与者的子级', - 'more than {count} child lanes': '超过 {count} 条通道', - 'no diagram to display': '没有要显示的图表', - 'no parent for {element} in {parent}': '在 {element} 中没有父元素 {parent}', - 'no process or collaboration to display': '没有可显示的流程或协作', - 'no shape type specified': '未指定形状类型', - 'out of bounds release': '越界释放', - 'DataObjectReference': '数据对象参考', - 'DataStoreReference': '数据存储参考', - 'StartEvent': '开始事件', - 'EndEvent': '结束事件', - 'Create Gateway': '创建网关', - 'Create Intermediate/Boundary Event': '创建中间/边界事件', - // 属性面板的参数 - 'Id': '编号', - 'Name': '名称', - 'General': '常规', - 'Details': '详情', - 'Message Name': '消息名称', - 'Message': '消息', - 'Initiator': '创建者', - 'Asynchronous continuations': '持续异步', - 'Asynchronous before': '异步前', - 'Asynchronous after': '异步后', - 'Job configuration': '工作配置', - 'Exclusive': '排除', - 'Job Priority': '工作优先级', - 'Retry Time Cycle': '重试时间周期', - 'Documentation': '文档', - 'Element Documentation': '元素文档', - 'History Configuration': '历史配置', - 'History Time To Live': '历史的生存时间', - 'Forms': '表单', - 'Form Key': '表单key', - 'Form Fields': '表单字段', - 'Business Key': '业务key', - 'Form Field': '表单字段', - 'ID': '编号', - 'Type': '类型', - 'Label': '名称', - 'Default Value': '默认值', - 'Validation': '校验', - 'Add Constraint': '添加约束', - 'Config': '配置', - 'Properties': '属性', - 'Add Property': '添加属性', - 'Value': '值', - 'Listeners': '监听器', - 'Execution listener': '执行监听', - 'Event type': '事件类型', - 'Listener type': '监听器类型', - 'Field injection': '字段注入', - 'Must provide a value': '必须提供一个值', - 'Script format': '脚本格式', - 'Format': '格式', - 'Script type': '脚本类型', - 'Inline script': '内联脚本', - 'External script': '外部脚本', - 'Resource': '资源', - 'Field snjection': '字段注入', - 'Extensions': '扩展', - 'Input/Output': '输入/输出', - 'Input Parameters': '输入参数', - 'Output Parameters': '输出参数', - 'Parameters': '参数', - 'Output Parameter': '输出参数', - 'Timer Definition Type': '定时器定义类型', - 'Timer Definition': '定时器定义', - 'Date': '日期', - 'Duration': '持续', - 'Cycle': '循环', - 'Signal': '信号', - 'Signal Name': '信号名称', - 'Escalation': '升级', - 'Error': '错误', - 'Link Name': '链接名称', - 'Condition': '条件名称', - 'Variable Name': '变量名称', - 'Variable Event': '变量事件', - 'Specify more than one variable change event as a comma separated list.': '多个变量事件以逗号隔开', - 'Wait for Completion': '等待完成', - 'Activity Ref': '活动参考', - 'Version Tag': '版本标签', - 'Executable': '可执行文件', - 'External task configuration': '扩展任务配置', - 'Task Priority': '任务优先级', - 'External': '外部', - 'Connector': '连接器', - 'Must configure Connector': '必须配置连接器', - 'Connector Id': '连接器编号', - 'Implementation': '实现方式', - 'Field Injections': '字段注入', - 'Fields': '字段', - 'Result Variable': '结果变量', - 'Topic': '主题', - 'Configure Connector': '配置连接器', - 'Input Parameter': '输入参数', - 'Assignee': '代理人', - 'Candidate Users': '候选用户', - 'Candidate Groups': '候选组', - 'Due Date': '到期时间', - 'Follow Up Date': '跟踪日期', - 'Specify more than one group as a comma separated list.': '多个用户使用逗号隔开', - 'Priority': '优先级', - // eslint-disable-next-line no-template-curly-in-string - 'The follow up date as an EL expression (e.g. ${someDate} or an ISO date (e.g. 2015-06-26T09:54:00)': - '跟踪日期必须符合EL表达式,如: ${someDate} ,或者一个ISO标准日期,如:2015-06-26T09:54:00', - // eslint-disable-next-line no-template-curly-in-string - 'The due date as an EL expression (e.g. ${someDate} or an ISO date (e.g. 2015-06-26T09:54:00)': - '跟踪日期必须符合EL表达式,如: ${someDate} ,或者一个ISO标准日期,如:2015-06-26T09:54:00', - 'Variables': '变量', - 'Candidate Starter Users': '选择启动候选人', - 'Candidate Starter Configuration': '候选人启动器配置', - 'Candidate Starter Groups': '候选人启动组', - 'This maps to the process definition key.': '编号将映射到流程主键.', - 'save': '保存', - 'Tools': '工具', - 'FlowGateway': '流程网关', - 'ProcessControl': '流程节点', - 'Create StartEvent': '开始节点', - 'Create EndEvent': '结束节点', - 'Create ExclusiveGateway': '互斥网关', - 'Create ParallelGateway': '并行网关', - 'Create Task': '任务节点', - 'Create UserTask': '用户任务节点', - 'Condition Type': '条件类型', - // 左侧工具箱补充汉化项 热水2020.1.12 - 'Create Group': '创建组', - 'Create DataObjectReference': '创建数据对象引用', - 'Create DataStoreReference': '创建数据存储引用', - // 节点添加Pad 补充汉化 热水2020.1.12 - 'Append EndEvent': '追加结束事件节点', - 'Append Gateway': '追加网关节点', - 'Append UserTask': '追加用户任务节点', - 'Append Intermediate/Boundary Event': '追加中间或边界事件', - 'History cleanup': '历史数据清理', - 'Time to live': '历史数据可保存时间', - 'Tasklist': '任务列表', - 'Start initiator': '开始节点', - 'Process': '业务流程', - 'Append Task': '追加任务', - 'Create User Task': '创建用户任务', - 'Default Flow': '默认流转路径', - 'Conditional Flow': '条件流转路径', - 'Sequence Flow': '普通流转路径', - 'Specify more than one user as a comma separated list.': '指定多个用户作为逗号分隔的列表。', - 'Tasklist Configuration': 'Tasklist配置', - 'Startable': '启动', - 'Execution listeners': '执行监听器', - 'Candidate starter': '候选人起动器', - 'Candidate starter users': '候选人', - 'Candidate starter groups': '候选组', - 'External task': '外部任务', - 'Job execution': '任务执行', - 'Extension properties': '扩展属性', - 'Start': '开始', - 'Outputs': '输出', - 'Inputs': '输入', - 'Local variable name': '变量名', - 'Assignment type': '任务类型', - 'Process variable name': '进程变量名', - 'Delegate expression': '代理表达式', - 'Script': '脚本', - 'Expression': '表达式', - 'Java class': 'Java类', - // 用户指派 - 'User assignment': '分配用户', - 'Candidate groups': '候选组', - 'Candidate users': '候选人', - 'Due date': '到期时间', - 'Follow up date': '跟进日期', - // 任务监听器 - 'Task listeners': '任务监听器', - 'Multi-instance': '多用户', - 'Loop cardinality': '循环基数', - 'Completion condition': '完成条件', - 'Collection': '用户集合', - 'Element variable': '元素变量', - 'Element documentation': '文档元素', - 'Version tag': '版本标签', - 'ID must be unique.': 'ID必须是唯一的。' + 'Terminate end event': '终止边界事件', + 'Timer intermediate catch event': '中间定时捕获事件', + 'Timer start event (non-interrupting)': '定时启动事件 (非中断)', + 'Timer start event': '定时启动事件', + 'User task': '用户任务', + 'Create start event': '创建开始事件', + 'Create gateway': '创建网关', + 'Create intermediate/boundary event': '创建中间/边界事件', + 'Create end event': '创建结束事件', + 'Create group': '创建组', + 'Create startEvent': '开始节点', + 'Create endEvent': '结束节点', + 'Create exclusiveGateway': '互斥网关', + 'Create parallelGateway': '并行网关', + 'Create task': '任务节点', + 'Create userTask': '用户任务节点', + 'Condition type': '条件类型', + 'Append end event': '追加结束事件节点', + 'Append gateway': '追加网关节点', + 'Append task': '追加任务', + 'Append user task': '追加用户任务节点', + 'Append text annotation': '追加文本注释', + 'Append intermediate/boundary event': '追加中间或边界事件', + 'Append receive task': '追加接收任务节点', + 'Append message intermediate catch event': '追加中间消息捕获事件', + 'Append timer intermediate catch event': '追加中间定时捕获事件', + 'Append conditional intermediate catch event': '追加中间条件捕获事件', + 'Append signal intermediate catch event': '追加中间信号捕获事件' }; diff --git a/src/components/BpmnDesign/assets/module/Translate/index.ts b/src/components/BpmnDesign/assets/module/Translate/index.ts index e6fc529..7324c77 100644 --- a/src/components/BpmnDesign/assets/module/Translate/index.ts +++ b/src/components/BpmnDesign/assets/module/Translate/index.ts @@ -2,7 +2,7 @@ import zh from '@/components/BpmnDesign/assets/lang/zh'; const customTranslate = (template: any, replacements: any) => { replacements = replacements || {}; - template = (zh as Record)[template] || template; + template = zh[template] || template; return template.replace(/{([^}]+)}/g, function (_: any, key: any) { return replacements[key] || '{' + key + '}'; }); diff --git a/src/components/BpmnDesign/index.vue b/src/components/BpmnDesign/index.vue index 6c7e38b..7c658e4 100644 --- a/src/components/BpmnDesign/index.vue +++ b/src/components/BpmnDesign/index.vue @@ -2,7 +2,7 @@
-
+
@@ -28,10 +28,11 @@ + 复制 - +