fix(bpm): 升级 BPMN 依赖并补齐设计器兼容修复

- 升级 bpmn-js/diagram-js/properties-panel/token-simulation 到 18.x/15.x 版本线
- 三端 ProcessDesigner 补 bpmnCanvas 空值保护,keyboard 改用 diagram-js 15 的 { bind: true }
- 三端 ProcessViewer 补 canvas/elementRegistry 局部类型与空值保护
- 三端 ElementMultiInstance 更新 loopCharacteristics 前增加空值校验
- web-antdv-next Divider 标题位置改用 title-placement

验证:12 个改动文件 ESLint 通过,web-antd/web-ele typecheck 通过,BPMN Delete/Undo/Redo 与 XML 往返浏览器 smoke 通过
migration
YunaiV 2026-06-21 10:37:22 -07:00
parent 796982e488
commit e227119f39
14 changed files with 272 additions and 223 deletions

View File

@ -245,6 +245,9 @@ const moddleExtensions = computed(() => {
const initBpmnModeler = () => {
if (bpmnModeler) return;
const data: any = document.querySelector('#bpmnCanvas');
if (!data) {
return;
}
// console.log(data, 'data');
// console.log(props.keyboard, 'props.keyboard');
// console.log(additionalModules, 'additionalModules()');
@ -261,7 +264,7 @@ const initBpmnModeler = () => {
// propertiesPanel: {
// parent: '#js-properties-panel'
// },
keyboard: props.keyboard ? { bindTo: document } : null,
keyboard: props.keyboard ? { bind: true } : null,
// additionalModules: additionalModules.value,
additionalModules: additionalModules.value as any[],
moddleExtensions: moddleExtensions.value,

View File

@ -39,10 +39,29 @@ const dialogTitle = ref<string | undefined>(undefined); // 弹窗标题
const selectActivityType = ref<string | undefined>(undefined); // Task
const selectTasks = ref<any[]>([]); //
type BpmnCanvas = {
_svg?: SVGSVGElement;
addMarker: (element: any, marker: string) => void;
removeMarker: (element: any, marker: string) => void;
zoom: (
newScale?: 'fit-viewport' | number,
center?: 'auto' | { x: number; y: number },
) => number;
};
type ElementRegistry = {
filter: (callback: (element: any) => boolean) => any[];
get: (id: string) => any;
};
const getCanvas = () =>
bpmnViewer.value?.get('canvas') as BpmnCanvas | undefined;
const getElementRegistry = () =>
bpmnViewer.value?.get('elementRegistry') as ElementRegistry | undefined;
/** Zoom恢复 */
const processReZoom = () => {
defaultZoom.value = 1;
bpmnViewer.value?.get('canvas').zoom('fit-viewport', 'auto');
getCanvas()?.zoom('fit-viewport', 'auto');
};
let resizeObserver: null | ResizeObserver = null;
@ -89,7 +108,7 @@ const processZoomIn = (zoomStep = 0.1) => {
);
}
defaultZoom.value = newZoom;
bpmnViewer.value?.get('canvas').zoom(defaultZoom.value);
getCanvas()?.zoom(defaultZoom.value);
};
/** Zoom缩小 */
@ -101,7 +120,7 @@ const processZoomOut = (zoomStep = 0.1) => {
);
}
defaultZoom.value = newZoom;
bpmnViewer.value?.get('canvas').zoom(defaultZoom.value);
getCanvas()?.zoom(defaultZoom.value);
};
/** 流程图预览清空 */
@ -122,9 +141,9 @@ const addCustomDefs = () => {
if (!bpmnViewer.value) {
return;
}
const canvas = bpmnViewer.value?.get('canvas');
const canvas = getCanvas();
const svg = canvas?._svg;
svg.append(customDefs.value);
svg?.append(customDefs.value);
};
/** 节点选中 */
@ -220,8 +239,11 @@ const setProcessStatus = (view: any) => {
finishedSequenceFlowActivityIds,
rejectedTaskActivityIds,
} = view;
const canvas: any = bpmnViewer.value.get('canvas');
const elementRegistry: any = bpmnViewer.value.get('elementRegistry');
const canvas = getCanvas();
const elementRegistry = getElementRegistry();
if (!canvas || !elementRegistry) {
return;
}
//
if (Array.isArray(finishedSequenceFlowActivityIds)) {
@ -229,7 +251,7 @@ const setProcessStatus = (view: any) => {
if (item !== null) {
canvas.addMarker(item, 'success');
const element = elementRegistry.get(item);
const conditionExpression = element.businessObject.conditionExpression;
const conditionExpression = element?.businessObject.conditionExpression;
if (conditionExpression) {
canvas.addMarker(item, 'condition-expression');
}

View File

@ -61,8 +61,8 @@ interface LoopInstanceForm {
}
const loopInstanceForm = ref<LoopInstanceForm>({});
const bpmnElement = ref<any>(null);
const multiLoopInstance = ref<any>(null);
const bpmnElement = ref<any | null>(null);
const multiLoopInstance = ref<any | null>(null);
declare global {
interface Window {
bpmnInstances?: () => any;
@ -276,7 +276,7 @@ const approveMethod = ref<ApproveMethodType | undefined>();
const approveRatio = ref<number>(100);
const otherExtensions = ref<any[]>([]);
const getElementLoopNew = (): void => {
if (props.type === 'UserTask') {
if (props.type === 'UserTask' && bpmnElement.value) {
const loopCharacteristics =
bpmnElement.value.businessObject?.loopCharacteristics;
const extensionElements =
@ -320,6 +320,9 @@ const onApproveRatioChange = (): void => {
updateLoopCharacteristics();
};
const updateLoopCharacteristics = (): void => {
if (!bpmnElement.value) {
return;
}
// ApproveMethodmultiInstanceLoopCharacteristics
if (approveMethod.value === ApproveMethodType.RANDOM_SELECT_ONE_APPROVE) {
bpmnInstances().modeling.updateProperties(toRaw(bpmnElement.value), {
@ -367,9 +370,11 @@ const updateLoopCharacteristics = (): void => {
body: `\${ nrOfCompletedInstances >= nrOfInstances }`,
});
}
bpmnInstances().modeling.updateProperties(toRaw(bpmnElement.value), {
loopCharacteristics: toRaw(multiLoopInstance.value),
});
if (multiLoopInstance.value) {
bpmnInstances().modeling.updateProperties(toRaw(bpmnElement.value), {
loopCharacteristics: toRaw(multiLoopInstance.value),
});
}
}
// ApproveMethodExtensionElements

View File

@ -245,6 +245,9 @@ const moddleExtensions = computed(() => {
const initBpmnModeler = () => {
if (bpmnModeler) return;
const data: any = document.querySelector('#bpmnCanvas');
if (!data) {
return;
}
// console.log(data, 'data');
// console.log(props.keyboard, 'props.keyboard');
// console.log(additionalModules, 'additionalModules()');
@ -261,7 +264,7 @@ const initBpmnModeler = () => {
// propertiesPanel: {
// parent: '#js-properties-panel'
// },
keyboard: props.keyboard ? { bindTo: document } : null,
keyboard: props.keyboard ? { bind: true } : null,
// additionalModules: additionalModules.value,
additionalModules: additionalModules.value as any[],
moddleExtensions: moddleExtensions.value,

View File

@ -48,6 +48,25 @@ const dialogVisible = ref(false); // 弹窗可见性
const dialogTitle = ref<string | undefined>(undefined); //
const selectActivityType = ref<string | undefined>(undefined); // Task
const selectTasks = ref<any[]>([]); //
type BpmnCanvas = {
_svg?: SVGSVGElement;
addMarker: (element: any, marker: string) => void;
removeMarker: (element: any, marker: string) => void;
zoom: (
newScale?: 'fit-viewport' | number,
center?: 'auto' | { x: number; y: number },
) => number;
};
type ElementRegistry = {
filter: (callback: (element: any) => boolean) => any[];
get: (id: string) => any;
};
const getCanvas = () =>
bpmnViewer.value?.get('canvas') as BpmnCanvas | undefined;
const getElementRegistry = () =>
bpmnViewer.value?.get('elementRegistry') as ElementRegistry | undefined;
const approvalColumns = computed<TableColumnType[]>(() => {
const userColumn: TableColumnType =
selectActivityType.value === 'bpmn:UserTask'
@ -126,7 +145,7 @@ const approvalColumns = computed<TableColumnType[]>(() => {
/** Zoom恢复 */
const processReZoom = () => {
defaultZoom.value = 1;
bpmnViewer.value?.get('canvas').zoom('fit-viewport', 'auto');
getCanvas()?.zoom('fit-viewport', 'auto');
};
let resizeObserver: null | ResizeObserver = null;
@ -173,7 +192,7 @@ const processZoomIn = (zoomStep = 0.1) => {
);
}
defaultZoom.value = newZoom;
bpmnViewer.value?.get('canvas').zoom(defaultZoom.value);
getCanvas()?.zoom(defaultZoom.value);
};
/** Zoom缩小 */
@ -185,7 +204,7 @@ const processZoomOut = (zoomStep = 0.1) => {
);
}
defaultZoom.value = newZoom;
bpmnViewer.value?.get('canvas').zoom(defaultZoom.value);
getCanvas()?.zoom(defaultZoom.value);
};
/** 流程图预览清空 */
@ -206,9 +225,9 @@ const addCustomDefs = () => {
if (!bpmnViewer.value) {
return;
}
const canvas = bpmnViewer.value?.get('canvas');
const canvas = getCanvas();
const svg = canvas?._svg;
svg.append(customDefs.value);
svg?.append(customDefs.value);
};
/** 节点选中 */
@ -304,8 +323,11 @@ const setProcessStatus = (view: any) => {
finishedSequenceFlowActivityIds,
rejectedTaskActivityIds,
} = view;
const canvas: any = bpmnViewer.value.get('canvas');
const elementRegistry: any = bpmnViewer.value.get('elementRegistry');
const canvas = getCanvas();
const elementRegistry = getElementRegistry();
if (!canvas || !elementRegistry) {
return;
}
//
if (Array.isArray(finishedSequenceFlowActivityIds)) {
@ -313,7 +335,7 @@ const setProcessStatus = (view: any) => {
if (item !== null) {
canvas.addMarker(item, 'success');
const element = elementRegistry.get(item);
const conditionExpression = element.businessObject.conditionExpression;
const conditionExpression = element?.businessObject.conditionExpression;
if (conditionExpression) {
canvas.addMarker(item, 'condition-expression');
}

View File

@ -218,7 +218,7 @@ watch(
<template>
<div>
<Divider orientation="left">审批人超时未处理时</Divider>
<Divider title-placement="left">审批人超时未处理时</Divider>
<FormItem label="启用开关" name="timeoutHandlerEnable">
<Switch
v-model:checked="timeoutHandlerEnable"

View File

@ -447,7 +447,7 @@ onMounted(async () => {
<template>
<div>
<Divider orientation="left">审批类型</Divider>
<Divider title-placement="left">审批类型</Divider>
<FormItem name="approveType" label="审批类型">
<RadioGroup v-model:value="approveType.value">
<Radio
@ -460,7 +460,7 @@ onMounted(async () => {
</RadioGroup>
</FormItem>
<Divider orientation="left">审批人拒绝时</Divider>
<Divider title-placement="left">审批人拒绝时</Divider>
<FormItem name="rejectHandlerType" label="处理方式">
<RadioGroup
v-model:value="rejectHandlerType"
@ -492,7 +492,7 @@ onMounted(async () => {
/>
</FormItem>
<Divider orientation="left">审批人为空时</Divider>
<Divider title-placement="left">审批人为空时</Divider>
<FormItem name="assignEmptyHandlerType">
<RadioGroup
v-model:value="assignEmptyHandlerType"
@ -523,7 +523,7 @@ onMounted(async () => {
/>
</FormItem>
<Divider orientation="left">审批人与提交人为同一人时</Divider>
<Divider title-placement="left">审批人与提交人为同一人时</Divider>
<RadioGroup
v-model:value="assignStartUserHandlerType"
@change="updateAssignStartUserHandlerType"
@ -540,7 +540,7 @@ onMounted(async () => {
</div>
</RadioGroup>
<Divider orientation="left">操作按钮</Divider>
<Divider title-placement="left">操作按钮</Divider>
<div class="mt-2 text-sm">
<!-- 头部标题行 -->
<div
@ -587,7 +587,7 @@ onMounted(async () => {
</div>
</div>
<Divider orientation="left">字段权限</Divider>
<Divider title-placement="left">字段权限</Divider>
<div v-if="formType === BpmModelFormType.NORMAL" class="mt-2 text-sm">
<!-- 头部标题行 -->
<div
@ -663,7 +663,7 @@ onMounted(async () => {
</div>
</div>
<Divider orientation="left">是否需要签名</Divider>
<Divider title-placement="left">是否需要签名</Divider>
<FormItem name="signEnable">
<Switch
v-model:checked="signEnable.value"
@ -673,7 +673,7 @@ onMounted(async () => {
/>
</FormItem>
<Divider orientation="left">审批意见</Divider>
<Divider title-placement="left">审批意见</Divider>
<FormItem name="reasonRequire">
<Switch
v-model:checked="reasonRequire.value"

View File

@ -61,8 +61,8 @@ interface LoopInstanceForm {
}
const loopInstanceForm = ref<LoopInstanceForm>({});
const bpmnElement = ref<any>(null);
const multiLoopInstance = ref<any>(null);
const bpmnElement = ref<any | null>(null);
const multiLoopInstance = ref<any | null>(null);
declare global {
interface Window {
bpmnInstances?: () => any;
@ -276,7 +276,7 @@ const approveMethod = ref<ApproveMethodType | undefined>();
const approveRatio = ref<number>(100);
const otherExtensions = ref<any[]>([]);
const getElementLoopNew = (): void => {
if (props.type === 'UserTask') {
if (props.type === 'UserTask' && bpmnElement.value) {
const loopCharacteristics =
bpmnElement.value.businessObject?.loopCharacteristics;
const extensionElements =
@ -320,6 +320,9 @@ const onApproveRatioChange = (): void => {
updateLoopCharacteristics();
};
const updateLoopCharacteristics = (): void => {
if (!bpmnElement.value) {
return;
}
// ApproveMethodmultiInstanceLoopCharacteristics
if (approveMethod.value === ApproveMethodType.RANDOM_SELECT_ONE_APPROVE) {
bpmnInstances().modeling.updateProperties(toRaw(bpmnElement.value), {
@ -367,9 +370,11 @@ const updateLoopCharacteristics = (): void => {
body: `\${ nrOfCompletedInstances >= nrOfInstances }`,
});
}
bpmnInstances().modeling.updateProperties(toRaw(bpmnElement.value), {
loopCharacteristics: toRaw(multiLoopInstance.value),
});
if (multiLoopInstance.value) {
bpmnInstances().modeling.updateProperties(toRaw(bpmnElement.value), {
loopCharacteristics: toRaw(multiLoopInstance.value),
});
}
}
// ApproveMethodExtensionElements

View File

@ -66,7 +66,7 @@ defineExpose({ validate });
:key="listenerIdx"
class="pl-2"
>
<Divider orientation="left">
<Divider title-placement="left">
<TypographyText tag="b" size="large">
{{ listener.name }}
</TypographyText>

View File

@ -252,6 +252,9 @@ const moddleExtensions = computed(() => {
const initBpmnModeler = () => {
if (bpmnModeler) return;
const data: any = document.querySelector('#bpmnCanvas');
if (!data) {
return;
}
// console.log(data, 'data');
// console.log(props.keyboard, 'props.keyboard');
// console.log(additionalModules, 'additionalModules()');
@ -268,7 +271,7 @@ const initBpmnModeler = () => {
// propertiesPanel: {
// parent: '#js-properties-panel'
// },
keyboard: props.keyboard ? { bindTo: document } : null,
keyboard: props.keyboard ? { bind: true } : null,
// additionalModules: additionalModules.value,
additionalModules: additionalModules.value as any[],
moddleExtensions: moddleExtensions.value,

View File

@ -46,10 +46,29 @@ const dialogTitle = ref<string | undefined>(undefined); // 弹窗标题
const selectActivityType = ref<string | undefined>(undefined); // Task
const selectTasks = ref<any[]>([]); //
type BpmnCanvas = {
_svg?: SVGSVGElement;
addMarker: (element: any, marker: string) => void;
removeMarker: (element: any, marker: string) => void;
zoom: (
newScale?: 'fit-viewport' | number,
center?: 'auto' | { x: number; y: number },
) => number;
};
type ElementRegistry = {
filter: (callback: (element: any) => boolean) => any[];
get: (id: string) => any;
};
const getCanvas = () =>
bpmnViewer.value?.get('canvas') as BpmnCanvas | undefined;
const getElementRegistry = () =>
bpmnViewer.value?.get('elementRegistry') as ElementRegistry | undefined;
/** Zoom恢复 */
const processReZoom = () => {
defaultZoom.value = 1;
bpmnViewer.value?.get('canvas').zoom('fit-viewport', 'auto');
getCanvas()?.zoom('fit-viewport', 'auto');
};
let resizeObserver: null | ResizeObserver = null;
@ -96,7 +115,7 @@ const processZoomIn = (zoomStep = 0.1) => {
);
}
defaultZoom.value = newZoom;
bpmnViewer.value?.get('canvas').zoom(defaultZoom.value);
getCanvas()?.zoom(defaultZoom.value);
};
/** Zoom缩小 */
@ -108,7 +127,7 @@ const processZoomOut = (zoomStep = 0.1) => {
);
}
defaultZoom.value = newZoom;
bpmnViewer.value?.get('canvas').zoom(defaultZoom.value);
getCanvas()?.zoom(defaultZoom.value);
};
/** 流程图预览清空 */
@ -129,9 +148,9 @@ const addCustomDefs = () => {
if (!bpmnViewer.value) {
return;
}
const canvas = bpmnViewer.value?.get('canvas');
const canvas = getCanvas();
const svg = canvas?._svg;
svg.append(customDefs.value);
svg?.append(customDefs.value);
};
/** 节点选中 */
@ -227,8 +246,11 @@ const setProcessStatus = (view: any) => {
finishedSequenceFlowActivityIds,
rejectedTaskActivityIds,
} = view;
const canvas: any = bpmnViewer.value.get('canvas');
const elementRegistry: any = bpmnViewer.value.get('elementRegistry');
const canvas = getCanvas();
const elementRegistry = getElementRegistry();
if (!canvas || !elementRegistry) {
return;
}
//
if (Array.isArray(finishedSequenceFlowActivityIds)) {
@ -236,7 +258,7 @@ const setProcessStatus = (view: any) => {
if (item !== null) {
canvas.addMarker(item, 'success');
const element = elementRegistry.get(item);
const conditionExpression = element.businessObject.conditionExpression;
const conditionExpression = element?.businessObject.conditionExpression;
if (conditionExpression) {
canvas.addMarker(item, 'condition-expression');
}

View File

@ -63,8 +63,8 @@ interface LoopInstanceForm {
}
const loopInstanceForm = ref<LoopInstanceForm>({});
const bpmnElement = ref<any>(null);
const multiLoopInstance = ref<any>(null);
const bpmnElement = ref<any | null>(null);
const multiLoopInstance = ref<any | null>(null);
declare global {
interface Window {
bpmnInstances?: () => any;
@ -275,7 +275,7 @@ const approveMethod = ref<ApproveMethodType | undefined>();
const approveRatio = ref<number>(100);
const otherExtensions = ref<any[]>([]);
const getElementLoopNew = (): void => {
if (props.type === 'UserTask') {
if (props.type === 'UserTask' && bpmnElement.value) {
const loopCharacteristics =
bpmnElement.value.businessObject?.loopCharacteristics;
const extensionElements =
@ -319,6 +319,9 @@ const onApproveRatioChange = (): void => {
updateLoopCharacteristics();
};
const updateLoopCharacteristics = (): void => {
if (!bpmnElement.value) {
return;
}
// ApproveMethodmultiInstanceLoopCharacteristics
if (approveMethod.value === ApproveMethodType.RANDOM_SELECT_ONE_APPROVE) {
bpmnInstances().modeling.updateProperties(toRaw(bpmnElement.value), {
@ -363,9 +366,11 @@ const updateLoopCharacteristics = (): void => {
body: `\${ nrOfCompletedInstances >= nrOfInstances }`,
});
}
bpmnInstances().modeling.updateProperties(toRaw(bpmnElement.value), {
loopCharacteristics: toRaw(multiLoopInstance.value),
});
if (multiLoopInstance.value) {
bpmnInstances().modeling.updateProperties(toRaw(bpmnElement.value), {
loopCharacteristics: toRaw(multiLoopInstance.value),
});
}
}
// ApproveMethodExtensionElements

View File

@ -229,14 +229,14 @@ catalogs:
specifier: ^1.1.5
version: 1.1.5
bpmn-js:
specifier: ^17.11.1
version: 17.11.1
specifier: ^18.16.1
version: 18.18.0
bpmn-js-properties-panel:
specifier: 5.23.0
version: 5.23.0
specifier: 5.54.0
version: 5.54.0
bpmn-js-token-simulation:
specifier: ^0.36.3
version: 0.36.3
specifier: ^0.39.3
version: 0.39.4
cac:
specifier: ^7.0.0
version: 7.0.0
@ -292,8 +292,8 @@ catalogs:
specifier: ^9.1.4
version: 9.1.4
diagram-js:
specifier: ^12.8.1
version: 12.8.1
specifier: ^15.14.0
version: 15.17.0
dotenv:
specifier: ^17.4.2
version: 17.4.2
@ -812,13 +812,13 @@ importers:
version: 1.1.5
bpmn-js:
specifier: 'catalog:'
version: 17.11.1
version: 18.18.0
bpmn-js-properties-panel:
specifier: 'catalog:'
version: 5.23.0(@bpmn-io/properties-panel@3.44.1(@bpmn-io/cm-theme@0.1.0-alpha.2))(bpmn-js@17.11.1)(camunda-bpmn-js-behaviors@1.16.1(bpmn-js@17.11.1)(camunda-bpmn-moddle@7.0.1)(zeebe-bpmn-moddle@1.14.0))(diagram-js@12.8.1)
version: 5.54.0(@bpmn-io/properties-panel@3.44.1(@bpmn-io/cm-theme@0.1.0-alpha.2))(bpmn-js@18.18.0)(camunda-bpmn-js-behaviors@1.16.1(bpmn-js@18.18.0)(camunda-bpmn-moddle@7.0.1)(zeebe-bpmn-moddle@1.14.0))(diagram-js@15.17.0)
bpmn-js-token-simulation:
specifier: 'catalog:'
version: 0.36.3
version: 0.39.4
camunda-bpmn-moddle:
specifier: 'catalog:'
version: 7.0.1
@ -833,7 +833,7 @@ importers:
version: 9.1.4
diagram-js:
specifier: 'catalog:'
version: 12.8.1
version: 15.17.0
fast-xml-parser:
specifier: 'catalog:'
version: 4.5.6
@ -947,13 +947,13 @@ importers:
version: 1.1.5
bpmn-js:
specifier: 'catalog:'
version: 17.11.1
version: 18.18.0
bpmn-js-properties-panel:
specifier: 'catalog:'
version: 5.23.0(@bpmn-io/properties-panel@3.44.1(@bpmn-io/cm-theme@0.1.0-alpha.2))(bpmn-js@17.11.1)(camunda-bpmn-js-behaviors@1.16.1(bpmn-js@17.11.1)(camunda-bpmn-moddle@7.0.1)(zeebe-bpmn-moddle@1.14.0))(diagram-js@12.8.1)
version: 5.54.0(@bpmn-io/properties-panel@3.44.1(@bpmn-io/cm-theme@0.1.0-alpha.2))(bpmn-js@18.18.0)(camunda-bpmn-js-behaviors@1.16.1(bpmn-js@18.18.0)(camunda-bpmn-moddle@7.0.1)(zeebe-bpmn-moddle@1.14.0))(diagram-js@15.17.0)
bpmn-js-token-simulation:
specifier: 'catalog:'
version: 0.36.3
version: 0.39.4
camunda-bpmn-moddle:
specifier: 'catalog:'
version: 7.0.1
@ -968,7 +968,7 @@ importers:
version: 9.1.4
diagram-js:
specifier: 'catalog:'
version: 12.8.1
version: 15.17.0
fast-xml-parser:
specifier: 'catalog:'
version: 4.5.6
@ -1079,13 +1079,13 @@ importers:
version: 1.1.5
bpmn-js:
specifier: 'catalog:'
version: 17.11.1
version: 18.18.0
bpmn-js-properties-panel:
specifier: 'catalog:'
version: 5.23.0(@bpmn-io/properties-panel@3.44.1(@bpmn-io/cm-theme@0.1.0-alpha.2))(bpmn-js@17.11.1)(camunda-bpmn-js-behaviors@1.16.1(bpmn-js@17.11.1)(camunda-bpmn-moddle@7.0.1)(zeebe-bpmn-moddle@1.14.0))(diagram-js@12.8.1)
version: 5.54.0(@bpmn-io/properties-panel@3.44.1(@bpmn-io/cm-theme@0.1.0-alpha.2))(bpmn-js@18.18.0)(camunda-bpmn-js-behaviors@1.16.1(bpmn-js@18.18.0)(camunda-bpmn-moddle@7.0.1)(zeebe-bpmn-moddle@1.14.0))(diagram-js@15.17.0)
bpmn-js-token-simulation:
specifier: 'catalog:'
version: 0.36.3
version: 0.39.4
camunda-bpmn-moddle:
specifier: 'catalog:'
version: 7.0.1
@ -1100,7 +1100,7 @@ importers:
version: 9.1.4
diagram-js:
specifier: 'catalog:'
version: 12.8.1
version: 15.17.0
element-plus:
specifier: 'catalog:'
version: 2.14.2(vue@3.5.38(typescript@6.0.3))
@ -1323,14 +1323,14 @@ importers:
version: 2.9.10(vue@3.5.38(typescript@6.0.3))
vitepress-plugin-group-icons:
specifier: 'catalog:'
version: 1.7.5(vite@8.0.10(@types/node@25.9.3)(esbuild@0.28.1)(jiti@2.7.0)(less@4.6.6)(sass-embedded@1.100.0)(sass@1.101.0)(terser@5.48.0)(yaml@2.9.0))
version: 1.7.5(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(jiti@2.7.0)(less@4.6.6)(sass-embedded@1.100.0)(sass@1.101.0)(terser@5.48.0)(yaml@2.9.0))
devDependencies:
'@nolebase/vitepress-plugin-git-changelog':
specifier: 'catalog:'
version: 2.18.2(vitepress@2.0.0-alpha.17(@types/node@25.9.3)(async-validator@4.2.5)(axios@1.18.0)(change-case@5.4.4)(jiti@2.7.0)(less@4.6.6)(lightningcss@1.32.0)(nprogress@0.2.0)(postcss@8.5.15)(qrcode@1.5.4)(sass-embedded@1.100.0)(sass@1.101.0)(sortablejs@1.15.7)(terser@5.48.0)(typescript@6.0.3)(yaml@2.9.0))(vue@3.5.38(typescript@6.0.3))
'@tailwindcss/vite':
specifier: 'catalog:'
version: 4.3.1(vite@8.0.10(@types/node@25.9.3)(esbuild@0.28.1)(jiti@2.7.0)(less@4.6.6)(sass-embedded@1.100.0)(sass@1.101.0)(terser@5.48.0)(yaml@2.9.0))
version: 4.3.1(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(jiti@2.7.0)(less@4.6.6)(sass-embedded@1.100.0)(sass@1.101.0)(terser@5.48.0)(yaml@2.9.0))
'@vben/tailwind-config':
specifier: workspace:*
version: link:../internal/tailwind-config
@ -1339,7 +1339,7 @@ importers:
version: link:../internal/vite-config
'@vite-pwa/vitepress':
specifier: 'catalog:'
version: 1.1.0(vite-plugin-pwa@1.3.0(vite@8.0.10(@types/node@25.9.3)(esbuild@0.28.1)(jiti@2.7.0)(less@4.6.6)(sass-embedded@1.100.0)(sass@1.101.0)(terser@5.48.0)(yaml@2.9.0))(workbox-build@7.4.1)(workbox-window@7.4.1))
version: 1.1.0(vite-plugin-pwa@1.3.0(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(jiti@2.7.0)(less@4.6.6)(sass-embedded@1.100.0)(sass@1.101.0)(terser@5.48.0)(yaml@2.9.0))(workbox-build@7.4.1)(workbox-window@7.4.1))
vitepress:
specifier: 'catalog:'
version: 2.0.0-alpha.17(@types/node@25.9.3)(async-validator@4.2.5)(axios@1.18.0)(change-case@5.4.4)(jiti@2.7.0)(less@4.6.6)(lightningcss@1.32.0)(nprogress@0.2.0)(postcss@8.5.15)(qrcode@1.5.4)(sass-embedded@1.100.0)(sass@1.101.0)(sortablejs@1.15.7)(terser@5.48.0)(typescript@6.0.3)(yaml@2.9.0)
@ -3069,8 +3069,8 @@ packages:
'@bpmn-io/diagram-js-ui@0.2.4':
resolution: {integrity: sha512-I678ZGtoH7z7FgzFhzzppM9ThsJ3Lh83kW3GjhjG3xyYciIPYHMaHK1MABP8F69H9pFZpViM6t4qUo8dwrVz0w==}
'@bpmn-io/extract-process-variables@0.8.0':
resolution: {integrity: sha512-yAS7ZYX+D56K+luC36u96eRMLb4VHcPUwTUqMZ/Z/Je2gou2DJLRbuBTHAB4jjKt4wFCHSG4B8Y+TrBciEYf4w==}
'@bpmn-io/extract-process-variables@2.2.1':
resolution: {integrity: sha512-1E5ydNzTqgx513NxA1nxk2CqDb9OkusfU9Tf6WejD1BiY+5u130XnZOFE/FQX0JB6ZmPOeFMx4IDEuHjrGhOzw==}
'@bpmn-io/feel-editor@2.6.0':
resolution: {integrity: sha512-rI7vFBATeKJVi/KpkfxnclTObAvQGYda0l5eKhNwGIJ8D3+aPQlgdNtxJATX1keXVkqsA1Q/+Yn8Ih+dnC0NMw==}
@ -7237,23 +7237,24 @@ packages:
resolution: {integrity: sha512-F3PH5k5juxom4xktynS7MoFY+NUWH5LC4CnH11YB8NPew+HLpmBLCybSAEyb2F+4pRXhuhWqFesoQd6DAyc2hw==}
engines: {node: '>=18'}
bpmn-js-properties-panel@5.23.0:
resolution: {integrity: sha512-4B27LM8oV14A2QWRvazV17h4NxbkNERcqU+AGJmxKImMlLhu9893MWR+pCdTQCTphBdBkuD8ksWm+1wVCedJ7g==}
bpmn-js-properties-panel@5.54.0:
resolution: {integrity: sha512-CHmIWweeZrIZrmdn3R2cFp4PInxxirVgn5U4kXeF8+IKenZ33aVivVddjuh+02H9JwmOSDblC0vgUIS+HNbSVg==}
peerDependencies:
'@bpmn-io/properties-panel': '>= 3.7'
'@bpmn-io/properties-panel': '>= 3.40.6'
bpmn-js: '>= 11.5'
camunda-bpmn-js-behaviors: '>= 0.4'
diagram-js: '>= 11.9'
bpmn-js-token-simulation@0.36.3:
resolution: {integrity: sha512-HyiExdi+vENiStn284gIUQkQliiWly4dk2kY9PJILwwuTIoKtvg1zw8LGr9ReNUiScibNbpkt45bR25Oqfq9wA==}
bpmn-js-token-simulation@0.39.4:
resolution: {integrity: sha512-cCA4WV4eSUAQNUhzi5yUPQ00GWo/Ll28PHCdMxUi++j52CM6oO67BGiMkQSHNm0jXKVRQptoIQWLChLYMgC1zQ==}
engines: {node: '>= 16'}
bpmn-js@17.11.1:
resolution: {integrity: sha512-ywCeTg5kvN8lYkU+fHE+YXTGlfKc55lRBn7zW3k1//toeMNPy/PS/uQiujRWdFhMrH5dbtDvlwWukNw2pjWw8Q==}
bpmn-js@18.18.0:
resolution: {integrity: sha512-3pTiqc5M+CRtXCvBjRBFEewqNKDnx0ytuCLucvMRfdhes/EuVr4memcsi6ql+q/1RUbycOL9MyfNcgrwSfnA1w==}
bpmn-moddle@8.1.0:
resolution: {integrity: sha512-yI5OAFfYVJwViKTsTsonVfCBPtB3MlefADUORwNIxxBOMp21vnoxuxsdgUWlPH/dvAEZh/+mr8UtqOBNu8NC5Q==}
bpmn-moddle@10.0.0:
resolution: {integrity: sha512-vXePD5jkatcILmM3zwJG/m6IIHIghTGB7WvgcdEraEw8E8VdJHrTgrvBUhbzqaXJpnsGQz15QS936xeBY6l9aA==}
engines: {node: '>= 20.12'}
brace-expansion@2.1.1:
resolution: {integrity: sha512-WR1cURNjuvBLMZBMbqM0UoE+WAfdUcEV1ccD8PVBVOI+Z3ND4+SZbN8RsfT2bMuG1qwz5RFvPukSZm5fF2D5eA==}
@ -7541,9 +7542,6 @@ packages:
compatx@0.2.0:
resolution: {integrity: sha512-6gLRNt4ygsi5NyMVhceOCFv14CIdDFN7fQjX1U4+47qVE/+kjPoXMK65KWK+dWxmFzMTuKazoQ9sch6pM0p5oA==}
component-event@0.2.1:
resolution: {integrity: sha512-wGA++isMqiDq1jPYeyv2as/Bt/u+3iLW0rEa+8NQ82jAv3TgqMiCM+B2SaBdn2DfLilLjjq736YcezihRYhfxw==}
compress-commons@6.0.2:
resolution: {integrity: sha512-6FqVXeETqWPoGcfzrXb37E50NP0LXT8kAMu5ooZayhWWdgEY4lBEEcbQNXtkuKQsGduxiIcI4gOTsxTmuq/bSg==}
engines: {node: '>= 14'}
@ -8028,18 +8026,12 @@ packages:
peerDependencies:
diagram-js: '*'
diagram-js@12.8.1:
resolution: {integrity: sha512-LF9BiwjbOPpZd0ez5VSlYRbdbEA59YQX43bWvNDp1rLMv0xwZ5yIg4oaYDK82nIQ0kH1tjvoQRpNevMTCgQVyw==}
diagram-js@15.17.0:
resolution: {integrity: sha512-wOlnfzd7MmcUMwIpJiCiFScQ04hQMx4Ribir0ky4cfNgzwr7V1dhi7MdFuLyaMdseglMkBU7YYoqmzCDR8+JCw==}
diagram-js@14.11.3:
resolution: {integrity: sha512-Seq9BHAXfzKS60L4v4Gvgvv72wOtvrfJQAyyPm9pntSZDMzjoodPSXnEUPud1G2zVCMGEUUW++s0reEdaWgkXA==}
didi@10.2.2:
resolution: {integrity: sha512-l8NYkYFXV1izHI65EyT8EXOjUZtKmQkHLTT89cSP7HU5J/G7AOj0dXKtLc04EXYlga99PBY18IPjOeZ+c3DI4w==}
engines: {node: '>= 16'}
didi@9.0.2:
resolution: {integrity: sha512-q2+aj+lnJcUweV7A9pdUrwFr4LHVmRPwTmQLtHPFz4aT7IBoryN6Iy+jmFku+oIzr5ebBkvtBCOb87+dJhb7bg==}
didi@11.0.0:
resolution: {integrity: sha512-PzCfRzQttvFpVcYMbSF7h8EsWjeJpVjWH4qDhB5LkMi1ILvHq4Ob0vhM2wLFziPkbUBi+PAo7ODbe2sacR7nJQ==}
engines: {node: '>= 20.12'}
diff-sequences@29.6.3:
resolution: {integrity: sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==}
@ -8074,9 +8066,6 @@ packages:
resolution: {integrity: sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==}
engines: {node: '>= 4'}
domify@1.4.2:
resolution: {integrity: sha512-m4yreHcUWHBncGVV7U+yQzc12vIlq0jMrtHZ5mW6dQMiL/7skSYNVX9wqKwOtyO9SGCgevrAFEgOCAHmamHTUA==}
domify@3.0.0:
resolution: {integrity: sha512-bs2yO68JDFOm6rKv8f0EnrM2cENduhRkpqOtt/s5l5JBA/eqGBZCzLPmdYoHtJ6utgLGgcBajFsEQbl12pT0lQ==}
engines: {node: '>=20'}
@ -8858,10 +8847,6 @@ packages:
h3@1.15.11:
resolution: {integrity: sha512-L3THSe2MPeBwgIZVSH5zLdBBU90TOxarvhK9d04IDY2AmVS8j2Jz2LIWtwsGOU3lu2I5jCN7FNvVfY2+XyF+mg==}
hammerjs@2.0.8:
resolution: {integrity: sha512-tSQXBXS/MWQOn/RKckawJ61vvsDpCom87JgxiYdGwHdOa0ht0vzUWDlfioofFCRU0L+6NGDt6XzbgoJvZkMeRQ==}
engines: {node: '>=0.8.0'}
happy-dom@20.10.6:
resolution: {integrity: sha512-6QD0ilzDDt93tX44y8tbmZdAcdTRYDhUP+Asgi6pC8Pp5IA3cvaZGyoVN/EGtlq9ziT65iPuBBn3ASLr6hCgVw==}
engines: {node: '>=20.0.0'}
@ -8988,9 +8973,6 @@ packages:
idb@7.1.1:
resolution: {integrity: sha512-gchesWBzyvGHRO9W8tzUWFDycow5gwjvFKfyV9FF32Y7F50yZMp7mP+T2mJIWFx49zicqyC4uefHM17o6xKIVQ==}
ids@1.0.5:
resolution: {integrity: sha512-XQ0yom/4KWTL29sLG+tyuycy7UmeaM/79GRtSJq6IG9cJGIPeBz5kwDCguie3TwxaMNIc3WtPi0cTa1XYHicpw==}
ids@3.0.2:
resolution: {integrity: sha512-t6YJP4mdC+GHF96Nbis/4FEANhP/8VWmYMvUuYpXvSdrhg5hpIVbq2XZlOA3UWTbtdwPCi0q7jEXOdHkAnqOnw==}
engines: {node: '>= 20.12'}
@ -9884,18 +9866,12 @@ packages:
resolution: {integrity: sha512-VP79XUPxV2CigYP3jWwAUFSku2aKqBH7uTAapFWCBqutsbmDo96KY5o8uh6U+/YSIn5OxJnXp73beVkpqMIGhA==}
engines: {node: '>=18'}
min-dash@4.2.3:
resolution: {integrity: sha512-VLMYQI5+FcD9Ad24VcB08uA83B07OhueAlZ88jBK6PyupTvEJwllTMUqMy0wPGYs7pZUEtEEMWdHB63m3LtEcg==}
min-dash@5.0.0:
resolution: {integrity: sha512-EGuoBnVL7/Fnv2sqakpX5WGmZehZ3YMmLayT7sM8E9DRU74kkeyMg4Rik1lsOkR2GbFNeBca4/L+UfU6gF0Edw==}
min-document@2.19.2:
resolution: {integrity: sha512-8S5I8db/uZN8r9HSLFVWPdJCvYOejMcEC82VIzNUc6Zkklf/d1gg2psfE79/vyhWOj4+J8MtwmoOz3TmvaGu5A==}
min-dom@4.2.1:
resolution: {integrity: sha512-TMoL8SEEIhUWYgkj7XMSgxmwSyGI+4fP2KFFGnN3FbHfbGHVdsLYSz8LoIsgPhz4dWRmLvxWWSMgzZMJW5sZuA==}
min-dom@5.3.0:
resolution: {integrity: sha512-0w5FEBgPAyHhmFojW3zxd7we3D+m5XYS3E/06OyvxmbHJoiQVa4Nagj6RWvoAKYRw5xth6cP5TMePc5cR1M9hA==}
@ -9931,11 +9907,14 @@ packages:
mlly@1.8.2:
resolution: {integrity: sha512-d+ObxMQFmbt10sretNDytwt85VrbkhhUA/JBGm1MPaWJ65Cl4wOgLaB1NYvJSZ0Ef03MMEU/0xpPMXUIQ29UfA==}
moddle-xml@10.1.0:
resolution: {integrity: sha512-erWckwLt+dYskewKXJso9u+aAZ5172lOiYxSOqKCPTy7L/xmqH1PoeoA7eVC7oJTt3PqF5TkZzUmbjGH6soQBg==}
moddle-xml@12.0.0:
resolution: {integrity: sha512-NJc2+sCe4tvuGlaUBcoZcYf6j9f+z+qxHOyGm/LB3ZrlJXVPPHoBTg/KXgDRCufdBJhJ3AheFs3QU/abABNzRg==}
engines: {node: '>= 18'}
peerDependencies:
moddle: '>= 6.2.0'
moddle@6.2.3:
resolution: {integrity: sha512-bLVN+ZHL3aKnhxc19XtjUfvdJsS3EsiEJC7bT6YPD11qYmTzvsxrGgyYz1Ouof7TZuGw0lDJ1OLmEnxcpQWk3Q==}
moddle@8.1.0:
resolution: {integrity: sha512-dBddc1CNuZHgro8nQWwfPZ2BkyLWdnxoNpPu9d+XKPN96DAiiBOeBw527ft++ebDuFez5PMdaR3pgUgoOaUGrA==}
mode-watcher@1.1.0:
resolution: {integrity: sha512-mUT9RRGPDYenk59qJauN1rhsIMKBmWA3xMF+uRwE8MW/tjhaDSCCARqkSuDTq8vr4/2KcAxIGVjACxTjdk5C3g==}
@ -10079,9 +10058,6 @@ packages:
resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==}
engines: {node: '>= 0.4'}
object-refs@0.3.0:
resolution: {integrity: sha512-eP0ywuoWOaDoiake/6kTJlPJhs+k0qNm4nYRzXLNHj6vh+5M3i9R1epJTdxIPGlhWc4fNRQ7a6XJNCX+/L4FOQ==}
object-refs@0.4.0:
resolution: {integrity: sha512-6kJqKWryKZmtte6QYvouas0/EIJKPI1/MMIuRsiBlNuhIMfqYTggzX2F1AJ2+cDs288xyi9GL7FyasHINR98BQ==}
@ -10266,11 +10242,8 @@ packages:
resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==}
engines: {node: '>=8'}
path-intersection@2.2.1:
resolution: {integrity: sha512-9u8xvMcSfuOiStv9bPdnRJQhGQXLKurew94n4GPQCdH1nj9QKC9ObbNoIpiRq8skiOBxKkt277PgOoFgAt3/rA==}
path-intersection@3.1.0:
resolution: {integrity: sha512-3xS3lvv/vuwm5aH2BVvNRvnvwR2Drde7jQClKpCXTYXIMMjcw/EnMhzCgeHwqbCpzi760PEfAkU53vSIlrNr9A==}
path-intersection@4.1.0:
resolution: {integrity: sha512-urUP6WvhnxbHPdHYl6L7Yrc6+1ny6uOFKPCzPxTSUSYGHG0o94RmI7SvMMaScNAM5RtTf08bg4skc6/kjfne3A==}
engines: {node: '>= 14.20'}
path-key@3.1.1:
@ -10997,8 +10970,9 @@ packages:
resolution: {integrity: sha512-6R3J5M4AcbtLUdZmRv2SygeVaM7IhrLXu9BmnOGmmACak8fiUtOsYNWUS4uK7upbmHIBbLBeFeI//477BKLBzA==}
engines: {node: '>=11.0.0'}
saxen@8.1.2:
resolution: {integrity: sha512-xUOiiFbc3Ow7p8KMxwsGICPx46ZQvy3+qfNVhrkwfz3Vvq45eGt98Ft5IQaA1R/7Tb5B5MKh9fUR9x3c3nDTxw==}
saxen@11.0.2:
resolution: {integrity: sha512-WDb4gqac8uiJzOdOdVpr9NWh9NrJMm7Brn5GX2Poj+mjE/QTXqYQENr8T/mom54dDDgbd3QjwTg23TRHYiWXRA==}
engines: {node: '>= 20.12'}
scroll-into-view-if-needed@2.2.31:
resolution: {integrity: sha512-dGCXy99wZQivjmjIqihaBQNjryrz5rueJY7eHfTdyWEiR4ttYpsajb14rn9s5d4DY4EcY6+4+U/maARBXJedkA==}
@ -11523,8 +11497,9 @@ packages:
resolution: {integrity: sha512-B71/4oyj61iNH0KeCamLuE2rmKuTO5byTOSVwECM5FA7TiAiAW+UqTKZ9ERueC4qvgSttUhdmq1mXC3kJqGX7A==}
engines: {node: '>=12.22'}
tiny-svg@3.1.3:
resolution: {integrity: sha512-9mwnPqXInRsBmH/DO6NMxBE++9LsqpVXQSSTZGc5bomoKKvL5OX/Hlotw7XVXP6XLRcHWIzZpxfovGqWKgCypQ==}
tiny-svg@4.1.4:
resolution: {integrity: sha512-cBaEACCbouYrQc9RG+eTXnPYosX1Ijqty/I6DdXovwDd89Pwu4jcmpOR7BuFEF9YCcd7/AWwasE0207WMK7hdw==}
engines: {node: '>= 20'}
tinybench@2.9.0:
resolution: {integrity: sha512-0+DUvqWMValLmha6lr4kD8iAMK1HzV0/aKnCtWb9v9641TnP/MFb7Pc2bxoxQjTXAErryXVgUOfv2YqNllqGeg==}
@ -13477,9 +13452,9 @@ snapshots:
htm: 3.1.1
preact: 10.29.2
'@bpmn-io/extract-process-variables@0.8.0':
'@bpmn-io/extract-process-variables@2.2.1':
dependencies:
min-dash: 4.2.3
min-dash: 5.0.0
'@bpmn-io/feel-editor@2.6.0(@bpmn-io/cm-theme@0.1.0-alpha.2)':
dependencies:
@ -15963,6 +15938,13 @@ snapshots:
tailwindcss: 4.3.1
vite: 8.0.10(@types/node@25.9.3)(esbuild@0.28.1)(jiti@2.7.0)(less@4.6.6)(sass-embedded@1.100.0)(sass@1.101.0)(terser@5.48.0)(yaml@2.9.0)
'@tailwindcss/vite@4.3.1(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(jiti@2.7.0)(less@4.6.6)(sass-embedded@1.100.0)(sass@1.101.0)(terser@5.48.0)(yaml@2.9.0))':
dependencies:
'@tailwindcss/node': 4.3.1
'@tailwindcss/oxide': 4.3.1
tailwindcss: 4.3.1
vite: 8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(jiti@2.7.0)(less@4.6.6)(sass-embedded@1.100.0)(sass@1.101.0)(terser@5.48.0)(yaml@2.9.0)
'@tanstack/store@0.11.0': {}
'@tanstack/virtual-core@3.17.1': {}
@ -16768,9 +16750,9 @@ snapshots:
global: 4.4.0
is-function: 1.0.2
'@vite-pwa/vitepress@1.1.0(vite-plugin-pwa@1.3.0(vite@8.0.10(@types/node@25.9.3)(esbuild@0.28.1)(jiti@2.7.0)(less@4.6.6)(sass-embedded@1.100.0)(sass@1.101.0)(terser@5.48.0)(yaml@2.9.0))(workbox-build@7.4.1)(workbox-window@7.4.1))':
'@vite-pwa/vitepress@1.1.0(vite-plugin-pwa@1.3.0(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(jiti@2.7.0)(less@4.6.6)(sass-embedded@1.100.0)(sass@1.101.0)(terser@5.48.0)(yaml@2.9.0))(workbox-build@7.4.1)(workbox-window@7.4.1))':
dependencies:
vite-plugin-pwa: 1.3.0(vite@8.0.10(@types/node@25.9.3)(esbuild@0.28.1)(jiti@2.7.0)(less@4.6.6)(sass-embedded@1.100.0)(sass@1.101.0)(terser@5.48.0)(yaml@2.9.0))(workbox-build@7.4.1)(workbox-window@7.4.1)
vite-plugin-pwa: 1.3.0(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(jiti@2.7.0)(less@4.6.6)(sass-embedded@1.100.0)(sass@1.101.0)(terser@5.48.0)(yaml@2.9.0))(workbox-build@7.4.1)(workbox-window@7.4.1)
'@vitejs/plugin-vue-jsx@5.1.5(vite@8.0.10(@types/node@25.9.3)(esbuild@0.28.1)(jiti@2.7.0)(less@4.6.6)(sass-embedded@1.100.0)(sass@1.101.0)(terser@5.48.0)(yaml@2.9.0))(vue@3.5.38(typescript@6.0.3))':
dependencies:
@ -17504,41 +17486,42 @@ snapshots:
widest-line: 5.0.0
wrap-ansi: 9.0.2
bpmn-js-properties-panel@5.23.0(@bpmn-io/properties-panel@3.44.1(@bpmn-io/cm-theme@0.1.0-alpha.2))(bpmn-js@17.11.1)(camunda-bpmn-js-behaviors@1.16.1(bpmn-js@17.11.1)(camunda-bpmn-moddle@7.0.1)(zeebe-bpmn-moddle@1.14.0))(diagram-js@12.8.1):
bpmn-js-properties-panel@5.54.0(@bpmn-io/properties-panel@3.44.1(@bpmn-io/cm-theme@0.1.0-alpha.2))(bpmn-js@18.18.0)(camunda-bpmn-js-behaviors@1.16.1(bpmn-js@18.18.0)(camunda-bpmn-moddle@7.0.1)(zeebe-bpmn-moddle@1.14.0))(diagram-js@15.17.0):
dependencies:
'@bpmn-io/extract-process-variables': 0.8.0
'@bpmn-io/extract-process-variables': 2.2.1
'@bpmn-io/properties-panel': 3.44.1(@bpmn-io/cm-theme@0.1.0-alpha.2)
array-move: 4.0.0
bpmn-js: 17.11.1
camunda-bpmn-js-behaviors: 1.16.1(bpmn-js@17.11.1)(camunda-bpmn-moddle@7.0.1)(zeebe-bpmn-moddle@1.14.0)
diagram-js: 12.8.1
ids: 1.0.5
min-dash: 4.2.3
min-dom: 4.2.1
bpmn-js: 18.18.0
camunda-bpmn-js-behaviors: 1.16.1(bpmn-js@18.18.0)(camunda-bpmn-moddle@7.0.1)(zeebe-bpmn-moddle@1.14.0)
diagram-js: 15.17.0
ids: 3.0.2
min-dash: 5.0.0
min-dom: 5.3.0
bpmn-js-token-simulation@0.36.3:
bpmn-js-token-simulation@0.39.4:
dependencies:
ids: 3.0.2
inherits-browser: 0.1.0
min-dash: 4.2.3
min-dom: 4.2.1
min-dash: 5.0.0
min-dom: 5.3.0
randomcolor: 0.6.2
bpmn-js@17.11.1:
bpmn-js@18.18.0:
dependencies:
bpmn-moddle: 8.1.0
diagram-js: 14.11.3
diagram-js-direct-editing: 3.4.0(diagram-js@14.11.3)
ids: 1.0.5
bpmn-moddle: 10.0.0
diagram-js: 15.17.0
diagram-js-direct-editing: 3.4.0(diagram-js@15.17.0)
ids: 3.0.2
inherits-browser: 0.1.0
min-dash: 4.2.3
min-dom: 4.2.1
tiny-svg: 3.1.3
min-dash: 5.0.0
min-dom: 5.3.0
tiny-svg: 4.1.4
bpmn-moddle@8.1.0:
bpmn-moddle@10.0.0:
dependencies:
min-dash: 4.2.3
moddle: 6.2.3
moddle-xml: 10.1.0
min-dash: 5.0.0
moddle: 8.1.0
moddle-xml: 12.0.0(moddle@8.1.0)
brace-expansion@2.1.1:
dependencies:
@ -17634,9 +17617,9 @@ snapshots:
camelcase@8.0.0: {}
camunda-bpmn-js-behaviors@1.16.1(bpmn-js@17.11.1)(camunda-bpmn-moddle@7.0.1)(zeebe-bpmn-moddle@1.14.0):
camunda-bpmn-js-behaviors@1.16.1(bpmn-js@18.18.0)(camunda-bpmn-moddle@7.0.1)(zeebe-bpmn-moddle@1.14.0):
dependencies:
bpmn-js: 17.11.1
bpmn-js: 18.18.0
camunda-bpmn-moddle: 7.0.1
ids: 3.0.2
min-dash: 5.0.0
@ -17834,8 +17817,6 @@ snapshots:
compatx@0.2.0: {}
component-event@0.2.1: {}
compress-commons@6.0.2:
dependencies:
crc-32: 1.2.2
@ -18329,40 +18310,25 @@ snapshots:
dhtmlx-gantt@9.1.4: {}
diagram-js-direct-editing@3.4.0(diagram-js@14.11.3):
diagram-js-direct-editing@3.4.0(diagram-js@15.17.0):
dependencies:
diagram-js: 14.11.3
diagram-js: 15.17.0
min-dash: 5.0.0
min-dom: 5.3.0
diagram-js@12.8.1:
diagram-js@15.17.0:
dependencies:
'@bpmn-io/diagram-js-ui': 0.2.4
clsx: 2.1.1
didi: 9.0.2
hammerjs: 2.0.8
didi: 11.0.0
inherits-browser: 0.1.0
min-dash: 4.2.3
min-dom: 4.2.1
object-refs: 0.3.0
path-intersection: 2.2.1
tiny-svg: 3.1.3
diagram-js@14.11.3:
dependencies:
'@bpmn-io/diagram-js-ui': 0.2.4
clsx: 2.1.1
didi: 10.2.2
inherits-browser: 0.1.0
min-dash: 4.2.3
min-dom: 4.2.1
min-dash: 5.0.0
min-dom: 5.3.0
object-refs: 0.4.0
path-intersection: 3.1.0
tiny-svg: 3.1.3
path-intersection: 4.1.0
tiny-svg: 4.1.4
didi@10.2.2: {}
didi@9.0.2: {}
didi@11.0.0: {}
diff-sequences@29.6.3: {}
@ -18392,8 +18358,6 @@ snapshots:
dependencies:
domelementtype: 2.3.0
domify@1.4.2: {}
domify@3.0.0: {}
dompurify@3.4.11:
@ -19400,8 +19364,6 @@ snapshots:
ufo: 1.6.4
uncrypto: 0.1.3
hammerjs@2.0.8: {}
happy-dom@20.10.6:
dependencies:
'@types/node': 25.9.3
@ -19550,8 +19512,6 @@ snapshots:
idb@7.1.1: {}
ids@1.0.5: {}
ids@3.0.2: {}
ieee754@1.2.1: {}
@ -20371,20 +20331,12 @@ snapshots:
mimic-function@5.0.1: {}
min-dash@4.2.3: {}
min-dash@5.0.0: {}
min-document@2.19.2:
dependencies:
dom-walk: 0.1.2
min-dom@4.2.1:
dependencies:
component-event: 0.2.1
domify: 1.4.2
min-dash: 4.2.3
min-dom@5.3.0:
dependencies:
domify: 3.0.0
@ -20421,15 +20373,15 @@ snapshots:
pkg-types: 1.3.1
ufo: 1.6.4
moddle-xml@10.1.0:
moddle-xml@12.0.0(moddle@8.1.0):
dependencies:
min-dash: 4.2.3
moddle: 6.2.3
saxen: 8.1.2
min-dash: 5.0.0
moddle: 8.1.0
saxen: 11.0.2
moddle@6.2.3:
moddle@8.1.0:
dependencies:
min-dash: 4.2.3
min-dash: 5.0.0
mode-watcher@1.1.0(svelte@5.56.3(@typescript-eslint/types@8.61.1)):
dependencies:
@ -20651,8 +20603,6 @@ snapshots:
object-keys@1.1.1: {}
object-refs@0.3.0: {}
object-refs@0.4.0: {}
object.assign@4.1.7:
@ -20926,9 +20876,7 @@ snapshots:
path-exists@4.0.0: {}
path-intersection@2.2.1: {}
path-intersection@3.1.0: {}
path-intersection@4.1.0: {}
path-key@3.1.1: {}
@ -21693,7 +21641,7 @@ snapshots:
sax@1.6.0: {}
saxen@8.1.2: {}
saxen@11.0.2: {}
scroll-into-view-if-needed@2.2.31:
dependencies:
@ -22332,7 +22280,7 @@ snapshots:
throttle-debounce@5.0.2: {}
tiny-svg@3.1.3: {}
tiny-svg@4.1.4: {}
tinybench@2.9.0: {}
@ -22837,6 +22785,17 @@ snapshots:
transitivePeerDependencies:
- supports-color
vite-plugin-pwa@1.3.0(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(jiti@2.7.0)(less@4.6.6)(sass-embedded@1.100.0)(sass@1.101.0)(terser@5.48.0)(yaml@2.9.0))(workbox-build@7.4.1)(workbox-window@7.4.1):
dependencies:
debug: 4.4.3
pretty-bytes: 6.1.1
tinyglobby: 0.2.17
vite: 8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(jiti@2.7.0)(less@4.6.6)(sass-embedded@1.100.0)(sass@1.101.0)(terser@5.48.0)(yaml@2.9.0)
workbox-build: 7.4.1
workbox-window: 7.4.1
transitivePeerDependencies:
- supports-color
vite-plugin-vue-devtools@8.1.3(vite@8.0.10(@types/node@25.9.3)(esbuild@0.28.1)(jiti@2.7.0)(less@4.6.6)(sass-embedded@1.100.0)(sass@1.101.0)(terser@5.48.0)(yaml@2.9.0))(vue@3.5.38(typescript@6.0.3)):
dependencies:
'@vue/devtools-core': 8.1.3(vue@3.5.38(typescript@6.0.3))
@ -22921,13 +22880,13 @@ snapshots:
terser: 5.48.0
yaml: 2.9.0
vitepress-plugin-group-icons@1.7.5(vite@8.0.10(@types/node@25.9.3)(esbuild@0.28.1)(jiti@2.7.0)(less@4.6.6)(sass-embedded@1.100.0)(sass@1.101.0)(terser@5.48.0)(yaml@2.9.0)):
vitepress-plugin-group-icons@1.7.5(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(jiti@2.7.0)(less@4.6.6)(sass-embedded@1.100.0)(sass@1.101.0)(terser@5.48.0)(yaml@2.9.0)):
dependencies:
'@iconify-json/logos': 1.2.11
'@iconify-json/vscode-icons': 1.2.58
'@iconify/utils': 3.1.3
optionalDependencies:
vite: 8.0.10(@types/node@25.9.3)(esbuild@0.28.1)(jiti@2.7.0)(less@4.6.6)(sass-embedded@1.100.0)(sass@1.101.0)(terser@5.48.0)(yaml@2.9.0)
vite: 8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(jiti@2.7.0)(less@4.6.6)(sass-embedded@1.100.0)(sass@1.101.0)(terser@5.48.0)(yaml@2.9.0)
vitepress@2.0.0-alpha.17(@types/node@25.9.3)(async-validator@4.2.5)(axios@1.18.0)(change-case@5.4.4)(jiti@2.7.0)(less@4.6.6)(lightningcss@1.32.0)(nprogress@0.2.0)(postcss@8.5.15)(qrcode@1.5.4)(sass-embedded@1.100.0)(sass@1.101.0)(sortablejs@1.15.7)(terser@5.48.0)(typescript@6.0.3)(yaml@2.9.0):
dependencies:

View File

@ -112,9 +112,9 @@ catalog:
axios: ^1.17.0
axios-mock-adapter: ^2.1.0
benz-amr-recorder: ^1.1.5
bpmn-js: ^17.11.1
bpmn-js-properties-panel: 5.23.0
bpmn-js-token-simulation: ^0.36.3
bpmn-js: ^18.16.1
bpmn-js-properties-panel: 5.54.0
bpmn-js-token-simulation: ^0.39.3
cac: ^7.0.0
camunda-bpmn-moddle: ^7.0.1
chalk: ^5.6.2
@ -134,7 +134,7 @@ catalog:
dayjs: ^1.11.21
defu: ^6.1.7
dhtmlx-gantt: ^9.1.4
diagram-js: ^12.8.1
diagram-js: ^15.14.0
dotenv: ^17.4.2
echarts: ^6.1.0
element-plus: ^2.14.1