@vef-framework-react/approval-flow-editor 2.2.0 → 2.2.2

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.
Files changed (57) hide show
  1. package/dist/cjs/components/approval-flow-editor.cjs +1 -1
  2. package/dist/cjs/store/flow-slice.cjs +1 -1
  3. package/dist/cjs/store/graph-slice.cjs +1 -1
  4. package/dist/es/components/approval-flow-editor.js +3 -3
  5. package/dist/es/components/config/approval-node-config.js +1 -1
  6. package/dist/es/components/config/assignee-list.js +1 -1
  7. package/dist/es/components/config/basic-node-config.js +1 -1
  8. package/dist/es/components/config/cc-list.js +1 -1
  9. package/dist/es/components/config/cc-node-config.js +1 -1
  10. package/dist/es/components/config/condition-config.js +1 -1
  11. package/dist/es/components/config/condition-editor-modal.js +1 -1
  12. package/dist/es/components/config/condition-operators.js +1 -1
  13. package/dist/es/components/config/condition-rule-item.js +1 -1
  14. package/dist/es/components/config/field-permission-table.js +1 -1
  15. package/dist/es/components/config/handle-node-config.js +1 -1
  16. package/dist/es/components/config/shared.js +1 -1
  17. package/dist/es/components/config-panel.js +1 -1
  18. package/dist/es/components/edges/approval-edge.js +1 -1
  19. package/dist/es/components/edges/index.js +1 -1
  20. package/dist/es/components/editor-toolbar.js +1 -1
  21. package/dist/es/components/nodes/approval-node.js +1 -1
  22. package/dist/es/components/nodes/base-node.js +1 -1
  23. package/dist/es/components/nodes/cc-node.js +1 -1
  24. package/dist/es/components/nodes/condition-node.js +1 -1
  25. package/dist/es/components/nodes/end-node.js +1 -1
  26. package/dist/es/components/nodes/handle-node.js +1 -1
  27. package/dist/es/components/nodes/index.js +1 -1
  28. package/dist/es/components/nodes/node-shell.js +1 -1
  29. package/dist/es/components/nodes/start-node.js +1 -1
  30. package/dist/es/components/zoom-control.js +1 -1
  31. package/dist/es/constants.js +1 -1
  32. package/dist/es/hooks/use-auto-layout.js +1 -1
  33. package/dist/es/hooks/use-connection-validation.js +1 -1
  34. package/dist/es/hooks/use-drag-drop.js +1 -1
  35. package/dist/es/icons.js +1 -1
  36. package/dist/es/index.js +1 -1
  37. package/dist/es/plugins/context.js +1 -1
  38. package/dist/es/plugins/index.js +1 -1
  39. package/dist/es/shared/connection-rules.js +1 -1
  40. package/dist/es/shared/serialization.js +1 -1
  41. package/dist/es/specifications/approval.js +1 -1
  42. package/dist/es/specifications/cc.js +1 -1
  43. package/dist/es/specifications/condition.js +1 -1
  44. package/dist/es/specifications/end.js +1 -1
  45. package/dist/es/specifications/handle.js +1 -1
  46. package/dist/es/specifications/index.js +1 -1
  47. package/dist/es/specifications/start.js +1 -1
  48. package/dist/es/store/editor.js +1 -1
  49. package/dist/es/store/flow-slice.js +3 -3
  50. package/dist/es/store/graph-slice.js +8 -8
  51. package/dist/es/store/index.js +1 -1
  52. package/dist/es/store/interaction-slice.js +1 -1
  53. package/dist/es/styles/base.js +1 -1
  54. package/dist/es/styles/index.js +1 -1
  55. package/dist/es/styles/theme.js +1 -1
  56. package/dist/types/store/types.d.ts +1 -1
  57. package/package.json +4 -4
@@ -1 +1 @@
1
- require(`../_internal/_rolldown/runtime.cjs`);const e=require(`../shared/serialization.cjs`),t=require(`../plugins/context.cjs`),n=require(`../styles/base.cjs`),r=require(`../styles/theme.cjs`),i=require(`../store/editor.cjs`),a=require(`../hooks/use-connection-validation.cjs`),o=require(`../hooks/use-drag-drop.cjs`),s=require(`./config-panel.cjs`),c=require(`./edges/index.cjs`),l=require(`./editor-toolbar.cjs`),u=require(`./nodes/index.cjs`),d=require(`./zoom-control.cjs`);let f=require(`@emotion/react`),p=require(`@xyflow/react`),m=require(`react`),h=require(`@emotion/react/jsx-runtime`);var g={},_={type:`approval`},v={hideAttribution:!0},y={width:151,height:100,marginBottom:56},b=({onChange:e,readonly:t=!1,className:n,style:f})=>{let g=i.useEditorStore(e=>e.nodes),b=i.useEditorStore(e=>e.edges),x=i.useEditorStore(e=>e.onNodesChange),S=i.useEditorStore(e=>e.onEdgesChange),C=i.useEditorStore(e=>e.onConnect),w=i.useEditorStore(e=>e.selectNode),T=i.useEditorStore(e=>e.setHoveredEdgeId),E=i.useEditorStore(e=>e.setReadonly),D=i.useEditorStore(e=>e._changeVersion),O=i.useEditorStore(e=>e.toDefinition),{onDragOver:k,onDrop:A}=o.useDrop(),{isValidConnection:j}=a.useConnectionValidation(),M=(0,p.useUpdateNodeInternals)(),N=(0,m.useRef)(!1),P=(0,m.useRef)(g);P.current=g;let F=g.length>0;(0,m.useEffect)(()=>{if(N.current||!F)return;N.current=!0;let e=P.current.map(e=>e.id),t=()=>M(e),n=0,r=requestAnimationFrame(()=>{n=requestAnimationFrame(t)}),i=globalThis.setTimeout(t,300);return()=>{cancelAnimationFrame(r),cancelAnimationFrame(n),globalThis.clearTimeout(i)}},[F,M]),(0,m.useEffect)(()=>{E(t)},[t,E]);let I=(0,m.useRef)(e);I.current=e;let L=(0,m.useRef)(D);(0,m.useEffect)(()=>{D!==L.current&&(L.current=D,I.current?.(O()))},[D,O]);let R=(0,m.useCallback)((e,t)=>{w(t.id)},[w]),z=(0,m.useCallback)(()=>{w(null)},[w]),B=(0,m.useCallback)((e,t)=>{T(t.id)},[T]),V=(0,m.useCallback)(()=>{T(null)},[T]);return(0,h.jsxs)(`div`,{className:n,css:[r.editorThemeStyle,r.editorLayoutStyle,process.env.NODE_ENV===`production`?``:`/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcHJvdmFsLWZsb3ctZWRpdG9yLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF1SitCIiwiZmlsZSI6ImFwcHJvdmFsLWZsb3ctZWRpdG9yLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgRWRnZU1vdXNlSGFuZGxlciwgTm9kZU1vdXNlSGFuZGxlciB9IGZyb20gXCJAeHlmbG93L3JlYWN0XCI7XG5pbXBvcnQgdHlwZSB7IEZDIH0gZnJvbSBcInJlYWN0XCI7XG5cbmltcG9ydCB0eXBlIHsgRWRpdG9yUGx1Z2lucyB9IGZyb20gXCIuLi9wbHVnaW5zXCI7XG5pbXBvcnQgdHlwZSB7IEZsb3dEZWZpbml0aW9uIH0gZnJvbSBcIi4uL3R5cGVzXCI7XG5cbmltcG9ydCB7IEdsb2JhbCB9IGZyb20gXCJAZW1vdGlvbi9yZWFjdFwiO1xuaW1wb3J0IHsgQmFja2dyb3VuZCwgQmFja2dyb3VuZFZhcmlhbnQsIE1pbmlNYXAsIFJlYWN0RmxvdywgUmVhY3RGbG93UHJvdmlkZXIsIHVzZVVwZGF0ZU5vZGVJbnRlcm5hbHMgfSBmcm9tIFwiQHh5Zmxvdy9yZWFjdFwiO1xuaW1wb3J0IHsgdXNlQ2FsbGJhY2ssIHVzZUVmZmVjdCwgdXNlUmVmLCB1c2VTdGF0ZSB9IGZyb20gXCJyZWFjdFwiO1xuXG5pbXBvcnQgeyB1c2VDb25uZWN0aW9uVmFsaWRhdGlvbiB9IGZyb20gXCIuLi9ob29rcy91c2UtY29ubmVjdGlvbi12YWxpZGF0aW9uXCI7XG5pbXBvcnQgeyB1c2VEcm9wIH0gZnJvbSBcIi4uL2hvb2tzL3VzZS1kcmFnLWRyb3BcIjtcbmltcG9ydCB7IEVkaXRvclBsdWdpbnNDb250ZXh0IH0gZnJvbSBcIi4uL3BsdWdpbnNcIjtcbmltcG9ydCB7IGZyb21GbG93RGVmaW5pdGlvbiB9IGZyb20gXCIuLi9zaGFyZWQvc2VyaWFsaXphdGlvblwiO1xuaW1wb3J0IHsgRWRpdG9yU3RvcmVQcm92aWRlciwgdXNlRWRpdG9yU3RvcmUgfSBmcm9tIFwiLi4vc3RvcmVcIjtcbmltcG9ydCB7IGNhbnZhc1N0eWxlLCBlZGl0b3JMYXlvdXRTdHlsZSwgZWRpdG9yVGhlbWVTdHlsZSwgeHlmbG93R2xvYmFsQmFzZVN0eWxlIH0gZnJvbSBcIi4uL3N0eWxlc1wiO1xuaW1wb3J0IHsgQ29uZmlnUGFuZWwgfSBmcm9tIFwiLi9jb25maWctcGFuZWxcIjtcbmltcG9ydCB7IGVkZ2VUeXBlcyB9IGZyb20gXCIuL2VkZ2VzXCI7XG5pbXBvcnQgeyBFZGl0b3JUb29sYmFyIH0gZnJvbSBcIi4vZWRpdG9yLXRvb2xiYXJcIjtcbmltcG9ydCB7IG5vZGVUeXBlcyB9IGZyb20gXCIuL25vZGVzXCI7XG5pbXBvcnQgeyBab29tQ29udHJvbCB9IGZyb20gXCIuL3pvb20tY29udHJvbFwiO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFwcHJvdmFsRmxvd0VkaXRvclByb3BzIHtcbiAgLyoqXG4gICAqIEluaXRpYWwgZmxvdyBkZWZpbml0aW9uIChiYWNrZW5kIGZvcm1hdClcbiAgICovXG4gIHZhbHVlPzogRmxvd0RlZmluaXRpb247XG4gIC8qKlxuICAgKiBDYWxsYmFjayB3aGVuIGZsb3cgY2hhbmdlc1xuICAgKi9cbiAgb25DaGFuZ2U/OiAoZGVmaW5pdGlvbjogRmxvd0RlZmluaXRpb24pID0+IHZvaWQ7XG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSBlZGl0b3IgaXMgcmVhZG9ubHlcbiAgICovXG4gIHJlYWRvbmx5PzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEV4dGVybmFsIHBsdWdpbnMgKHVzZXIvcm9sZS9kZXB0IHBpY2tlcnMpXG4gICAqL1xuICBwbHVnaW5zPzogRWRpdG9yUGx1Z2lucztcbiAgLyoqXG4gICAqIEN1c3RvbSBjbGFzc05hbWVcbiAgICovXG4gIGNsYXNzTmFtZT86IHN0cmluZztcbiAgLyoqXG4gICAqIEN1c3RvbSBzdHlsZVxuICAgKi9cbiAgc3R5bGU/OiBSZWFjdC5DU1NQcm9wZXJ0aWVzO1xufVxuXG4vLyBIb2lzdCBzdGFibGUgb2JqZWN0IHJlZmVyZW5jZXMgdG8gcHJldmVudCBSZWFjdEZsb3cgZnJvbSByZS1wcm9jZXNzaW5nIG9uIGV2ZXJ5IHJlbmRlclxuY29uc3QgRU1QVFlfUExVR0lOUzogRWRpdG9yUGx1Z2lucyA9IHt9O1xuY29uc3QgREVGQVVMVF9FREdFX09QVElPTlMgPSB7IHR5cGU6IFwiYXBwcm92YWxcIiB9IGFzIGNvbnN0O1xuY29uc3QgUFJPX09QVElPTlMgPSB7IGhpZGVBdHRyaWJ1dGlvbjogdHJ1ZSB9IGFzIGNvbnN0O1xuY29uc3QgTUlOSU1BUF9TVFlMRSA9IHtcbiAgd2lkdGg6IDE1MSxcbiAgaGVpZ2h0OiAxMDAsXG4gIG1hcmdpbkJvdHRvbTogNTZcbn0gYXMgY29uc3Q7XG5cbmNvbnN0IEVkaXRvcklubmVyOiBGQzxPbWl0PEFwcHJvdmFsRmxvd0VkaXRvclByb3BzLCBcInZhbHVlXCI+PiA9ICh7XG4gIG9uQ2hhbmdlLFxuICByZWFkb25seSA9IGZhbHNlLFxuICBjbGFzc05hbWUsXG4gIHN0eWxlXG59KSA9PiB7XG4gIGNvbnN0IG5vZGVzID0gdXNlRWRpdG9yU3RvcmUocyA9PiBzLm5vZGVzKTtcbiAgY29uc3QgZWRnZXMgPSB1c2VFZGl0b3JTdG9yZShzID0+IHMuZWRnZXMpO1xuICBjb25zdCBvbk5vZGVzQ2hhbmdlID0gdXNlRWRpdG9yU3RvcmUocyA9PiBzLm9uTm9kZXNDaGFuZ2UpO1xuICBjb25zdCBvbkVkZ2VzQ2hhbmdlID0gdXNlRWRpdG9yU3RvcmUocyA9PiBzLm9uRWRnZXNDaGFuZ2UpO1xuICBjb25zdCBvbkNvbm5lY3QgPSB1c2VFZGl0b3JTdG9yZShzID0+IHMub25Db25uZWN0KTtcbiAgY29uc3Qgc2VsZWN0Tm9kZSA9IHVzZUVkaXRvclN0b3JlKHMgPT4gcy5zZWxlY3ROb2RlKTtcbiAgY29uc3Qgc2V0SG92ZXJlZEVkZ2VJZCA9IHVzZUVkaXRvclN0b3JlKHMgPT4gcy5zZXRIb3ZlcmVkRWRnZUlkKTtcbiAgY29uc3Qgc2V0UmVhZG9ubHkgPSB1c2VFZGl0b3JTdG9yZShzID0+IHMuc2V0UmVhZG9ubHkpO1xuICBjb25zdCBjaGFuZ2VWZXJzaW9uID0gdXNlRWRpdG9yU3RvcmUocyA9PiBzLl9jaGFuZ2VWZXJzaW9uKTtcbiAgY29uc3QgdG9EZWZpbml0aW9uID0gdXNlRWRpdG9yU3RvcmUocyA9PiBzLnRvRGVmaW5pdGlvbik7XG5cbiAgY29uc3QgeyBvbkRyYWdPdmVyLCBvbkRyb3AgfSA9IHVzZURyb3AoKTtcbiAgY29uc3QgeyBpc1ZhbGlkQ29ubmVjdGlvbiB9ID0gdXNlQ29ubmVjdGlvblZhbGlkYXRpb24oKTtcbiAgY29uc3QgdXBkYXRlTm9kZUludGVybmFscyA9IHVzZVVwZGF0ZU5vZGVJbnRlcm5hbHMoKTtcblxuICAvLyBGb3JjZSByZS1tZWFzdXJlIGhhbmRsZXMgYWZ0ZXIgaW5pdGlhbCBub2RlcyBsb2FkIHRvIGVuc3VyZSBlZGdlIGVuZHBvaW50cyBhbGlnbi5cbiAgLy8gVXNlcyBkb3VibGUtckFGIHNvIHRoZSBicm93c2VyIGhhcyBjb21wbGV0ZWQgbGF5b3V0IGJlZm9yZSB3ZSByZWFkIGdldEJvdW5kaW5nQ2xpZW50UmVjdCxcbiAgLy8gd2l0aCBhIDMwMG1zIHRpbWVvdXQgZmFsbGJhY2sgZm9yIHNsb3cgZW52aXJvbm1lbnRzLlxuICBjb25zdCBpbml0aWFsaXplZFJlZiA9IHVzZVJlZihmYWxzZSk7XG4gIGNvbnN0IG5vZGVzUmVmID0gdXNlUmVmKG5vZGVzKTtcbiAgbm9kZXNSZWYuY3VycmVudCA9IG5vZGVzO1xuICBjb25zdCBoYXNOb2RlcyA9IG5vZGVzLmxlbmd0aCA+IDA7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoaW5pdGlhbGl6ZWRSZWYuY3VycmVudCB8fCAhaGFzTm9kZXMpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpbml0aWFsaXplZFJlZi5jdXJyZW50ID0gdHJ1ZTtcbiAgICBjb25zdCBub2RlSWRzID0gbm9kZXNSZWYuY3VycmVudC5tYXAobiA9PiBuLmlkKTtcbiAgICBjb25zdCB1cGRhdGUgPSAoKSA9PiB1cGRhdGVOb2RlSW50ZXJuYWxzKG5vZGVJZHMpO1xuXG4gICAgbGV0IHJhZjIgPSAwO1xuICAgIGNvbnN0IHJhZjEgPSByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4ge1xuICAgICAgcmFmMiA9IHJlcXVlc3RBbmltYXRpb25GcmFtZSh1cGRhdGUpO1xuICAgIH0pO1xuICAgIGNvbnN0IHRpbWVySWQgPSBnbG9iYWxUaGlzLnNldFRpbWVvdXQodXBkYXRlLCAzMDApO1xuXG4gICAgcmV0dXJuICgpID0+IHtcbiAgICAgIGNhbmNlbEFuaW1hdGlvbkZyYW1lKHJhZjEpO1xuICAgICAgY2FuY2VsQW5pbWF0aW9uRnJhbWUocmFmMik7XG4gICAgICBnbG9iYWxUaGlzLmNsZWFyVGltZW91dCh0aW1lcklkKTtcbiAgICB9O1xuICB9LCBbaGFzTm9kZXMsIHVwZGF0ZU5vZGVJbnRlcm5hbHNdKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIHNldFJlYWRvbmx5KHJlYWRvbmx5KTtcbiAgfSwgW3JlYWRvbmx5LCBzZXRSZWFkb25seV0pO1xuXG4gIC8vIE5vdGlmeSBwYXJlbnQgb2YgbWVhbmluZ2Z1bCBkYXRhIGNoYW5nZXMgdmlhIHZlcnNpb24gY291bnRlci5cbiAgY29uc3Qgb25DaGFuZ2VSZWYgPSB1c2VSZWYob25DaGFuZ2UpO1xuICBvbkNoYW5nZVJlZi5jdXJyZW50ID0gb25DaGFuZ2U7XG4gIGNvbnN0IHByZXZWZXJzaW9uUmVmID0gdXNlUmVmKGNoYW5nZVZlcnNpb24pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGNoYW5nZVZlcnNpb24gPT09IHByZXZWZXJzaW9uUmVmLmN1cnJlbnQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBwcmV2VmVyc2lvblJlZi5jdXJyZW50ID0gY2hhbmdlVmVyc2lvbjtcbiAgICBvbkNoYW5nZVJlZi5jdXJyZW50Py4odG9EZWZpbml0aW9uKCkpO1xuICB9LCBbY2hhbmdlVmVyc2lvbiwgdG9EZWZpbml0aW9uXSk7XG5cbiAgY29uc3Qgb25Ob2RlQ2xpY2s6IE5vZGVNb3VzZUhhbmRsZXIgPSB1c2VDYWxsYmFjayhcbiAgICAoX2V2ZW50LCBub2RlKSA9PiB7XG4gICAgICBzZWxlY3ROb2RlKG5vZGUuaWQpO1xuICAgIH0sXG4gICAgW3NlbGVjdE5vZGVdXG4gICk7XG5cbiAgY29uc3Qgb25QYW5lQ2xpY2sgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgc2VsZWN0Tm9kZShudWxsKTtcbiAgfSwgW3NlbGVjdE5vZGVdKTtcblxuICBjb25zdCBvbkVkZ2VNb3VzZUVudGVyOiBFZGdlTW91c2VIYW5kbGVyID0gdXNlQ2FsbGJhY2soXG4gICAgKF9ldmVudCwgZWRnZSkgPT4ge1xuICAgICAgc2V0SG92ZXJlZEVkZ2VJZChlZGdlLmlkKTtcbiAgICB9LFxuICAgIFtzZXRIb3ZlcmVkRWRnZUlkXVxuICApO1xuXG4gIGNvbnN0IG9uRWRnZU1vdXNlTGVhdmU6IEVkZ2VNb3VzZUhhbmRsZXIgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgc2V0SG92ZXJlZEVkZ2VJZChudWxsKTtcbiAgfSwgW3NldEhvdmVyZWRFZGdlSWRdKTtcblxuICByZXR1cm4gKFxuICAgIDxkaXYgY2xhc3NOYW1lPXtjbGFzc05hbWV9IGNzcz17W2VkaXRvclRoZW1lU3R5bGUsIGVkaXRvckxheW91dFN0eWxlXX0gc3R5bGU9e3N0eWxlfT5cbiAgICAgIDxkaXYgY3NzPXtjYW52YXNTdHlsZX0+XG4gICAgICAgIDxSZWFjdEZsb3dcbiAgICAgICAgICBmaXRWaWV3XG4gICAgICAgICAgcGFuT25TY3JvbGxcbiAgICAgICAgICBjb25uZWN0aW9uUmFkaXVzPXszMH1cbiAgICAgICAgICBkZWZhdWx0RWRnZU9wdGlvbnM9e0RFRkFVTFRfRURHRV9PUFRJT05TfVxuICAgICAgICAgIGVkZ2VzPXtlZGdlc31cbiAgICAgICAgICBlZGdlVHlwZXM9e2VkZ2VUeXBlc31cbiAgICAgICAgICBlbGVtZW50c1NlbGVjdGFibGU9eyFyZWFkb25seX1cbiAgICAgICAgICBpc1ZhbGlkQ29ubmVjdGlvbj17aXNWYWxpZENvbm5lY3Rpb259XG4gICAgICAgICAgbm9kZXM9e25vZGVzfVxuICAgICAgICAgIG5vZGVzQ29ubmVjdGFibGU9eyFyZWFkb25seX1cbiAgICAgICAgICBub2Rlc0RyYWdnYWJsZT17IXJlYWRvbmx5fVxuICAgICAgICAgIG5vZGVUeXBlcz17bm9kZVR5cGVzfVxuICAgICAgICAgIHByb09wdGlvbnM9e1BST19PUFRJT05TfVxuICAgICAgICAgIG9uQ29ubmVjdD17b25Db25uZWN0fVxuICAgICAgICAgIG9uRHJhZ092ZXI9e29uRHJhZ092ZXJ9XG4gICAgICAgICAgb25Ecm9wPXtvbkRyb3B9XG4gICAgICAgICAgb25FZGdlTW91c2VFbnRlcj17b25FZGdlTW91c2VFbnRlcn1cbiAgICAgICAgICBvbkVkZ2VNb3VzZUxlYXZlPXtvbkVkZ2VNb3VzZUxlYXZlfVxuICAgICAgICAgIG9uRWRnZXNDaGFuZ2U9e29uRWRnZXNDaGFuZ2V9XG4gICAgICAgICAgb25Ob2RlQ2xpY2s9e29uTm9kZUNsaWNrfVxuICAgICAgICAgIG9uTm9kZXNDaGFuZ2U9e29uTm9kZXNDaGFuZ2V9XG4gICAgICAgICAgb25QYW5lQ2xpY2s9e29uUGFuZUNsaWNrfVxuICAgICAgICA+XG4gICAgICAgICAgPEJhY2tncm91bmQgZ2FwPXsxNn0gc2l6ZT17MX0gdmFyaWFudD17QmFja2dyb3VuZFZhcmlhbnQuRG90c30gLz5cblxuICAgICAgICAgIDxNaW5pTWFwXG4gICAgICAgICAgICBwYW5uYWJsZVxuICAgICAgICAgICAgem9vbWFibGVcbiAgICAgICAgICAgIG5vZGVTdHJva2VXaWR0aD17M31cbiAgICAgICAgICAgIHBvc2l0aW9uPVwiYm90dG9tLWxlZnRcIlxuICAgICAgICAgICAgc3R5bGU9e01JTklNQVBfU1RZTEV9XG4gICAgICAgICAgLz5cblxuICAgICAgICAgIDxab29tQ29udHJvbCAvPlxuICAgICAgICA8L1JlYWN0Rmxvdz5cblxuICAgICAgICB7IXJlYWRvbmx5ICYmIDxFZGl0b3JUb29sYmFyIC8+fVxuICAgICAgPC9kaXY+XG5cbiAgICAgIHsvKiBGbG9hdGluZyBjb25maWcgcGFuZWwg4oCUIGFsd2F5cyByZW5kZXJlZCBmb3Igc2xpZGUgYW5pbWF0aW9uICovfVxuICAgICAgPENvbmZpZ1BhbmVsIC8+XG4gICAgPC9kaXY+XG4gICk7XG59O1xuXG4vKipcbiAqIEFwcHJvdmFsIEZsb3cgRWRpdG9yIGNvbXBvbmVudFxuICovXG5leHBvcnQgY29uc3QgQXBwcm92YWxGbG93RWRpdG9yOiBGQzxBcHByb3ZhbEZsb3dFZGl0b3JQcm9wcz4gPSAoe1xuICB2YWx1ZSxcbiAgb25DaGFuZ2UsXG4gIHJlYWRvbmx5LFxuICBwbHVnaW5zLFxuICBjbGFzc05hbWUsXG4gIHN0eWxlXG59KSA9PiB7XG4gIGNvbnN0IFtpbml0aWFsRGF0YV0gPSB1c2VTdGF0ZSgoKSA9PiB2YWx1ZSA/IGZyb21GbG93RGVmaW5pdGlvbih2YWx1ZSkgOiB7IG5vZGVzOiBbXSwgZWRnZXM6IFtdIH0pO1xuXG4gIHJldHVybiAoXG4gICAgPFJlYWN0Rmxvd1Byb3ZpZGVyPlxuICAgICAgPEdsb2JhbCBzdHlsZXM9e3h5Zmxvd0dsb2JhbEJhc2VTdHlsZX0gLz5cblxuICAgICAgPEVkaXRvclBsdWdpbnNDb250ZXh0IHZhbHVlPXtwbHVnaW5zID8/IEVNUFRZX1BMVUdJTlN9PlxuICAgICAgICA8RWRpdG9yU3RvcmVQcm92aWRlclxuICAgICAgICAgIGluaXRpYWxTdGF0ZT17e1xuICAgICAgICAgICAgcmVhZG9ubHk6IHJlYWRvbmx5ID8/IGZhbHNlLFxuICAgICAgICAgICAgbm9kZXM6IGluaXRpYWxEYXRhLm5vZGVzLFxuICAgICAgICAgICAgZWRnZXM6IGluaXRpYWxEYXRhLmVkZ2VzXG4gICAgICAgICAgfX1cbiAgICAgICAgPlxuICAgICAgICAgIDxFZGl0b3JJbm5lclxuICAgICAgICAgICAgY2xhc3NOYW1lPXtjbGFzc05hbWV9XG4gICAgICAgICAgICByZWFkb25seT17cmVhZG9ubHl9XG4gICAgICAgICAgICBzdHlsZT17c3R5bGV9XG4gICAgICAgICAgICBvbkNoYW5nZT17b25DaGFuZ2V9XG4gICAgICAgICAgLz5cbiAgICAgICAgPC9FZGl0b3JTdG9yZVByb3ZpZGVyPlxuICAgICAgPC9FZGl0b3JQbHVnaW5zQ29udGV4dD5cbiAgICA8L1JlYWN0Rmxvd1Byb3ZpZGVyPlxuICApO1xufTtcbiJdfQ== */`],style:f,children:[(0,h.jsxs)(`div`,{css:r.canvasStyle,children:[(0,h.jsxs)(p.ReactFlow,{fitView:!0,panOnScroll:!0,connectionRadius:30,defaultEdgeOptions:_,edges:b,edgeTypes:c.edgeTypes,elementsSelectable:!t,isValidConnection:j,nodes:g,nodesConnectable:!t,nodesDraggable:!t,nodeTypes:u.nodeTypes,proOptions:v,onConnect:C,onDragOver:k,onDrop:A,onEdgeMouseEnter:B,onEdgeMouseLeave:V,onEdgesChange:S,onNodeClick:R,onNodesChange:x,onPaneClick:z,children:[(0,h.jsx)(p.Background,{gap:16,size:1,variant:p.BackgroundVariant.Dots}),(0,h.jsx)(p.MiniMap,{pannable:!0,zoomable:!0,nodeStrokeWidth:3,position:`bottom-left`,style:y}),(0,h.jsx)(d.ZoomControl,{})]}),!t&&(0,h.jsx)(l.EditorToolbar,{})]}),(0,h.jsx)(s.ConfigPanel,{})]})},x=({value:r,onChange:a,readonly:o,plugins:s,className:c,style:l})=>{let[u]=(0,m.useState)(()=>r?e.fromFlowDefinition(r):{nodes:[],edges:[]});return(0,h.jsxs)(p.ReactFlowProvider,{children:[(0,h.jsx)(f.Global,{styles:n.reactFlowGlobalBaseStyle}),(0,h.jsx)(t.EditorPluginsContext,{value:s??g,children:(0,h.jsx)(i.EditorStoreProvider,{initialState:{readonly:o??!1,nodes:u.nodes,edges:u.edges},children:(0,h.jsx)(b,{className:c,readonly:o,style:l,onChange:a})})})]})};exports.ApprovalFlowEditor=x;
1
+ require(`../_internal/_rolldown/runtime.cjs`);const e=require(`../shared/serialization.cjs`),t=require(`../plugins/context.cjs`),n=require(`../styles/base.cjs`),r=require(`../styles/theme.cjs`),i=require(`../store/editor.cjs`),a=require(`../hooks/use-connection-validation.cjs`),o=require(`../hooks/use-drag-drop.cjs`),s=require(`./config-panel.cjs`),c=require(`./edges/index.cjs`),l=require(`./editor-toolbar.cjs`),u=require(`./nodes/index.cjs`),d=require(`./zoom-control.cjs`);let f=require(`@emotion/react`),p=require(`@xyflow/react`),m=require(`react`),h=require(`@emotion/react/jsx-runtime`);var g={},_={type:`approval`},v={hideAttribution:!0},y={width:151,height:100,marginBottom:56},b=({onChange:e,readonly:t=!1,className:n,style:f})=>{let g=i.useEditorStore(e=>e.nodes),b=i.useEditorStore(e=>e.edges),x=i.useEditorStore(e=>e.onNodesChange),S=i.useEditorStore(e=>e.onEdgesChange),C=i.useEditorStore(e=>e.onConnect),w=i.useEditorStore(e=>e.selectNode),T=i.useEditorStore(e=>e.setHoveredEdgeId),E=i.useEditorStore(e=>e.setReadonly),D=i.useEditorStore(e=>e.changeVersion),O=i.useEditorStore(e=>e.toDefinition),{onDragOver:k,onDrop:A}=o.useDrop(),{isValidConnection:j}=a.useConnectionValidation(),M=(0,p.useUpdateNodeInternals)(),N=(0,m.useRef)(!1),P=(0,m.useRef)(g);P.current=g;let F=g.length>0;(0,m.useEffect)(()=>{if(N.current||!F)return;N.current=!0;let e=P.current.map(e=>e.id),t=()=>M(e),n=0,r=requestAnimationFrame(()=>{n=requestAnimationFrame(t)}),i=globalThis.setTimeout(t,300);return()=>{cancelAnimationFrame(r),cancelAnimationFrame(n),globalThis.clearTimeout(i)}},[F,M]),(0,m.useEffect)(()=>{E(t)},[t,E]);let I=(0,m.useRef)(e);I.current=e;let L=(0,m.useRef)(D);(0,m.useEffect)(()=>{D!==L.current&&(L.current=D,I.current?.(O()))},[D,O]);let R=(0,m.useCallback)((e,t)=>{w(t.id)},[w]),z=(0,m.useCallback)(()=>{w(null)},[w]),B=(0,m.useCallback)((e,t)=>{T(t.id)},[T]),V=(0,m.useCallback)(()=>{T(null)},[T]);return(0,h.jsxs)(`div`,{className:n,css:[r.editorThemeStyle,r.editorLayoutStyle,process.env.NODE_ENV===`production`?``:`/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcHJvdmFsLWZsb3ctZWRpdG9yLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF1SitCIiwiZmlsZSI6ImFwcHJvdmFsLWZsb3ctZWRpdG9yLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgRWRnZU1vdXNlSGFuZGxlciwgTm9kZU1vdXNlSGFuZGxlciB9IGZyb20gXCJAeHlmbG93L3JlYWN0XCI7XG5pbXBvcnQgdHlwZSB7IEZDIH0gZnJvbSBcInJlYWN0XCI7XG5cbmltcG9ydCB0eXBlIHsgRWRpdG9yUGx1Z2lucyB9IGZyb20gXCIuLi9wbHVnaW5zXCI7XG5pbXBvcnQgdHlwZSB7IEZsb3dEZWZpbml0aW9uIH0gZnJvbSBcIi4uL3R5cGVzXCI7XG5cbmltcG9ydCB7IEdsb2JhbCB9IGZyb20gXCJAZW1vdGlvbi9yZWFjdFwiO1xuaW1wb3J0IHsgQmFja2dyb3VuZCwgQmFja2dyb3VuZFZhcmlhbnQsIE1pbmlNYXAsIFJlYWN0RmxvdywgUmVhY3RGbG93UHJvdmlkZXIsIHVzZVVwZGF0ZU5vZGVJbnRlcm5hbHMgfSBmcm9tIFwiQHh5Zmxvdy9yZWFjdFwiO1xuaW1wb3J0IHsgdXNlQ2FsbGJhY2ssIHVzZUVmZmVjdCwgdXNlUmVmLCB1c2VTdGF0ZSB9IGZyb20gXCJyZWFjdFwiO1xuXG5pbXBvcnQgeyB1c2VDb25uZWN0aW9uVmFsaWRhdGlvbiB9IGZyb20gXCIuLi9ob29rcy91c2UtY29ubmVjdGlvbi12YWxpZGF0aW9uXCI7XG5pbXBvcnQgeyB1c2VEcm9wIH0gZnJvbSBcIi4uL2hvb2tzL3VzZS1kcmFnLWRyb3BcIjtcbmltcG9ydCB7IEVkaXRvclBsdWdpbnNDb250ZXh0IH0gZnJvbSBcIi4uL3BsdWdpbnNcIjtcbmltcG9ydCB7IGZyb21GbG93RGVmaW5pdGlvbiB9IGZyb20gXCIuLi9zaGFyZWQvc2VyaWFsaXphdGlvblwiO1xuaW1wb3J0IHsgRWRpdG9yU3RvcmVQcm92aWRlciwgdXNlRWRpdG9yU3RvcmUgfSBmcm9tIFwiLi4vc3RvcmVcIjtcbmltcG9ydCB7IGNhbnZhc1N0eWxlLCBlZGl0b3JMYXlvdXRTdHlsZSwgZWRpdG9yVGhlbWVTdHlsZSwgeHlmbG93R2xvYmFsQmFzZVN0eWxlIH0gZnJvbSBcIi4uL3N0eWxlc1wiO1xuaW1wb3J0IHsgQ29uZmlnUGFuZWwgfSBmcm9tIFwiLi9jb25maWctcGFuZWxcIjtcbmltcG9ydCB7IGVkZ2VUeXBlcyB9IGZyb20gXCIuL2VkZ2VzXCI7XG5pbXBvcnQgeyBFZGl0b3JUb29sYmFyIH0gZnJvbSBcIi4vZWRpdG9yLXRvb2xiYXJcIjtcbmltcG9ydCB7IG5vZGVUeXBlcyB9IGZyb20gXCIuL25vZGVzXCI7XG5pbXBvcnQgeyBab29tQ29udHJvbCB9IGZyb20gXCIuL3pvb20tY29udHJvbFwiO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFwcHJvdmFsRmxvd0VkaXRvclByb3BzIHtcbiAgLyoqXG4gICAqIEluaXRpYWwgZmxvdyBkZWZpbml0aW9uIChiYWNrZW5kIGZvcm1hdClcbiAgICovXG4gIHZhbHVlPzogRmxvd0RlZmluaXRpb247XG4gIC8qKlxuICAgKiBDYWxsYmFjayB3aGVuIGZsb3cgY2hhbmdlc1xuICAgKi9cbiAgb25DaGFuZ2U/OiAoZGVmaW5pdGlvbjogRmxvd0RlZmluaXRpb24pID0+IHZvaWQ7XG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSBlZGl0b3IgaXMgcmVhZG9ubHlcbiAgICovXG4gIHJlYWRvbmx5PzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEV4dGVybmFsIHBsdWdpbnMgKHVzZXIvcm9sZS9kZXB0IHBpY2tlcnMpXG4gICAqL1xuICBwbHVnaW5zPzogRWRpdG9yUGx1Z2lucztcbiAgLyoqXG4gICAqIEN1c3RvbSBjbGFzc05hbWVcbiAgICovXG4gIGNsYXNzTmFtZT86IHN0cmluZztcbiAgLyoqXG4gICAqIEN1c3RvbSBzdHlsZVxuICAgKi9cbiAgc3R5bGU/OiBSZWFjdC5DU1NQcm9wZXJ0aWVzO1xufVxuXG4vLyBIb2lzdCBzdGFibGUgb2JqZWN0IHJlZmVyZW5jZXMgdG8gcHJldmVudCBSZWFjdEZsb3cgZnJvbSByZS1wcm9jZXNzaW5nIG9uIGV2ZXJ5IHJlbmRlclxuY29uc3QgRU1QVFlfUExVR0lOUzogRWRpdG9yUGx1Z2lucyA9IHt9O1xuY29uc3QgREVGQVVMVF9FREdFX09QVElPTlMgPSB7IHR5cGU6IFwiYXBwcm92YWxcIiB9IGFzIGNvbnN0O1xuY29uc3QgUFJPX09QVElPTlMgPSB7IGhpZGVBdHRyaWJ1dGlvbjogdHJ1ZSB9IGFzIGNvbnN0O1xuY29uc3QgTUlOSU1BUF9TVFlMRSA9IHtcbiAgd2lkdGg6IDE1MSxcbiAgaGVpZ2h0OiAxMDAsXG4gIG1hcmdpbkJvdHRvbTogNTZcbn0gYXMgY29uc3Q7XG5cbmNvbnN0IEVkaXRvcklubmVyOiBGQzxPbWl0PEFwcHJvdmFsRmxvd0VkaXRvclByb3BzLCBcInZhbHVlXCI+PiA9ICh7XG4gIG9uQ2hhbmdlLFxuICByZWFkb25seSA9IGZhbHNlLFxuICBjbGFzc05hbWUsXG4gIHN0eWxlXG59KSA9PiB7XG4gIGNvbnN0IG5vZGVzID0gdXNlRWRpdG9yU3RvcmUocyA9PiBzLm5vZGVzKTtcbiAgY29uc3QgZWRnZXMgPSB1c2VFZGl0b3JTdG9yZShzID0+IHMuZWRnZXMpO1xuICBjb25zdCBvbk5vZGVzQ2hhbmdlID0gdXNlRWRpdG9yU3RvcmUocyA9PiBzLm9uTm9kZXNDaGFuZ2UpO1xuICBjb25zdCBvbkVkZ2VzQ2hhbmdlID0gdXNlRWRpdG9yU3RvcmUocyA9PiBzLm9uRWRnZXNDaGFuZ2UpO1xuICBjb25zdCBvbkNvbm5lY3QgPSB1c2VFZGl0b3JTdG9yZShzID0+IHMub25Db25uZWN0KTtcbiAgY29uc3Qgc2VsZWN0Tm9kZSA9IHVzZUVkaXRvclN0b3JlKHMgPT4gcy5zZWxlY3ROb2RlKTtcbiAgY29uc3Qgc2V0SG92ZXJlZEVkZ2VJZCA9IHVzZUVkaXRvclN0b3JlKHMgPT4gcy5zZXRIb3ZlcmVkRWRnZUlkKTtcbiAgY29uc3Qgc2V0UmVhZG9ubHkgPSB1c2VFZGl0b3JTdG9yZShzID0+IHMuc2V0UmVhZG9ubHkpO1xuICBjb25zdCBjaGFuZ2VWZXJzaW9uID0gdXNlRWRpdG9yU3RvcmUocyA9PiBzLmNoYW5nZVZlcnNpb24pO1xuICBjb25zdCB0b0RlZmluaXRpb24gPSB1c2VFZGl0b3JTdG9yZShzID0+IHMudG9EZWZpbml0aW9uKTtcblxuICBjb25zdCB7IG9uRHJhZ092ZXIsIG9uRHJvcCB9ID0gdXNlRHJvcCgpO1xuICBjb25zdCB7IGlzVmFsaWRDb25uZWN0aW9uIH0gPSB1c2VDb25uZWN0aW9uVmFsaWRhdGlvbigpO1xuICBjb25zdCB1cGRhdGVOb2RlSW50ZXJuYWxzID0gdXNlVXBkYXRlTm9kZUludGVybmFscygpO1xuXG4gIC8vIEZvcmNlIHJlLW1lYXN1cmUgaGFuZGxlcyBhZnRlciBpbml0aWFsIG5vZGVzIGxvYWQgdG8gZW5zdXJlIGVkZ2UgZW5kcG9pbnRzIGFsaWduLlxuICAvLyBVc2VzIGRvdWJsZS1yQUYgc28gdGhlIGJyb3dzZXIgaGFzIGNvbXBsZXRlZCBsYXlvdXQgYmVmb3JlIHdlIHJlYWQgZ2V0Qm91bmRpbmdDbGllbnRSZWN0LFxuICAvLyB3aXRoIGEgMzAwbXMgdGltZW91dCBmYWxsYmFjayBmb3Igc2xvdyBlbnZpcm9ubWVudHMuXG4gIGNvbnN0IGluaXRpYWxpemVkUmVmID0gdXNlUmVmKGZhbHNlKTtcbiAgY29uc3Qgbm9kZXNSZWYgPSB1c2VSZWYobm9kZXMpO1xuICBub2Rlc1JlZi5jdXJyZW50ID0gbm9kZXM7XG4gIGNvbnN0IGhhc05vZGVzID0gbm9kZXMubGVuZ3RoID4gMDtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChpbml0aWFsaXplZFJlZi5jdXJyZW50IHx8ICFoYXNOb2Rlcykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGluaXRpYWxpemVkUmVmLmN1cnJlbnQgPSB0cnVlO1xuICAgIGNvbnN0IG5vZGVJZHMgPSBub2Rlc1JlZi5jdXJyZW50Lm1hcChuID0+IG4uaWQpO1xuICAgIGNvbnN0IHVwZGF0ZSA9ICgpID0+IHVwZGF0ZU5vZGVJbnRlcm5hbHMobm9kZUlkcyk7XG5cbiAgICBsZXQgcmFmMiA9IDA7XG4gICAgY29uc3QgcmFmMSA9IHJlcXVlc3RBbmltYXRpb25GcmFtZSgoKSA9PiB7XG4gICAgICByYWYyID0gcmVxdWVzdEFuaW1hdGlvbkZyYW1lKHVwZGF0ZSk7XG4gICAgfSk7XG4gICAgY29uc3QgdGltZXJJZCA9IGdsb2JhbFRoaXMuc2V0VGltZW91dCh1cGRhdGUsIDMwMCk7XG5cbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgY2FuY2VsQW5pbWF0aW9uRnJhbWUocmFmMSk7XG4gICAgICBjYW5jZWxBbmltYXRpb25GcmFtZShyYWYyKTtcbiAgICAgIGdsb2JhbFRoaXMuY2xlYXJUaW1lb3V0KHRpbWVySWQpO1xuICAgIH07XG4gIH0sIFtoYXNOb2RlcywgdXBkYXRlTm9kZUludGVybmFsc10pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgc2V0UmVhZG9ubHkocmVhZG9ubHkpO1xuICB9LCBbcmVhZG9ubHksIHNldFJlYWRvbmx5XSk7XG5cbiAgLy8gTm90aWZ5IHBhcmVudCBvZiBtZWFuaW5nZnVsIGRhdGEgY2hhbmdlcyB2aWEgdmVyc2lvbiBjb3VudGVyLlxuICBjb25zdCBvbkNoYW5nZVJlZiA9IHVzZVJlZihvbkNoYW5nZSk7XG4gIG9uQ2hhbmdlUmVmLmN1cnJlbnQgPSBvbkNoYW5nZTtcbiAgY29uc3QgcHJldlZlcnNpb25SZWYgPSB1c2VSZWYoY2hhbmdlVmVyc2lvbik7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoY2hhbmdlVmVyc2lvbiA9PT0gcHJldlZlcnNpb25SZWYuY3VycmVudCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHByZXZWZXJzaW9uUmVmLmN1cnJlbnQgPSBjaGFuZ2VWZXJzaW9uO1xuICAgIG9uQ2hhbmdlUmVmLmN1cnJlbnQ/Lih0b0RlZmluaXRpb24oKSk7XG4gIH0sIFtjaGFuZ2VWZXJzaW9uLCB0b0RlZmluaXRpb25dKTtcblxuICBjb25zdCBvbk5vZGVDbGljazogTm9kZU1vdXNlSGFuZGxlciA9IHVzZUNhbGxiYWNrKFxuICAgIChfZXZlbnQsIG5vZGUpID0+IHtcbiAgICAgIHNlbGVjdE5vZGUobm9kZS5pZCk7XG4gICAgfSxcbiAgICBbc2VsZWN0Tm9kZV1cbiAgKTtcblxuICBjb25zdCBvblBhbmVDbGljayA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBzZWxlY3ROb2RlKG51bGwpO1xuICB9LCBbc2VsZWN0Tm9kZV0pO1xuXG4gIGNvbnN0IG9uRWRnZU1vdXNlRW50ZXI6IEVkZ2VNb3VzZUhhbmRsZXIgPSB1c2VDYWxsYmFjayhcbiAgICAoX2V2ZW50LCBlZGdlKSA9PiB7XG4gICAgICBzZXRIb3ZlcmVkRWRnZUlkKGVkZ2UuaWQpO1xuICAgIH0sXG4gICAgW3NldEhvdmVyZWRFZGdlSWRdXG4gICk7XG5cbiAgY29uc3Qgb25FZGdlTW91c2VMZWF2ZTogRWRnZU1vdXNlSGFuZGxlciA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBzZXRIb3ZlcmVkRWRnZUlkKG51bGwpO1xuICB9LCBbc2V0SG92ZXJlZEVkZ2VJZF0pO1xuXG4gIHJldHVybiAoXG4gICAgPGRpdiBjbGFzc05hbWU9e2NsYXNzTmFtZX0gY3NzPXtbZWRpdG9yVGhlbWVTdHlsZSwgZWRpdG9yTGF5b3V0U3R5bGVdfSBzdHlsZT17c3R5bGV9PlxuICAgICAgPGRpdiBjc3M9e2NhbnZhc1N0eWxlfT5cbiAgICAgICAgPFJlYWN0Rmxvd1xuICAgICAgICAgIGZpdFZpZXdcbiAgICAgICAgICBwYW5PblNjcm9sbFxuICAgICAgICAgIGNvbm5lY3Rpb25SYWRpdXM9ezMwfVxuICAgICAgICAgIGRlZmF1bHRFZGdlT3B0aW9ucz17REVGQVVMVF9FREdFX09QVElPTlN9XG4gICAgICAgICAgZWRnZXM9e2VkZ2VzfVxuICAgICAgICAgIGVkZ2VUeXBlcz17ZWRnZVR5cGVzfVxuICAgICAgICAgIGVsZW1lbnRzU2VsZWN0YWJsZT17IXJlYWRvbmx5fVxuICAgICAgICAgIGlzVmFsaWRDb25uZWN0aW9uPXtpc1ZhbGlkQ29ubmVjdGlvbn1cbiAgICAgICAgICBub2Rlcz17bm9kZXN9XG4gICAgICAgICAgbm9kZXNDb25uZWN0YWJsZT17IXJlYWRvbmx5fVxuICAgICAgICAgIG5vZGVzRHJhZ2dhYmxlPXshcmVhZG9ubHl9XG4gICAgICAgICAgbm9kZVR5cGVzPXtub2RlVHlwZXN9XG4gICAgICAgICAgcHJvT3B0aW9ucz17UFJPX09QVElPTlN9XG4gICAgICAgICAgb25Db25uZWN0PXtvbkNvbm5lY3R9XG4gICAgICAgICAgb25EcmFnT3Zlcj17b25EcmFnT3Zlcn1cbiAgICAgICAgICBvbkRyb3A9e29uRHJvcH1cbiAgICAgICAgICBvbkVkZ2VNb3VzZUVudGVyPXtvbkVkZ2VNb3VzZUVudGVyfVxuICAgICAgICAgIG9uRWRnZU1vdXNlTGVhdmU9e29uRWRnZU1vdXNlTGVhdmV9XG4gICAgICAgICAgb25FZGdlc0NoYW5nZT17b25FZGdlc0NoYW5nZX1cbiAgICAgICAgICBvbk5vZGVDbGljaz17b25Ob2RlQ2xpY2t9XG4gICAgICAgICAgb25Ob2Rlc0NoYW5nZT17b25Ob2Rlc0NoYW5nZX1cbiAgICAgICAgICBvblBhbmVDbGljaz17b25QYW5lQ2xpY2t9XG4gICAgICAgID5cbiAgICAgICAgICA8QmFja2dyb3VuZCBnYXA9ezE2fSBzaXplPXsxfSB2YXJpYW50PXtCYWNrZ3JvdW5kVmFyaWFudC5Eb3RzfSAvPlxuXG4gICAgICAgICAgPE1pbmlNYXBcbiAgICAgICAgICAgIHBhbm5hYmxlXG4gICAgICAgICAgICB6b29tYWJsZVxuICAgICAgICAgICAgbm9kZVN0cm9rZVdpZHRoPXszfVxuICAgICAgICAgICAgcG9zaXRpb249XCJib3R0b20tbGVmdFwiXG4gICAgICAgICAgICBzdHlsZT17TUlOSU1BUF9TVFlMRX1cbiAgICAgICAgICAvPlxuXG4gICAgICAgICAgPFpvb21Db250cm9sIC8+XG4gICAgICAgIDwvUmVhY3RGbG93PlxuXG4gICAgICAgIHshcmVhZG9ubHkgJiYgPEVkaXRvclRvb2xiYXIgLz59XG4gICAgICA8L2Rpdj5cblxuICAgICAgey8qIEZsb2F0aW5nIGNvbmZpZyBwYW5lbCDigJQgYWx3YXlzIHJlbmRlcmVkIGZvciBzbGlkZSBhbmltYXRpb24gKi99XG4gICAgICA8Q29uZmlnUGFuZWwgLz5cbiAgICA8L2Rpdj5cbiAgKTtcbn07XG5cbi8qKlxuICogQXBwcm92YWwgRmxvdyBFZGl0b3IgY29tcG9uZW50XG4gKi9cbmV4cG9ydCBjb25zdCBBcHByb3ZhbEZsb3dFZGl0b3I6IEZDPEFwcHJvdmFsRmxvd0VkaXRvclByb3BzPiA9ICh7XG4gIHZhbHVlLFxuICBvbkNoYW5nZSxcbiAgcmVhZG9ubHksXG4gIHBsdWdpbnMsXG4gIGNsYXNzTmFtZSxcbiAgc3R5bGVcbn0pID0+IHtcbiAgY29uc3QgW2luaXRpYWxEYXRhXSA9IHVzZVN0YXRlKCgpID0+IHZhbHVlID8gZnJvbUZsb3dEZWZpbml0aW9uKHZhbHVlKSA6IHsgbm9kZXM6IFtdLCBlZGdlczogW10gfSk7XG5cbiAgcmV0dXJuIChcbiAgICA8UmVhY3RGbG93UHJvdmlkZXI+XG4gICAgICA8R2xvYmFsIHN0eWxlcz17eHlmbG93R2xvYmFsQmFzZVN0eWxlfSAvPlxuXG4gICAgICA8RWRpdG9yUGx1Z2luc0NvbnRleHQgdmFsdWU9e3BsdWdpbnMgPz8gRU1QVFlfUExVR0lOU30+XG4gICAgICAgIDxFZGl0b3JTdG9yZVByb3ZpZGVyXG4gICAgICAgICAgaW5pdGlhbFN0YXRlPXt7XG4gICAgICAgICAgICByZWFkb25seTogcmVhZG9ubHkgPz8gZmFsc2UsXG4gICAgICAgICAgICBub2RlczogaW5pdGlhbERhdGEubm9kZXMsXG4gICAgICAgICAgICBlZGdlczogaW5pdGlhbERhdGEuZWRnZXNcbiAgICAgICAgICB9fVxuICAgICAgICA+XG4gICAgICAgICAgPEVkaXRvcklubmVyXG4gICAgICAgICAgICBjbGFzc05hbWU9e2NsYXNzTmFtZX1cbiAgICAgICAgICAgIHJlYWRvbmx5PXtyZWFkb25seX1cbiAgICAgICAgICAgIHN0eWxlPXtzdHlsZX1cbiAgICAgICAgICAgIG9uQ2hhbmdlPXtvbkNoYW5nZX1cbiAgICAgICAgICAvPlxuICAgICAgICA8L0VkaXRvclN0b3JlUHJvdmlkZXI+XG4gICAgICA8L0VkaXRvclBsdWdpbnNDb250ZXh0PlxuICAgIDwvUmVhY3RGbG93UHJvdmlkZXI+XG4gICk7XG59O1xuIl19 */`],style:f,children:[(0,h.jsxs)(`div`,{css:r.canvasStyle,children:[(0,h.jsxs)(p.ReactFlow,{fitView:!0,panOnScroll:!0,connectionRadius:30,defaultEdgeOptions:_,edges:b,edgeTypes:c.edgeTypes,elementsSelectable:!t,isValidConnection:j,nodes:g,nodesConnectable:!t,nodesDraggable:!t,nodeTypes:u.nodeTypes,proOptions:v,onConnect:C,onDragOver:k,onDrop:A,onEdgeMouseEnter:B,onEdgeMouseLeave:V,onEdgesChange:S,onNodeClick:R,onNodesChange:x,onPaneClick:z,children:[(0,h.jsx)(p.Background,{gap:16,size:1,variant:p.BackgroundVariant.Dots}),(0,h.jsx)(p.MiniMap,{pannable:!0,zoomable:!0,nodeStrokeWidth:3,position:`bottom-left`,style:y}),(0,h.jsx)(d.ZoomControl,{})]}),!t&&(0,h.jsx)(l.EditorToolbar,{})]}),(0,h.jsx)(s.ConfigPanel,{})]})},x=({value:r,onChange:a,readonly:o,plugins:s,className:c,style:l})=>{let[u]=(0,m.useState)(()=>r?e.fromFlowDefinition(r):{nodes:[],edges:[]});return(0,h.jsxs)(p.ReactFlowProvider,{children:[(0,h.jsx)(f.Global,{styles:n.reactFlowGlobalBaseStyle}),(0,h.jsx)(t.EditorPluginsContext,{value:s??g,children:(0,h.jsx)(i.EditorStoreProvider,{initialState:{readonly:o??!1,nodes:u.nodes,edges:u.edges},children:(0,h.jsx)(b,{className:c,readonly:o,style:l,onChange:a})})})]})};exports.ApprovalFlowEditor=x;
@@ -1 +1 @@
1
- const e=require(`../shared/serialization.cjs`);var t=(t,n)=>({isDirty:!1,_changeVersion:0,loadDefinition:n=>{let{nodes:r,edges:i}=e.fromFlowDefinition(n);t(e=>{e.nodes=r,e.edges=i,e.selectedNodeId=null,e.isDirty=!1})},toDefinition:()=>{let{nodes:t,edges:r}=n();return e.toFlowDefinition(t,r)},reset:()=>{t(e=>{e.nodes=[],e.edges=[],e.selectedNodeId=null,e.isDirty=!1,e._changeVersion=0})}});exports.createFlowSlice=t;
1
+ const e=require(`../shared/serialization.cjs`);var t=(t,n)=>({isDirty:!1,changeVersion:0,loadDefinition:n=>{let{nodes:r,edges:i}=e.fromFlowDefinition(n);t(e=>{e.nodes=r,e.edges=i,e.selectedNodeId=null,e.isDirty=!1})},toDefinition:()=>{let{nodes:t,edges:r}=n();return e.toFlowDefinition(t,r)},reset:()=>{t(e=>{e.nodes=[],e.edges=[],e.selectedNodeId=null,e.isDirty=!1,e.changeVersion=0})}});exports.createFlowSlice=t;
@@ -1 +1 @@
1
- require(`../_internal/_rolldown/runtime.cjs`);const e=require(`../shared/connection-rules.cjs`),t=require(`../constants.cjs`),n=require(`../specifications/index.cjs`);let r=require(`@xyflow/react`),i=require(`@vef-framework-react/shared`);var a=(a,o)=>{let s=new Set;return{nodes:[],edges:[],onNodesChange:e=>{let{readonly:t,nodes:i}=o();if(t)return;s=new Set;let c=e.filter(e=>{if(e.type!==`remove`)return!0;let t=i.find(t=>t.id===e.id);if(!t)return!0;let r=!t.type||n.getSpecification(t.type).deletable!==!1;return r||s.add(e.id),r});if(c.length===0)return;let l=c.some(e=>!(e.type===`dimensions`||e.type===`select`||e.type===`position`&&e.dragging));a(e=>{e.nodes=(0,r.applyNodeChanges)(c,e.nodes),e.selectedNodeId&&!e.nodes.some(t=>t.id===e.selectedNodeId)&&(e.selectedNodeId=null),l&&(e.isDirty=!0,e._changeVersion++)})},onEdgesChange:e=>{let{readonly:t,edges:i,nodes:c,selectedNodeId:l}=o();if(t){s=new Set;return}let u=e.filter(e=>{if(e.type!==`remove`)return!0;let t=i.find(t=>t.id===e.id);if(!t)return!0;if(s.has(t.source)||s.has(t.target))return!1;if(l){let e=c.find(e=>e.id===l);if(e){let r=!!e.type&&n.getSpecification(e.type).deletable===!1,i=t.source===l||t.target===l;if(r&&i)return!1}}return!0});if(s=new Set,u.length===0)return;let d=u.some(e=>e.type!==`select`);a(e=>{e.edges=(0,r.applyEdgeChanges)(u,e.edges),d&&(e.isDirty=!0,e._changeVersion++)})},onConnect:t=>{let{edges:n,readonly:i}=o();i||e.validateConnection(t,n)&&a(e=>{e.edges=(0,r.addEdge)(t,e.edges),e.isDirty=!0,e._changeVersion++})},addNode:(e,r,s)=>{let{readonly:c,nodes:l}=o();if(c)return;let u=n.getSpecification(e);if(u.maxCount!==void 0&&l.filter(t=>t.type===e).length>=u.maxCount)return;let d=`${e}_${(0,i.generateId)()}`,f={...t.DEFAULT_NODE_DATA[e]??{},...s};a(t=>{t.nodes.push({id:d,type:e,position:r,data:f}),t.isDirty=!0,t._changeVersion++})},removeNode:e=>{let{readonly:t,nodes:r}=o();if(t)return;let i=r.find(t=>t.id===e);!i?.type||n.getSpecification(i.type).deletable===!1||a(t=>{t.nodes=t.nodes.filter(t=>t.id!==e),t.edges=t.edges.filter(t=>t.source!==e&&t.target!==e),t.selectedNodeId===e&&(t.selectedNodeId=null),t.isDirty=!0,t._changeVersion++})},removeEdge:e=>{let{readonly:t}=o();t||a(t=>{let n=t.edges.length;t.edges=t.edges.filter(t=>t.id!==e),t.edges.length!==n&&(t.isDirty=!0,t._changeVersion++)})},updateNodeData:(e,t)=>{let{readonly:n}=o();n||a(n=>{let r=n.nodes.find(t=>t.id===e);r&&(Object.assign(r.data,t),n.isDirty=!0,n._changeVersion++)})},updateNodePositions:e=>{a(t=>{for(let n of t.nodes){let t=e.get(n.id);t&&(n.position=t)}})}}};exports.createGraphSlice=a;
1
+ require(`../_internal/_rolldown/runtime.cjs`);const e=require(`../shared/connection-rules.cjs`),t=require(`../constants.cjs`),n=require(`../specifications/index.cjs`);let r=require(`@xyflow/react`),i=require(`@vef-framework-react/shared`);var a=(a,o)=>{let s=new Set;return{nodes:[],edges:[],onNodesChange:e=>{let{readonly:t,nodes:i}=o();if(t)return;s=new Set;let c=e.filter(e=>{if(e.type!==`remove`)return!0;let t=i.find(t=>t.id===e.id);if(!t)return!0;let r=!t.type||n.getSpecification(t.type).deletable!==!1;return r||s.add(e.id),r});if(c.length===0)return;let l=c.some(e=>!(e.type===`dimensions`||e.type===`select`||e.type===`position`&&e.dragging));a(e=>{e.nodes=(0,r.applyNodeChanges)(c,e.nodes),e.selectedNodeId&&!e.nodes.some(t=>t.id===e.selectedNodeId)&&(e.selectedNodeId=null),l&&(e.isDirty=!0,e.changeVersion++)})},onEdgesChange:e=>{let{readonly:t,edges:i,nodes:c,selectedNodeId:l}=o();if(t){s=new Set;return}let u=e.filter(e=>{if(e.type!==`remove`)return!0;let t=i.find(t=>t.id===e.id);if(!t)return!0;if(s.has(t.source)||s.has(t.target))return!1;if(l){let e=c.find(e=>e.id===l);if(e){let r=!!e.type&&n.getSpecification(e.type).deletable===!1,i=t.source===l||t.target===l;if(r&&i)return!1}}return!0});if(s=new Set,u.length===0)return;let d=u.some(e=>e.type!==`select`);a(e=>{e.edges=(0,r.applyEdgeChanges)(u,e.edges),d&&(e.isDirty=!0,e.changeVersion++)})},onConnect:t=>{let{edges:n,readonly:i}=o();i||e.validateConnection(t,n)&&a(e=>{e.edges=(0,r.addEdge)(t,e.edges),e.isDirty=!0,e.changeVersion++})},addNode:(e,r,s)=>{let{readonly:c,nodes:l}=o();if(c)return;let u=n.getSpecification(e);if(u.maxCount!==void 0&&l.filter(t=>t.type===e).length>=u.maxCount)return;let d=`${e}_${(0,i.generateId)()}`,f={...t.DEFAULT_NODE_DATA[e]??{},...s};a(t=>{t.nodes.push({id:d,type:e,position:r,data:f}),t.isDirty=!0,t.changeVersion++})},removeNode:e=>{let{readonly:t,nodes:r}=o();if(t)return;let i=r.find(t=>t.id===e);!i?.type||n.getSpecification(i.type).deletable===!1||a(t=>{t.nodes=t.nodes.filter(t=>t.id!==e),t.edges=t.edges.filter(t=>t.source!==e&&t.target!==e),t.selectedNodeId===e&&(t.selectedNodeId=null),t.isDirty=!0,t.changeVersion++})},removeEdge:e=>{let{readonly:t}=o();t||a(t=>{let n=t.edges.length;t.edges=t.edges.filter(t=>t.id!==e),t.edges.length!==n&&(t.isDirty=!0,t.changeVersion++)})},updateNodeData:(e,t)=>{let{readonly:n}=o();n||a(n=>{let r=n.nodes.find(t=>t.id===e);r&&(Object.assign(r.data,t),n.isDirty=!0,n.changeVersion++)})},updateNodePositions:e=>{a(t=>{for(let n of t.nodes){let t=e.get(n.id);t&&(n.position=t)}})}}};exports.createGraphSlice=a;
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/approval-flow-editor v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
1
+ /*! @vef-framework-react/approval-flow-editor v2.2.2 made by Venus | 2026-05-18T12:44:01.943Z */
2
2
  import { fromFlowDefinition as e } from "../shared/serialization.js";
3
3
  import { EditorPluginsContext as t } from "../plugins/context.js";
4
4
  import { reactFlowGlobalBaseStyle as n } from "../styles/base.js";
@@ -21,7 +21,7 @@ var O = {}, k = { type: "approval" }, A = { hideAttribution: !0 }, j = {
21
21
  height: 100,
22
22
  marginBottom: 56
23
23
  }, M = ({ onChange: e, readonly: t = !1, className: n, style: o }) => {
24
- let h = s((e) => e.nodes), b = s((e) => e.edges), T = s((e) => e.onNodesChange), O = s((e) => e.onEdgesChange), M = s((e) => e.onConnect), N = s((e) => e.selectNode), P = s((e) => e.setHoveredEdgeId), F = s((e) => e.setReadonly), I = s((e) => e._changeVersion), L = s((e) => e.toDefinition), { onDragOver: R, onDrop: z } = l(), { isValidConnection: B } = c(), V = x(), H = w(!1), U = w(h);
24
+ let h = s((e) => e.nodes), b = s((e) => e.edges), T = s((e) => e.onNodesChange), O = s((e) => e.onEdgesChange), M = s((e) => e.onConnect), N = s((e) => e.selectNode), P = s((e) => e.setHoveredEdgeId), F = s((e) => e.setReadonly), I = s((e) => e.changeVersion), L = s((e) => e.toDefinition), { onDragOver: R, onDrop: z } = l(), { isValidConnection: B } = c(), V = x(), H = w(!1), U = w(h);
25
25
  U.current = h;
26
26
  let W = h.length > 0;
27
27
  C(() => {
@@ -56,7 +56,7 @@ var O = {}, k = { type: "approval" }, A = { hideAttribution: !0 }, j = {
56
56
  css: [
57
57
  a,
58
58
  i,
59
- process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcHJvdmFsLWZsb3ctZWRpdG9yLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF1SitCIiwiZmlsZSI6ImFwcHJvdmFsLWZsb3ctZWRpdG9yLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgRWRnZU1vdXNlSGFuZGxlciwgTm9kZU1vdXNlSGFuZGxlciB9IGZyb20gXCJAeHlmbG93L3JlYWN0XCI7XG5pbXBvcnQgdHlwZSB7IEZDIH0gZnJvbSBcInJlYWN0XCI7XG5cbmltcG9ydCB0eXBlIHsgRWRpdG9yUGx1Z2lucyB9IGZyb20gXCIuLi9wbHVnaW5zXCI7XG5pbXBvcnQgdHlwZSB7IEZsb3dEZWZpbml0aW9uIH0gZnJvbSBcIi4uL3R5cGVzXCI7XG5cbmltcG9ydCB7IEdsb2JhbCB9IGZyb20gXCJAZW1vdGlvbi9yZWFjdFwiO1xuaW1wb3J0IHsgQmFja2dyb3VuZCwgQmFja2dyb3VuZFZhcmlhbnQsIE1pbmlNYXAsIFJlYWN0RmxvdywgUmVhY3RGbG93UHJvdmlkZXIsIHVzZVVwZGF0ZU5vZGVJbnRlcm5hbHMgfSBmcm9tIFwiQHh5Zmxvdy9yZWFjdFwiO1xuaW1wb3J0IHsgdXNlQ2FsbGJhY2ssIHVzZUVmZmVjdCwgdXNlUmVmLCB1c2VTdGF0ZSB9IGZyb20gXCJyZWFjdFwiO1xuXG5pbXBvcnQgeyB1c2VDb25uZWN0aW9uVmFsaWRhdGlvbiB9IGZyb20gXCIuLi9ob29rcy91c2UtY29ubmVjdGlvbi12YWxpZGF0aW9uXCI7XG5pbXBvcnQgeyB1c2VEcm9wIH0gZnJvbSBcIi4uL2hvb2tzL3VzZS1kcmFnLWRyb3BcIjtcbmltcG9ydCB7IEVkaXRvclBsdWdpbnNDb250ZXh0IH0gZnJvbSBcIi4uL3BsdWdpbnNcIjtcbmltcG9ydCB7IGZyb21GbG93RGVmaW5pdGlvbiB9IGZyb20gXCIuLi9zaGFyZWQvc2VyaWFsaXphdGlvblwiO1xuaW1wb3J0IHsgRWRpdG9yU3RvcmVQcm92aWRlciwgdXNlRWRpdG9yU3RvcmUgfSBmcm9tIFwiLi4vc3RvcmVcIjtcbmltcG9ydCB7IGNhbnZhc1N0eWxlLCBlZGl0b3JMYXlvdXRTdHlsZSwgZWRpdG9yVGhlbWVTdHlsZSwgeHlmbG93R2xvYmFsQmFzZVN0eWxlIH0gZnJvbSBcIi4uL3N0eWxlc1wiO1xuaW1wb3J0IHsgQ29uZmlnUGFuZWwgfSBmcm9tIFwiLi9jb25maWctcGFuZWxcIjtcbmltcG9ydCB7IGVkZ2VUeXBlcyB9IGZyb20gXCIuL2VkZ2VzXCI7XG5pbXBvcnQgeyBFZGl0b3JUb29sYmFyIH0gZnJvbSBcIi4vZWRpdG9yLXRvb2xiYXJcIjtcbmltcG9ydCB7IG5vZGVUeXBlcyB9IGZyb20gXCIuL25vZGVzXCI7XG5pbXBvcnQgeyBab29tQ29udHJvbCB9IGZyb20gXCIuL3pvb20tY29udHJvbFwiO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFwcHJvdmFsRmxvd0VkaXRvclByb3BzIHtcbiAgLyoqXG4gICAqIEluaXRpYWwgZmxvdyBkZWZpbml0aW9uIChiYWNrZW5kIGZvcm1hdClcbiAgICovXG4gIHZhbHVlPzogRmxvd0RlZmluaXRpb247XG4gIC8qKlxuICAgKiBDYWxsYmFjayB3aGVuIGZsb3cgY2hhbmdlc1xuICAgKi9cbiAgb25DaGFuZ2U/OiAoZGVmaW5pdGlvbjogRmxvd0RlZmluaXRpb24pID0+IHZvaWQ7XG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSBlZGl0b3IgaXMgcmVhZG9ubHlcbiAgICovXG4gIHJlYWRvbmx5PzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEV4dGVybmFsIHBsdWdpbnMgKHVzZXIvcm9sZS9kZXB0IHBpY2tlcnMpXG4gICAqL1xuICBwbHVnaW5zPzogRWRpdG9yUGx1Z2lucztcbiAgLyoqXG4gICAqIEN1c3RvbSBjbGFzc05hbWVcbiAgICovXG4gIGNsYXNzTmFtZT86IHN0cmluZztcbiAgLyoqXG4gICAqIEN1c3RvbSBzdHlsZVxuICAgKi9cbiAgc3R5bGU/OiBSZWFjdC5DU1NQcm9wZXJ0aWVzO1xufVxuXG4vLyBIb2lzdCBzdGFibGUgb2JqZWN0IHJlZmVyZW5jZXMgdG8gcHJldmVudCBSZWFjdEZsb3cgZnJvbSByZS1wcm9jZXNzaW5nIG9uIGV2ZXJ5IHJlbmRlclxuY29uc3QgRU1QVFlfUExVR0lOUzogRWRpdG9yUGx1Z2lucyA9IHt9O1xuY29uc3QgREVGQVVMVF9FREdFX09QVElPTlMgPSB7IHR5cGU6IFwiYXBwcm92YWxcIiB9IGFzIGNvbnN0O1xuY29uc3QgUFJPX09QVElPTlMgPSB7IGhpZGVBdHRyaWJ1dGlvbjogdHJ1ZSB9IGFzIGNvbnN0O1xuY29uc3QgTUlOSU1BUF9TVFlMRSA9IHtcbiAgd2lkdGg6IDE1MSxcbiAgaGVpZ2h0OiAxMDAsXG4gIG1hcmdpbkJvdHRvbTogNTZcbn0gYXMgY29uc3Q7XG5cbmNvbnN0IEVkaXRvcklubmVyOiBGQzxPbWl0PEFwcHJvdmFsRmxvd0VkaXRvclByb3BzLCBcInZhbHVlXCI+PiA9ICh7XG4gIG9uQ2hhbmdlLFxuICByZWFkb25seSA9IGZhbHNlLFxuICBjbGFzc05hbWUsXG4gIHN0eWxlXG59KSA9PiB7XG4gIGNvbnN0IG5vZGVzID0gdXNlRWRpdG9yU3RvcmUocyA9PiBzLm5vZGVzKTtcbiAgY29uc3QgZWRnZXMgPSB1c2VFZGl0b3JTdG9yZShzID0+IHMuZWRnZXMpO1xuICBjb25zdCBvbk5vZGVzQ2hhbmdlID0gdXNlRWRpdG9yU3RvcmUocyA9PiBzLm9uTm9kZXNDaGFuZ2UpO1xuICBjb25zdCBvbkVkZ2VzQ2hhbmdlID0gdXNlRWRpdG9yU3RvcmUocyA9PiBzLm9uRWRnZXNDaGFuZ2UpO1xuICBjb25zdCBvbkNvbm5lY3QgPSB1c2VFZGl0b3JTdG9yZShzID0+IHMub25Db25uZWN0KTtcbiAgY29uc3Qgc2VsZWN0Tm9kZSA9IHVzZUVkaXRvclN0b3JlKHMgPT4gcy5zZWxlY3ROb2RlKTtcbiAgY29uc3Qgc2V0SG92ZXJlZEVkZ2VJZCA9IHVzZUVkaXRvclN0b3JlKHMgPT4gcy5zZXRIb3ZlcmVkRWRnZUlkKTtcbiAgY29uc3Qgc2V0UmVhZG9ubHkgPSB1c2VFZGl0b3JTdG9yZShzID0+IHMuc2V0UmVhZG9ubHkpO1xuICBjb25zdCBjaGFuZ2VWZXJzaW9uID0gdXNlRWRpdG9yU3RvcmUocyA9PiBzLl9jaGFuZ2VWZXJzaW9uKTtcbiAgY29uc3QgdG9EZWZpbml0aW9uID0gdXNlRWRpdG9yU3RvcmUocyA9PiBzLnRvRGVmaW5pdGlvbik7XG5cbiAgY29uc3QgeyBvbkRyYWdPdmVyLCBvbkRyb3AgfSA9IHVzZURyb3AoKTtcbiAgY29uc3QgeyBpc1ZhbGlkQ29ubmVjdGlvbiB9ID0gdXNlQ29ubmVjdGlvblZhbGlkYXRpb24oKTtcbiAgY29uc3QgdXBkYXRlTm9kZUludGVybmFscyA9IHVzZVVwZGF0ZU5vZGVJbnRlcm5hbHMoKTtcblxuICAvLyBGb3JjZSByZS1tZWFzdXJlIGhhbmRsZXMgYWZ0ZXIgaW5pdGlhbCBub2RlcyBsb2FkIHRvIGVuc3VyZSBlZGdlIGVuZHBvaW50cyBhbGlnbi5cbiAgLy8gVXNlcyBkb3VibGUtckFGIHNvIHRoZSBicm93c2VyIGhhcyBjb21wbGV0ZWQgbGF5b3V0IGJlZm9yZSB3ZSByZWFkIGdldEJvdW5kaW5nQ2xpZW50UmVjdCxcbiAgLy8gd2l0aCBhIDMwMG1zIHRpbWVvdXQgZmFsbGJhY2sgZm9yIHNsb3cgZW52aXJvbm1lbnRzLlxuICBjb25zdCBpbml0aWFsaXplZFJlZiA9IHVzZVJlZihmYWxzZSk7XG4gIGNvbnN0IG5vZGVzUmVmID0gdXNlUmVmKG5vZGVzKTtcbiAgbm9kZXNSZWYuY3VycmVudCA9IG5vZGVzO1xuICBjb25zdCBoYXNOb2RlcyA9IG5vZGVzLmxlbmd0aCA+IDA7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoaW5pdGlhbGl6ZWRSZWYuY3VycmVudCB8fCAhaGFzTm9kZXMpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpbml0aWFsaXplZFJlZi5jdXJyZW50ID0gdHJ1ZTtcbiAgICBjb25zdCBub2RlSWRzID0gbm9kZXNSZWYuY3VycmVudC5tYXAobiA9PiBuLmlkKTtcbiAgICBjb25zdCB1cGRhdGUgPSAoKSA9PiB1cGRhdGVOb2RlSW50ZXJuYWxzKG5vZGVJZHMpO1xuXG4gICAgbGV0IHJhZjIgPSAwO1xuICAgIGNvbnN0IHJhZjEgPSByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4ge1xuICAgICAgcmFmMiA9IHJlcXVlc3RBbmltYXRpb25GcmFtZSh1cGRhdGUpO1xuICAgIH0pO1xuICAgIGNvbnN0IHRpbWVySWQgPSBnbG9iYWxUaGlzLnNldFRpbWVvdXQodXBkYXRlLCAzMDApO1xuXG4gICAgcmV0dXJuICgpID0+IHtcbiAgICAgIGNhbmNlbEFuaW1hdGlvbkZyYW1lKHJhZjEpO1xuICAgICAgY2FuY2VsQW5pbWF0aW9uRnJhbWUocmFmMik7XG4gICAgICBnbG9iYWxUaGlzLmNsZWFyVGltZW91dCh0aW1lcklkKTtcbiAgICB9O1xuICB9LCBbaGFzTm9kZXMsIHVwZGF0ZU5vZGVJbnRlcm5hbHNdKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIHNldFJlYWRvbmx5KHJlYWRvbmx5KTtcbiAgfSwgW3JlYWRvbmx5LCBzZXRSZWFkb25seV0pO1xuXG4gIC8vIE5vdGlmeSBwYXJlbnQgb2YgbWVhbmluZ2Z1bCBkYXRhIGNoYW5nZXMgdmlhIHZlcnNpb24gY291bnRlci5cbiAgY29uc3Qgb25DaGFuZ2VSZWYgPSB1c2VSZWYob25DaGFuZ2UpO1xuICBvbkNoYW5nZVJlZi5jdXJyZW50ID0gb25DaGFuZ2U7XG4gIGNvbnN0IHByZXZWZXJzaW9uUmVmID0gdXNlUmVmKGNoYW5nZVZlcnNpb24pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGNoYW5nZVZlcnNpb24gPT09IHByZXZWZXJzaW9uUmVmLmN1cnJlbnQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBwcmV2VmVyc2lvblJlZi5jdXJyZW50ID0gY2hhbmdlVmVyc2lvbjtcbiAgICBvbkNoYW5nZVJlZi5jdXJyZW50Py4odG9EZWZpbml0aW9uKCkpO1xuICB9LCBbY2hhbmdlVmVyc2lvbiwgdG9EZWZpbml0aW9uXSk7XG5cbiAgY29uc3Qgb25Ob2RlQ2xpY2s6IE5vZGVNb3VzZUhhbmRsZXIgPSB1c2VDYWxsYmFjayhcbiAgICAoX2V2ZW50LCBub2RlKSA9PiB7XG4gICAgICBzZWxlY3ROb2RlKG5vZGUuaWQpO1xuICAgIH0sXG4gICAgW3NlbGVjdE5vZGVdXG4gICk7XG5cbiAgY29uc3Qgb25QYW5lQ2xpY2sgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgc2VsZWN0Tm9kZShudWxsKTtcbiAgfSwgW3NlbGVjdE5vZGVdKTtcblxuICBjb25zdCBvbkVkZ2VNb3VzZUVudGVyOiBFZGdlTW91c2VIYW5kbGVyID0gdXNlQ2FsbGJhY2soXG4gICAgKF9ldmVudCwgZWRnZSkgPT4ge1xuICAgICAgc2V0SG92ZXJlZEVkZ2VJZChlZGdlLmlkKTtcbiAgICB9LFxuICAgIFtzZXRIb3ZlcmVkRWRnZUlkXVxuICApO1xuXG4gIGNvbnN0IG9uRWRnZU1vdXNlTGVhdmU6IEVkZ2VNb3VzZUhhbmRsZXIgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgc2V0SG92ZXJlZEVkZ2VJZChudWxsKTtcbiAgfSwgW3NldEhvdmVyZWRFZGdlSWRdKTtcblxuICByZXR1cm4gKFxuICAgIDxkaXYgY2xhc3NOYW1lPXtjbGFzc05hbWV9IGNzcz17W2VkaXRvclRoZW1lU3R5bGUsIGVkaXRvckxheW91dFN0eWxlXX0gc3R5bGU9e3N0eWxlfT5cbiAgICAgIDxkaXYgY3NzPXtjYW52YXNTdHlsZX0+XG4gICAgICAgIDxSZWFjdEZsb3dcbiAgICAgICAgICBmaXRWaWV3XG4gICAgICAgICAgcGFuT25TY3JvbGxcbiAgICAgICAgICBjb25uZWN0aW9uUmFkaXVzPXszMH1cbiAgICAgICAgICBkZWZhdWx0RWRnZU9wdGlvbnM9e0RFRkFVTFRfRURHRV9PUFRJT05TfVxuICAgICAgICAgIGVkZ2VzPXtlZGdlc31cbiAgICAgICAgICBlZGdlVHlwZXM9e2VkZ2VUeXBlc31cbiAgICAgICAgICBlbGVtZW50c1NlbGVjdGFibGU9eyFyZWFkb25seX1cbiAgICAgICAgICBpc1ZhbGlkQ29ubmVjdGlvbj17aXNWYWxpZENvbm5lY3Rpb259XG4gICAgICAgICAgbm9kZXM9e25vZGVzfVxuICAgICAgICAgIG5vZGVzQ29ubmVjdGFibGU9eyFyZWFkb25seX1cbiAgICAgICAgICBub2Rlc0RyYWdnYWJsZT17IXJlYWRvbmx5fVxuICAgICAgICAgIG5vZGVUeXBlcz17bm9kZVR5cGVzfVxuICAgICAgICAgIHByb09wdGlvbnM9e1BST19PUFRJT05TfVxuICAgICAgICAgIG9uQ29ubmVjdD17b25Db25uZWN0fVxuICAgICAgICAgIG9uRHJhZ092ZXI9e29uRHJhZ092ZXJ9XG4gICAgICAgICAgb25Ecm9wPXtvbkRyb3B9XG4gICAgICAgICAgb25FZGdlTW91c2VFbnRlcj17b25FZGdlTW91c2VFbnRlcn1cbiAgICAgICAgICBvbkVkZ2VNb3VzZUxlYXZlPXtvbkVkZ2VNb3VzZUxlYXZlfVxuICAgICAgICAgIG9uRWRnZXNDaGFuZ2U9e29uRWRnZXNDaGFuZ2V9XG4gICAgICAgICAgb25Ob2RlQ2xpY2s9e29uTm9kZUNsaWNrfVxuICAgICAgICAgIG9uTm9kZXNDaGFuZ2U9e29uTm9kZXNDaGFuZ2V9XG4gICAgICAgICAgb25QYW5lQ2xpY2s9e29uUGFuZUNsaWNrfVxuICAgICAgICA+XG4gICAgICAgICAgPEJhY2tncm91bmQgZ2FwPXsxNn0gc2l6ZT17MX0gdmFyaWFudD17QmFja2dyb3VuZFZhcmlhbnQuRG90c30gLz5cblxuICAgICAgICAgIDxNaW5pTWFwXG4gICAgICAgICAgICBwYW5uYWJsZVxuICAgICAgICAgICAgem9vbWFibGVcbiAgICAgICAgICAgIG5vZGVTdHJva2VXaWR0aD17M31cbiAgICAgICAgICAgIHBvc2l0aW9uPVwiYm90dG9tLWxlZnRcIlxuICAgICAgICAgICAgc3R5bGU9e01JTklNQVBfU1RZTEV9XG4gICAgICAgICAgLz5cblxuICAgICAgICAgIDxab29tQ29udHJvbCAvPlxuICAgICAgICA8L1JlYWN0Rmxvdz5cblxuICAgICAgICB7IXJlYWRvbmx5ICYmIDxFZGl0b3JUb29sYmFyIC8+fVxuICAgICAgPC9kaXY+XG5cbiAgICAgIHsvKiBGbG9hdGluZyBjb25maWcgcGFuZWwg4oCUIGFsd2F5cyByZW5kZXJlZCBmb3Igc2xpZGUgYW5pbWF0aW9uICovfVxuICAgICAgPENvbmZpZ1BhbmVsIC8+XG4gICAgPC9kaXY+XG4gICk7XG59O1xuXG4vKipcbiAqIEFwcHJvdmFsIEZsb3cgRWRpdG9yIGNvbXBvbmVudFxuICovXG5leHBvcnQgY29uc3QgQXBwcm92YWxGbG93RWRpdG9yOiBGQzxBcHByb3ZhbEZsb3dFZGl0b3JQcm9wcz4gPSAoe1xuICB2YWx1ZSxcbiAgb25DaGFuZ2UsXG4gIHJlYWRvbmx5LFxuICBwbHVnaW5zLFxuICBjbGFzc05hbWUsXG4gIHN0eWxlXG59KSA9PiB7XG4gIGNvbnN0IFtpbml0aWFsRGF0YV0gPSB1c2VTdGF0ZSgoKSA9PiB2YWx1ZSA/IGZyb21GbG93RGVmaW5pdGlvbih2YWx1ZSkgOiB7IG5vZGVzOiBbXSwgZWRnZXM6IFtdIH0pO1xuXG4gIHJldHVybiAoXG4gICAgPFJlYWN0Rmxvd1Byb3ZpZGVyPlxuICAgICAgPEdsb2JhbCBzdHlsZXM9e3h5Zmxvd0dsb2JhbEJhc2VTdHlsZX0gLz5cblxuICAgICAgPEVkaXRvclBsdWdpbnNDb250ZXh0IHZhbHVlPXtwbHVnaW5zID8/IEVNUFRZX1BMVUdJTlN9PlxuICAgICAgICA8RWRpdG9yU3RvcmVQcm92aWRlclxuICAgICAgICAgIGluaXRpYWxTdGF0ZT17e1xuICAgICAgICAgICAgcmVhZG9ubHk6IHJlYWRvbmx5ID8/IGZhbHNlLFxuICAgICAgICAgICAgbm9kZXM6IGluaXRpYWxEYXRhLm5vZGVzLFxuICAgICAgICAgICAgZWRnZXM6IGluaXRpYWxEYXRhLmVkZ2VzXG4gICAgICAgICAgfX1cbiAgICAgICAgPlxuICAgICAgICAgIDxFZGl0b3JJbm5lclxuICAgICAgICAgICAgY2xhc3NOYW1lPXtjbGFzc05hbWV9XG4gICAgICAgICAgICByZWFkb25seT17cmVhZG9ubHl9XG4gICAgICAgICAgICBzdHlsZT17c3R5bGV9XG4gICAgICAgICAgICBvbkNoYW5nZT17b25DaGFuZ2V9XG4gICAgICAgICAgLz5cbiAgICAgICAgPC9FZGl0b3JTdG9yZVByb3ZpZGVyPlxuICAgICAgPC9FZGl0b3JQbHVnaW5zQ29udGV4dD5cbiAgICA8L1JlYWN0Rmxvd1Byb3ZpZGVyPlxuICApO1xufTtcbiJdfQ== */"
59
+ process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcHJvdmFsLWZsb3ctZWRpdG9yLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF1SitCIiwiZmlsZSI6ImFwcHJvdmFsLWZsb3ctZWRpdG9yLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgRWRnZU1vdXNlSGFuZGxlciwgTm9kZU1vdXNlSGFuZGxlciB9IGZyb20gXCJAeHlmbG93L3JlYWN0XCI7XG5pbXBvcnQgdHlwZSB7IEZDIH0gZnJvbSBcInJlYWN0XCI7XG5cbmltcG9ydCB0eXBlIHsgRWRpdG9yUGx1Z2lucyB9IGZyb20gXCIuLi9wbHVnaW5zXCI7XG5pbXBvcnQgdHlwZSB7IEZsb3dEZWZpbml0aW9uIH0gZnJvbSBcIi4uL3R5cGVzXCI7XG5cbmltcG9ydCB7IEdsb2JhbCB9IGZyb20gXCJAZW1vdGlvbi9yZWFjdFwiO1xuaW1wb3J0IHsgQmFja2dyb3VuZCwgQmFja2dyb3VuZFZhcmlhbnQsIE1pbmlNYXAsIFJlYWN0RmxvdywgUmVhY3RGbG93UHJvdmlkZXIsIHVzZVVwZGF0ZU5vZGVJbnRlcm5hbHMgfSBmcm9tIFwiQHh5Zmxvdy9yZWFjdFwiO1xuaW1wb3J0IHsgdXNlQ2FsbGJhY2ssIHVzZUVmZmVjdCwgdXNlUmVmLCB1c2VTdGF0ZSB9IGZyb20gXCJyZWFjdFwiO1xuXG5pbXBvcnQgeyB1c2VDb25uZWN0aW9uVmFsaWRhdGlvbiB9IGZyb20gXCIuLi9ob29rcy91c2UtY29ubmVjdGlvbi12YWxpZGF0aW9uXCI7XG5pbXBvcnQgeyB1c2VEcm9wIH0gZnJvbSBcIi4uL2hvb2tzL3VzZS1kcmFnLWRyb3BcIjtcbmltcG9ydCB7IEVkaXRvclBsdWdpbnNDb250ZXh0IH0gZnJvbSBcIi4uL3BsdWdpbnNcIjtcbmltcG9ydCB7IGZyb21GbG93RGVmaW5pdGlvbiB9IGZyb20gXCIuLi9zaGFyZWQvc2VyaWFsaXphdGlvblwiO1xuaW1wb3J0IHsgRWRpdG9yU3RvcmVQcm92aWRlciwgdXNlRWRpdG9yU3RvcmUgfSBmcm9tIFwiLi4vc3RvcmVcIjtcbmltcG9ydCB7IGNhbnZhc1N0eWxlLCBlZGl0b3JMYXlvdXRTdHlsZSwgZWRpdG9yVGhlbWVTdHlsZSwgeHlmbG93R2xvYmFsQmFzZVN0eWxlIH0gZnJvbSBcIi4uL3N0eWxlc1wiO1xuaW1wb3J0IHsgQ29uZmlnUGFuZWwgfSBmcm9tIFwiLi9jb25maWctcGFuZWxcIjtcbmltcG9ydCB7IGVkZ2VUeXBlcyB9IGZyb20gXCIuL2VkZ2VzXCI7XG5pbXBvcnQgeyBFZGl0b3JUb29sYmFyIH0gZnJvbSBcIi4vZWRpdG9yLXRvb2xiYXJcIjtcbmltcG9ydCB7IG5vZGVUeXBlcyB9IGZyb20gXCIuL25vZGVzXCI7XG5pbXBvcnQgeyBab29tQ29udHJvbCB9IGZyb20gXCIuL3pvb20tY29udHJvbFwiO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFwcHJvdmFsRmxvd0VkaXRvclByb3BzIHtcbiAgLyoqXG4gICAqIEluaXRpYWwgZmxvdyBkZWZpbml0aW9uIChiYWNrZW5kIGZvcm1hdClcbiAgICovXG4gIHZhbHVlPzogRmxvd0RlZmluaXRpb247XG4gIC8qKlxuICAgKiBDYWxsYmFjayB3aGVuIGZsb3cgY2hhbmdlc1xuICAgKi9cbiAgb25DaGFuZ2U/OiAoZGVmaW5pdGlvbjogRmxvd0RlZmluaXRpb24pID0+IHZvaWQ7XG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSBlZGl0b3IgaXMgcmVhZG9ubHlcbiAgICovXG4gIHJlYWRvbmx5PzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEV4dGVybmFsIHBsdWdpbnMgKHVzZXIvcm9sZS9kZXB0IHBpY2tlcnMpXG4gICAqL1xuICBwbHVnaW5zPzogRWRpdG9yUGx1Z2lucztcbiAgLyoqXG4gICAqIEN1c3RvbSBjbGFzc05hbWVcbiAgICovXG4gIGNsYXNzTmFtZT86IHN0cmluZztcbiAgLyoqXG4gICAqIEN1c3RvbSBzdHlsZVxuICAgKi9cbiAgc3R5bGU/OiBSZWFjdC5DU1NQcm9wZXJ0aWVzO1xufVxuXG4vLyBIb2lzdCBzdGFibGUgb2JqZWN0IHJlZmVyZW5jZXMgdG8gcHJldmVudCBSZWFjdEZsb3cgZnJvbSByZS1wcm9jZXNzaW5nIG9uIGV2ZXJ5IHJlbmRlclxuY29uc3QgRU1QVFlfUExVR0lOUzogRWRpdG9yUGx1Z2lucyA9IHt9O1xuY29uc3QgREVGQVVMVF9FREdFX09QVElPTlMgPSB7IHR5cGU6IFwiYXBwcm92YWxcIiB9IGFzIGNvbnN0O1xuY29uc3QgUFJPX09QVElPTlMgPSB7IGhpZGVBdHRyaWJ1dGlvbjogdHJ1ZSB9IGFzIGNvbnN0O1xuY29uc3QgTUlOSU1BUF9TVFlMRSA9IHtcbiAgd2lkdGg6IDE1MSxcbiAgaGVpZ2h0OiAxMDAsXG4gIG1hcmdpbkJvdHRvbTogNTZcbn0gYXMgY29uc3Q7XG5cbmNvbnN0IEVkaXRvcklubmVyOiBGQzxPbWl0PEFwcHJvdmFsRmxvd0VkaXRvclByb3BzLCBcInZhbHVlXCI+PiA9ICh7XG4gIG9uQ2hhbmdlLFxuICByZWFkb25seSA9IGZhbHNlLFxuICBjbGFzc05hbWUsXG4gIHN0eWxlXG59KSA9PiB7XG4gIGNvbnN0IG5vZGVzID0gdXNlRWRpdG9yU3RvcmUocyA9PiBzLm5vZGVzKTtcbiAgY29uc3QgZWRnZXMgPSB1c2VFZGl0b3JTdG9yZShzID0+IHMuZWRnZXMpO1xuICBjb25zdCBvbk5vZGVzQ2hhbmdlID0gdXNlRWRpdG9yU3RvcmUocyA9PiBzLm9uTm9kZXNDaGFuZ2UpO1xuICBjb25zdCBvbkVkZ2VzQ2hhbmdlID0gdXNlRWRpdG9yU3RvcmUocyA9PiBzLm9uRWRnZXNDaGFuZ2UpO1xuICBjb25zdCBvbkNvbm5lY3QgPSB1c2VFZGl0b3JTdG9yZShzID0+IHMub25Db25uZWN0KTtcbiAgY29uc3Qgc2VsZWN0Tm9kZSA9IHVzZUVkaXRvclN0b3JlKHMgPT4gcy5zZWxlY3ROb2RlKTtcbiAgY29uc3Qgc2V0SG92ZXJlZEVkZ2VJZCA9IHVzZUVkaXRvclN0b3JlKHMgPT4gcy5zZXRIb3ZlcmVkRWRnZUlkKTtcbiAgY29uc3Qgc2V0UmVhZG9ubHkgPSB1c2VFZGl0b3JTdG9yZShzID0+IHMuc2V0UmVhZG9ubHkpO1xuICBjb25zdCBjaGFuZ2VWZXJzaW9uID0gdXNlRWRpdG9yU3RvcmUocyA9PiBzLmNoYW5nZVZlcnNpb24pO1xuICBjb25zdCB0b0RlZmluaXRpb24gPSB1c2VFZGl0b3JTdG9yZShzID0+IHMudG9EZWZpbml0aW9uKTtcblxuICBjb25zdCB7IG9uRHJhZ092ZXIsIG9uRHJvcCB9ID0gdXNlRHJvcCgpO1xuICBjb25zdCB7IGlzVmFsaWRDb25uZWN0aW9uIH0gPSB1c2VDb25uZWN0aW9uVmFsaWRhdGlvbigpO1xuICBjb25zdCB1cGRhdGVOb2RlSW50ZXJuYWxzID0gdXNlVXBkYXRlTm9kZUludGVybmFscygpO1xuXG4gIC8vIEZvcmNlIHJlLW1lYXN1cmUgaGFuZGxlcyBhZnRlciBpbml0aWFsIG5vZGVzIGxvYWQgdG8gZW5zdXJlIGVkZ2UgZW5kcG9pbnRzIGFsaWduLlxuICAvLyBVc2VzIGRvdWJsZS1yQUYgc28gdGhlIGJyb3dzZXIgaGFzIGNvbXBsZXRlZCBsYXlvdXQgYmVmb3JlIHdlIHJlYWQgZ2V0Qm91bmRpbmdDbGllbnRSZWN0LFxuICAvLyB3aXRoIGEgMzAwbXMgdGltZW91dCBmYWxsYmFjayBmb3Igc2xvdyBlbnZpcm9ubWVudHMuXG4gIGNvbnN0IGluaXRpYWxpemVkUmVmID0gdXNlUmVmKGZhbHNlKTtcbiAgY29uc3Qgbm9kZXNSZWYgPSB1c2VSZWYobm9kZXMpO1xuICBub2Rlc1JlZi5jdXJyZW50ID0gbm9kZXM7XG4gIGNvbnN0IGhhc05vZGVzID0gbm9kZXMubGVuZ3RoID4gMDtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChpbml0aWFsaXplZFJlZi5jdXJyZW50IHx8ICFoYXNOb2Rlcykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGluaXRpYWxpemVkUmVmLmN1cnJlbnQgPSB0cnVlO1xuICAgIGNvbnN0IG5vZGVJZHMgPSBub2Rlc1JlZi5jdXJyZW50Lm1hcChuID0+IG4uaWQpO1xuICAgIGNvbnN0IHVwZGF0ZSA9ICgpID0+IHVwZGF0ZU5vZGVJbnRlcm5hbHMobm9kZUlkcyk7XG5cbiAgICBsZXQgcmFmMiA9IDA7XG4gICAgY29uc3QgcmFmMSA9IHJlcXVlc3RBbmltYXRpb25GcmFtZSgoKSA9PiB7XG4gICAgICByYWYyID0gcmVxdWVzdEFuaW1hdGlvbkZyYW1lKHVwZGF0ZSk7XG4gICAgfSk7XG4gICAgY29uc3QgdGltZXJJZCA9IGdsb2JhbFRoaXMuc2V0VGltZW91dCh1cGRhdGUsIDMwMCk7XG5cbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgY2FuY2VsQW5pbWF0aW9uRnJhbWUocmFmMSk7XG4gICAgICBjYW5jZWxBbmltYXRpb25GcmFtZShyYWYyKTtcbiAgICAgIGdsb2JhbFRoaXMuY2xlYXJUaW1lb3V0KHRpbWVySWQpO1xuICAgIH07XG4gIH0sIFtoYXNOb2RlcywgdXBkYXRlTm9kZUludGVybmFsc10pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgc2V0UmVhZG9ubHkocmVhZG9ubHkpO1xuICB9LCBbcmVhZG9ubHksIHNldFJlYWRvbmx5XSk7XG5cbiAgLy8gTm90aWZ5IHBhcmVudCBvZiBtZWFuaW5nZnVsIGRhdGEgY2hhbmdlcyB2aWEgdmVyc2lvbiBjb3VudGVyLlxuICBjb25zdCBvbkNoYW5nZVJlZiA9IHVzZVJlZihvbkNoYW5nZSk7XG4gIG9uQ2hhbmdlUmVmLmN1cnJlbnQgPSBvbkNoYW5nZTtcbiAgY29uc3QgcHJldlZlcnNpb25SZWYgPSB1c2VSZWYoY2hhbmdlVmVyc2lvbik7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoY2hhbmdlVmVyc2lvbiA9PT0gcHJldlZlcnNpb25SZWYuY3VycmVudCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHByZXZWZXJzaW9uUmVmLmN1cnJlbnQgPSBjaGFuZ2VWZXJzaW9uO1xuICAgIG9uQ2hhbmdlUmVmLmN1cnJlbnQ/Lih0b0RlZmluaXRpb24oKSk7XG4gIH0sIFtjaGFuZ2VWZXJzaW9uLCB0b0RlZmluaXRpb25dKTtcblxuICBjb25zdCBvbk5vZGVDbGljazogTm9kZU1vdXNlSGFuZGxlciA9IHVzZUNhbGxiYWNrKFxuICAgIChfZXZlbnQsIG5vZGUpID0+IHtcbiAgICAgIHNlbGVjdE5vZGUobm9kZS5pZCk7XG4gICAgfSxcbiAgICBbc2VsZWN0Tm9kZV1cbiAgKTtcblxuICBjb25zdCBvblBhbmVDbGljayA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBzZWxlY3ROb2RlKG51bGwpO1xuICB9LCBbc2VsZWN0Tm9kZV0pO1xuXG4gIGNvbnN0IG9uRWRnZU1vdXNlRW50ZXI6IEVkZ2VNb3VzZUhhbmRsZXIgPSB1c2VDYWxsYmFjayhcbiAgICAoX2V2ZW50LCBlZGdlKSA9PiB7XG4gICAgICBzZXRIb3ZlcmVkRWRnZUlkKGVkZ2UuaWQpO1xuICAgIH0sXG4gICAgW3NldEhvdmVyZWRFZGdlSWRdXG4gICk7XG5cbiAgY29uc3Qgb25FZGdlTW91c2VMZWF2ZTogRWRnZU1vdXNlSGFuZGxlciA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBzZXRIb3ZlcmVkRWRnZUlkKG51bGwpO1xuICB9LCBbc2V0SG92ZXJlZEVkZ2VJZF0pO1xuXG4gIHJldHVybiAoXG4gICAgPGRpdiBjbGFzc05hbWU9e2NsYXNzTmFtZX0gY3NzPXtbZWRpdG9yVGhlbWVTdHlsZSwgZWRpdG9yTGF5b3V0U3R5bGVdfSBzdHlsZT17c3R5bGV9PlxuICAgICAgPGRpdiBjc3M9e2NhbnZhc1N0eWxlfT5cbiAgICAgICAgPFJlYWN0Rmxvd1xuICAgICAgICAgIGZpdFZpZXdcbiAgICAgICAgICBwYW5PblNjcm9sbFxuICAgICAgICAgIGNvbm5lY3Rpb25SYWRpdXM9ezMwfVxuICAgICAgICAgIGRlZmF1bHRFZGdlT3B0aW9ucz17REVGQVVMVF9FREdFX09QVElPTlN9XG4gICAgICAgICAgZWRnZXM9e2VkZ2VzfVxuICAgICAgICAgIGVkZ2VUeXBlcz17ZWRnZVR5cGVzfVxuICAgICAgICAgIGVsZW1lbnRzU2VsZWN0YWJsZT17IXJlYWRvbmx5fVxuICAgICAgICAgIGlzVmFsaWRDb25uZWN0aW9uPXtpc1ZhbGlkQ29ubmVjdGlvbn1cbiAgICAgICAgICBub2Rlcz17bm9kZXN9XG4gICAgICAgICAgbm9kZXNDb25uZWN0YWJsZT17IXJlYWRvbmx5fVxuICAgICAgICAgIG5vZGVzRHJhZ2dhYmxlPXshcmVhZG9ubHl9XG4gICAgICAgICAgbm9kZVR5cGVzPXtub2RlVHlwZXN9XG4gICAgICAgICAgcHJvT3B0aW9ucz17UFJPX09QVElPTlN9XG4gICAgICAgICAgb25Db25uZWN0PXtvbkNvbm5lY3R9XG4gICAgICAgICAgb25EcmFnT3Zlcj17b25EcmFnT3Zlcn1cbiAgICAgICAgICBvbkRyb3A9e29uRHJvcH1cbiAgICAgICAgICBvbkVkZ2VNb3VzZUVudGVyPXtvbkVkZ2VNb3VzZUVudGVyfVxuICAgICAgICAgIG9uRWRnZU1vdXNlTGVhdmU9e29uRWRnZU1vdXNlTGVhdmV9XG4gICAgICAgICAgb25FZGdlc0NoYW5nZT17b25FZGdlc0NoYW5nZX1cbiAgICAgICAgICBvbk5vZGVDbGljaz17b25Ob2RlQ2xpY2t9XG4gICAgICAgICAgb25Ob2Rlc0NoYW5nZT17b25Ob2Rlc0NoYW5nZX1cbiAgICAgICAgICBvblBhbmVDbGljaz17b25QYW5lQ2xpY2t9XG4gICAgICAgID5cbiAgICAgICAgICA8QmFja2dyb3VuZCBnYXA9ezE2fSBzaXplPXsxfSB2YXJpYW50PXtCYWNrZ3JvdW5kVmFyaWFudC5Eb3RzfSAvPlxuXG4gICAgICAgICAgPE1pbmlNYXBcbiAgICAgICAgICAgIHBhbm5hYmxlXG4gICAgICAgICAgICB6b29tYWJsZVxuICAgICAgICAgICAgbm9kZVN0cm9rZVdpZHRoPXszfVxuICAgICAgICAgICAgcG9zaXRpb249XCJib3R0b20tbGVmdFwiXG4gICAgICAgICAgICBzdHlsZT17TUlOSU1BUF9TVFlMRX1cbiAgICAgICAgICAvPlxuXG4gICAgICAgICAgPFpvb21Db250cm9sIC8+XG4gICAgICAgIDwvUmVhY3RGbG93PlxuXG4gICAgICAgIHshcmVhZG9ubHkgJiYgPEVkaXRvclRvb2xiYXIgLz59XG4gICAgICA8L2Rpdj5cblxuICAgICAgey8qIEZsb2F0aW5nIGNvbmZpZyBwYW5lbCDigJQgYWx3YXlzIHJlbmRlcmVkIGZvciBzbGlkZSBhbmltYXRpb24gKi99XG4gICAgICA8Q29uZmlnUGFuZWwgLz5cbiAgICA8L2Rpdj5cbiAgKTtcbn07XG5cbi8qKlxuICogQXBwcm92YWwgRmxvdyBFZGl0b3IgY29tcG9uZW50XG4gKi9cbmV4cG9ydCBjb25zdCBBcHByb3ZhbEZsb3dFZGl0b3I6IEZDPEFwcHJvdmFsRmxvd0VkaXRvclByb3BzPiA9ICh7XG4gIHZhbHVlLFxuICBvbkNoYW5nZSxcbiAgcmVhZG9ubHksXG4gIHBsdWdpbnMsXG4gIGNsYXNzTmFtZSxcbiAgc3R5bGVcbn0pID0+IHtcbiAgY29uc3QgW2luaXRpYWxEYXRhXSA9IHVzZVN0YXRlKCgpID0+IHZhbHVlID8gZnJvbUZsb3dEZWZpbml0aW9uKHZhbHVlKSA6IHsgbm9kZXM6IFtdLCBlZGdlczogW10gfSk7XG5cbiAgcmV0dXJuIChcbiAgICA8UmVhY3RGbG93UHJvdmlkZXI+XG4gICAgICA8R2xvYmFsIHN0eWxlcz17eHlmbG93R2xvYmFsQmFzZVN0eWxlfSAvPlxuXG4gICAgICA8RWRpdG9yUGx1Z2luc0NvbnRleHQgdmFsdWU9e3BsdWdpbnMgPz8gRU1QVFlfUExVR0lOU30+XG4gICAgICAgIDxFZGl0b3JTdG9yZVByb3ZpZGVyXG4gICAgICAgICAgaW5pdGlhbFN0YXRlPXt7XG4gICAgICAgICAgICByZWFkb25seTogcmVhZG9ubHkgPz8gZmFsc2UsXG4gICAgICAgICAgICBub2RlczogaW5pdGlhbERhdGEubm9kZXMsXG4gICAgICAgICAgICBlZGdlczogaW5pdGlhbERhdGEuZWRnZXNcbiAgICAgICAgICB9fVxuICAgICAgICA+XG4gICAgICAgICAgPEVkaXRvcklubmVyXG4gICAgICAgICAgICBjbGFzc05hbWU9e2NsYXNzTmFtZX1cbiAgICAgICAgICAgIHJlYWRvbmx5PXtyZWFkb25seX1cbiAgICAgICAgICAgIHN0eWxlPXtzdHlsZX1cbiAgICAgICAgICAgIG9uQ2hhbmdlPXtvbkNoYW5nZX1cbiAgICAgICAgICAvPlxuICAgICAgICA8L0VkaXRvclN0b3JlUHJvdmlkZXI+XG4gICAgICA8L0VkaXRvclBsdWdpbnNDb250ZXh0PlxuICAgIDwvUmVhY3RGbG93UHJvdmlkZXI+XG4gICk7XG59O1xuIl19 */"
60
60
  ],
61
61
  style: o,
62
62
  children: [/* @__PURE__ */ D("div", {
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/approval-flow-editor v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
1
+ /*! @vef-framework-react/approval-flow-editor v2.2.2 made by Venus | 2026-05-18T12:44:01.943Z */
2
2
  import { useEditorPlugins as e } from "../../plugins/context.js";
3
3
  import { CheckboxList as t, ConfigSection as n, FormField as r } from "./shared.js";
4
4
  import { AssigneeList as i } from "./assignee-list.js";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/approval-flow-editor v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
1
+ /*! @vef-framework-react/approval-flow-editor v2.2.2 made by Venus | 2026-05-18T12:44:01.943Z */
2
2
  import { useEditorPlugins as e } from "../../plugins/context.js";
3
3
  import { fullWidthStyle as t } from "../../styles/theme.js";
4
4
  import { FormField as n } from "./shared.js";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/approval-flow-editor v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
1
+ /*! @vef-framework-react/approval-flow-editor v2.2.2 made by Venus | 2026-05-18T12:44:01.943Z */
2
2
  import { ConfigSection as e, FormField as t } from "./shared.js";
3
3
  import { useEditorStore as n } from "../../store/editor.js";
4
4
  import { Input as r } from "@vef-framework-react/components";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/approval-flow-editor v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
1
+ /*! @vef-framework-react/approval-flow-editor v2.2.2 made by Venus | 2026-05-18T12:44:01.943Z */
2
2
  import { useEditorPlugins as e } from "../../plugins/context.js";
3
3
  import { fullWidthStyle as t } from "../../styles/theme.js";
4
4
  import { FormField as n } from "./shared.js";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/approval-flow-editor v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
1
+ /*! @vef-framework-react/approval-flow-editor v2.2.2 made by Venus | 2026-05-18T12:44:01.943Z */
2
2
  import { CheckboxList as e, ConfigSection as t, FormField as n } from "./shared.js";
3
3
  import { CcList as r } from "./cc-list.js";
4
4
  import { FieldPermissionTable as i } from "./field-permission-table.js";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/approval-flow-editor v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
1
+ /*! @vef-framework-react/approval-flow-editor v2.2.2 made by Venus | 2026-05-18T12:44:01.943Z */
2
2
  import { useEditorPlugins as e } from "../../plugins/context.js";
3
3
  import { ConfigSection as t, FormField as n } from "./shared.js";
4
4
  import { ConditionEditorModal as r } from "./condition-editor-modal.js";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/approval-flow-editor v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
1
+ /*! @vef-framework-react/approval-flow-editor v2.2.2 made by Venus | 2026-05-18T12:44:01.943Z */
2
2
  import { ConditionRuleItem as e } from "./condition-rule-item.js";
3
3
  import { css as t } from "@emotion/react";
4
4
  import { Fragment as n, useEffect as r, useState as i } from "react";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/approval-flow-editor v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
1
+ /*! @vef-framework-react/approval-flow-editor v2.2.2 made by Venus | 2026-05-18T12:44:01.943Z */
2
2
  //#region src/components/config/condition-operators.ts
3
3
  var e = {
4
4
  eq: "等于",
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/approval-flow-editor v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
1
+ /*! @vef-framework-react/approval-flow-editor v2.2.2 made by Venus | 2026-05-18T12:44:01.943Z */
2
2
  import { MULTI_VALUE_OPERATORS as e, NO_VALUE_OPERATORS as t, OPERATOR_LABELS as n, getOperatorsForFieldKind as r } from "./condition-operators.js";
3
3
  import { css as i } from "@emotion/react";
4
4
  import { Button as a, DatePicker as o, Input as s, InputNumber as c, Select as l, globalCssVars as u } from "@vef-framework-react/components";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/approval-flow-editor v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
1
+ /*! @vef-framework-react/approval-flow-editor v2.2.2 made by Venus | 2026-05-18T12:44:01.943Z */
2
2
  import { useEditorPlugins as e } from "../../plugins/context.js";
3
3
  import { css as t } from "@emotion/react";
4
4
  import { Radio as n, globalCssVars as r } from "@vef-framework-react/components";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/approval-flow-editor v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
1
+ /*! @vef-framework-react/approval-flow-editor v2.2.2 made by Venus | 2026-05-18T12:44:01.943Z */
2
2
  import { useEditorPlugins as e } from "../../plugins/context.js";
3
3
  import { CheckboxList as t, ConfigSection as n, FormField as r } from "./shared.js";
4
4
  import { AssigneeList as i } from "./assignee-list.js";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/approval-flow-editor v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
1
+ /*! @vef-framework-react/approval-flow-editor v2.2.2 made by Venus | 2026-05-18T12:44:01.943Z */
2
2
  import { configSectionContentStyle as e, configSectionStyle as t, formFieldLabelStyle as n, formFieldStyle as r } from "../../styles/theme.js";
3
3
  import { ChevronRightIcon as i } from "../../icons.js";
4
4
  import { css as a } from "@emotion/react";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/approval-flow-editor v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
1
+ /*! @vef-framework-react/approval-flow-editor v2.2.2 made by Venus | 2026-05-18T12:44:01.943Z */
2
2
  import { configPanelBodyStyle as e, configPanelCloseStyle as t, configPanelHeaderStyle as n, configPanelTitleStyle as r, configPanelWrapperStyle as i } from "../styles/theme.js";
3
3
  import { XIcon as a } from "../icons.js";
4
4
  import { BasicNodeConfig as o } from "./config/basic-node-config.js";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/approval-flow-editor v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
1
+ /*! @vef-framework-react/approval-flow-editor v2.2.2 made by Venus | 2026-05-18T12:44:01.943Z */
2
2
  import { useEditorStore as e } from "../../store/editor.js";
3
3
  import { css as t } from "@emotion/react";
4
4
  import { BaseEdge as n, EdgeLabelRenderer as r, getBezierPath as i } from "@xyflow/react";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/approval-flow-editor v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
1
+ /*! @vef-framework-react/approval-flow-editor v2.2.2 made by Venus | 2026-05-18T12:44:01.943Z */
2
2
  import { ApprovalEdge as e } from "./approval-edge.js";
3
3
  //#region src/components/edges/index.ts
4
4
  var t = { approval: e };
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/approval-flow-editor v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
1
+ /*! @vef-framework-react/approval-flow-editor v2.2.2 made by Venus | 2026-05-18T12:44:01.943Z */
2
2
  import { toolbarContainerStyle as e } from "../styles/theme.js";
3
3
  import { getDraggableSpecifications as t } from "../specifications/index.js";
4
4
  import { handleDragStart as n } from "../hooks/use-drag-drop.js";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/approval-flow-editor v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
1
+ /*! @vef-framework-react/approval-flow-editor v2.2.2 made by Venus | 2026-05-18T12:44:01.943Z */
2
2
  import { BaseNode as e } from "./base-node.js";
3
3
  import { Handle as t, Position as n } from "@xyflow/react";
4
4
  import { jsx as r, jsxs as i } from "@emotion/react/jsx-runtime";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/approval-flow-editor v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
1
+ /*! @vef-framework-react/approval-flow-editor v2.2.2 made by Venus | 2026-05-18T12:44:01.943Z */
2
2
  import { getSpecification as e } from "../../specifications/index.js";
3
3
  import { NodeShell as t } from "./node-shell.js";
4
4
  import { css as n } from "@emotion/react";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/approval-flow-editor v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
1
+ /*! @vef-framework-react/approval-flow-editor v2.2.2 made by Venus | 2026-05-18T12:44:01.943Z */
2
2
  import { BaseNode as e } from "./base-node.js";
3
3
  import { Handle as t, Position as n } from "@xyflow/react";
4
4
  import { jsx as r, jsxs as i } from "@emotion/react/jsx-runtime";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/approval-flow-editor v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
1
+ /*! @vef-framework-react/approval-flow-editor v2.2.2 made by Venus | 2026-05-18T12:44:01.943Z */
2
2
  import { BaseNode as e } from "./base-node.js";
3
3
  import { css as t } from "@emotion/react";
4
4
  import { Handle as n, Position as r, useUpdateNodeInternals as i } from "@xyflow/react";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/approval-flow-editor v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
1
+ /*! @vef-framework-react/approval-flow-editor v2.2.2 made by Venus | 2026-05-18T12:44:01.943Z */
2
2
  import { BaseNode as e } from "./base-node.js";
3
3
  import { Handle as t, Position as n } from "@xyflow/react";
4
4
  import { jsx as r } from "@emotion/react/jsx-runtime";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/approval-flow-editor v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
1
+ /*! @vef-framework-react/approval-flow-editor v2.2.2 made by Venus | 2026-05-18T12:44:01.943Z */
2
2
  import { BaseNode as e } from "./base-node.js";
3
3
  import { Handle as t, Position as n } from "@xyflow/react";
4
4
  import { jsx as r, jsxs as i } from "@emotion/react/jsx-runtime";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/approval-flow-editor v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
1
+ /*! @vef-framework-react/approval-flow-editor v2.2.2 made by Venus | 2026-05-18T12:44:01.943Z */
2
2
  import { ApprovalNode as e } from "./approval-node.js";
3
3
  import { CcNode as t } from "./cc-node.js";
4
4
  import { ConditionNode as n } from "./condition-node.js";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/approval-flow-editor v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
1
+ /*! @vef-framework-react/approval-flow-editor v2.2.2 made by Venus | 2026-05-18T12:44:01.943Z */
2
2
  import { nodeContainerStyle as e } from "../../styles/theme.js";
3
3
  import { getSpecification as t } from "../../specifications/index.js";
4
4
  import { jsx as n } from "@emotion/react/jsx-runtime";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/approval-flow-editor v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
1
+ /*! @vef-framework-react/approval-flow-editor v2.2.2 made by Venus | 2026-05-18T12:44:01.943Z */
2
2
  import { BaseNode as e } from "./base-node.js";
3
3
  import { Handle as t, Position as n } from "@xyflow/react";
4
4
  import { jsx as r } from "@emotion/react/jsx-runtime";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/approval-flow-editor v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
1
+ /*! @vef-framework-react/approval-flow-editor v2.2.2 made by Venus | 2026-05-18T12:44:01.943Z */
2
2
  import { css as e, keyframes as t } from "@emotion/react";
3
3
  import { Panel as n, useReactFlow as r, useViewport as i } from "@xyflow/react";
4
4
  import { useEffect as a, useRef as o, useState as s } from "react";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/approval-flow-editor v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
1
+ /*! @vef-framework-react/approval-flow-editor v2.2.2 made by Venus | 2026-05-18T12:44:01.943Z */
2
2
  import { globalCssVars as e } from "@vef-framework-react/components";
3
3
  //#region src/constants.ts
4
4
  var t = [
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/approval-flow-editor v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
1
+ /*! @vef-framework-react/approval-flow-editor v2.2.2 made by Venus | 2026-05-18T12:44:01.943Z */
2
2
  import { NODE_DIMENSIONS as e } from "../constants.js";
3
3
  import { useEditorStoreApi as t } from "../store/editor.js";
4
4
  import { useReactFlow as n } from "@xyflow/react";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/approval-flow-editor v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
1
+ /*! @vef-framework-react/approval-flow-editor v2.2.2 made by Venus | 2026-05-18T12:44:01.943Z */
2
2
  import { validateConnection as e } from "../shared/connection-rules.js";
3
3
  import { useEditorStoreApi as t } from "../store/editor.js";
4
4
  import { useCallback as n } from "react";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/approval-flow-editor v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
1
+ /*! @vef-framework-react/approval-flow-editor v2.2.2 made by Venus | 2026-05-18T12:44:01.943Z */
2
2
  import { useEditorStore as e } from "../store/editor.js";
3
3
  import { useReactFlow as t } from "@xyflow/react";
4
4
  import { useCallback as n } from "react";
package/dist/es/icons.js CHANGED
@@ -1,3 +1,3 @@
1
- /*! @vef-framework-react/approval-flow-editor v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
1
+ /*! @vef-framework-react/approval-flow-editor v2.2.2 made by Venus | 2026-05-18T12:44:01.943Z */
2
2
  import { BadgeCheckIcon as e, ChevronRightIcon as t, CirclePlayIcon as n, CircleStopIcon as r, ClipboardPenIcon as i, GitForkIcon as a, MailIcon as o, XIcon as s } from "lucide-react";
3
3
  export { e as ApprovalIcon, o as CcIcon, t as ChevronRightIcon, a as ConditionIcon, r as EndIcon, i as HandleIcon, n as StartIcon, s as XIcon };
package/dist/es/index.js CHANGED
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/approval-flow-editor v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
1
+ /*! @vef-framework-react/approval-flow-editor v2.2.2 made by Venus | 2026-05-18T12:44:01.943Z */
2
2
  import { fromFlowDefinition as e, toFlowDefinition as t } from "./shared/serialization.js";
3
3
  import { DEFAULT_NODE_DATA as n, NODE_KINDS as r, NODE_KIND_COLORS as i, NODE_KIND_LABELS as a } from "./constants.js";
4
4
  import { ApprovalIcon as o, CcIcon as s, ConditionIcon as c, EndIcon as l, HandleIcon as u, StartIcon as d } from "./icons.js";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/approval-flow-editor v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
1
+ /*! @vef-framework-react/approval-flow-editor v2.2.2 made by Venus | 2026-05-18T12:44:01.943Z */
2
2
  import { createContext as e, use as t } from "react";
3
3
  //#region src/plugins/context.ts
4
4
  var n = e({});
@@ -1,2 +1,2 @@
1
- /*! @vef-framework-react/approval-flow-editor v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
1
+ /*! @vef-framework-react/approval-flow-editor v2.2.2 made by Venus | 2026-05-18T12:44:01.943Z */
2
2
  import "./context.js";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/approval-flow-editor v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
1
+ /*! @vef-framework-react/approval-flow-editor v2.2.2 made by Venus | 2026-05-18T12:44:01.943Z */
2
2
  //#region src/shared/connection-rules.ts
3
3
  function e(e, t, n) {
4
4
  let r = /* @__PURE__ */ new Set(), i = [t];
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/approval-flow-editor v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
1
+ /*! @vef-framework-react/approval-flow-editor v2.2.2 made by Venus | 2026-05-18T12:44:01.943Z */
2
2
  //#region src/shared/serialization.ts
3
3
  function e(e, t) {
4
4
  return {
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/approval-flow-editor v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
1
+ /*! @vef-framework-react/approval-flow-editor v2.2.2 made by Venus | 2026-05-18T12:44:01.943Z */
2
2
  import { NODE_KIND_COLORS as e, NODE_KIND_LABELS as t } from "../constants.js";
3
3
  import { ApprovalIcon as n } from "../icons.js";
4
4
  import { ApprovalNodeConfig as r } from "../components/config/approval-node-config.js";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/approval-flow-editor v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
1
+ /*! @vef-framework-react/approval-flow-editor v2.2.2 made by Venus | 2026-05-18T12:44:01.943Z */
2
2
  import { NODE_KIND_COLORS as e, NODE_KIND_LABELS as t } from "../constants.js";
3
3
  import { CcIcon as n } from "../icons.js";
4
4
  import { CcNodeConfig as r } from "../components/config/cc-node-config.js";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/approval-flow-editor v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
1
+ /*! @vef-framework-react/approval-flow-editor v2.2.2 made by Venus | 2026-05-18T12:44:01.943Z */
2
2
  import { NODE_KIND_COLORS as e, NODE_KIND_LABELS as t } from "../constants.js";
3
3
  import { ConditionIcon as n } from "../icons.js";
4
4
  import { ConditionConfig as r } from "../components/config/condition-config.js";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/approval-flow-editor v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
1
+ /*! @vef-framework-react/approval-flow-editor v2.2.2 made by Venus | 2026-05-18T12:44:01.943Z */
2
2
  import { NODE_KIND_COLORS as e, NODE_KIND_LABELS as t } from "../constants.js";
3
3
  import { EndIcon as n } from "../icons.js";
4
4
  import { BasicNodeConfig as r } from "../components/config/basic-node-config.js";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/approval-flow-editor v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
1
+ /*! @vef-framework-react/approval-flow-editor v2.2.2 made by Venus | 2026-05-18T12:44:01.943Z */
2
2
  import { NODE_KIND_COLORS as e, NODE_KIND_LABELS as t } from "../constants.js";
3
3
  import { HandleIcon as n } from "../icons.js";
4
4
  import { HandleNodeConfig as r } from "../components/config/handle-node-config.js";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/approval-flow-editor v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
1
+ /*! @vef-framework-react/approval-flow-editor v2.2.2 made by Venus | 2026-05-18T12:44:01.943Z */
2
2
  import { approvalSpecification as e } from "./approval.js";
3
3
  import { ccSpecification as t } from "./cc.js";
4
4
  import { conditionSpecification as n } from "./condition.js";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/approval-flow-editor v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
1
+ /*! @vef-framework-react/approval-flow-editor v2.2.2 made by Venus | 2026-05-18T12:44:01.943Z */
2
2
  import { NODE_KIND_COLORS as e, NODE_KIND_LABELS as t } from "../constants.js";
3
3
  import { StartIcon as n } from "../icons.js";
4
4
  import { BasicNodeConfig as r } from "../components/config/basic-node-config.js";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/approval-flow-editor v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
1
+ /*! @vef-framework-react/approval-flow-editor v2.2.2 made by Venus | 2026-05-18T12:44:01.943Z */
2
2
  import { createFlowSlice as e } from "./flow-slice.js";
3
3
  import { createGraphSlice as t } from "./graph-slice.js";
4
4
  import { createInteractionSlice as n } from "./interaction-slice.js";
@@ -1,9 +1,9 @@
1
- /*! @vef-framework-react/approval-flow-editor v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
1
+ /*! @vef-framework-react/approval-flow-editor v2.2.2 made by Venus | 2026-05-18T12:44:01.943Z */
2
2
  import { fromFlowDefinition as e, toFlowDefinition as t } from "../shared/serialization.js";
3
3
  //#region src/store/flow-slice.ts
4
4
  var n = (n, r) => ({
5
5
  isDirty: !1,
6
- _changeVersion: 0,
6
+ changeVersion: 0,
7
7
  loadDefinition: (t) => {
8
8
  let { nodes: r, edges: i } = e(t);
9
9
  n((e) => {
@@ -16,7 +16,7 @@ var n = (n, r) => ({
16
16
  },
17
17
  reset: () => {
18
18
  n((e) => {
19
- e.nodes = [], e.edges = [], e.selectedNodeId = null, e.isDirty = !1, e._changeVersion = 0;
19
+ e.nodes = [], e.edges = [], e.selectedNodeId = null, e.isDirty = !1, e.changeVersion = 0;
20
20
  });
21
21
  }
22
22
  });
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/approval-flow-editor v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
1
+ /*! @vef-framework-react/approval-flow-editor v2.2.2 made by Venus | 2026-05-18T12:44:01.943Z */
2
2
  import { validateConnection as e } from "../shared/connection-rules.js";
3
3
  import { DEFAULT_NODE_DATA as t } from "../constants.js";
4
4
  import { getSpecification as n } from "../specifications/index.js";
@@ -24,7 +24,7 @@ var s = (s, c) => {
24
24
  if (i.length === 0) return;
25
25
  let o = i.some((e) => !(e.type === "dimensions" || e.type === "select" || e.type === "position" && e.dragging));
26
26
  s((e) => {
27
- e.nodes = a(i, e.nodes), e.selectedNodeId && !e.nodes.some((t) => t.id === e.selectedNodeId) && (e.selectedNodeId = null), o && (e.isDirty = !0, e._changeVersion++);
27
+ e.nodes = a(i, e.nodes), e.selectedNodeId && !e.nodes.some((t) => t.id === e.selectedNodeId) && (e.selectedNodeId = null), o && (e.isDirty = !0, e.changeVersion++);
28
28
  });
29
29
  },
30
30
  onEdgesChange: (e) => {
@@ -50,13 +50,13 @@ var s = (s, c) => {
50
50
  if (l = /* @__PURE__ */ new Set(), u.length === 0) return;
51
51
  let d = u.some((e) => e.type !== "select");
52
52
  s((e) => {
53
- e.edges = i(u, e.edges), d && (e.isDirty = !0, e._changeVersion++);
53
+ e.edges = i(u, e.edges), d && (e.isDirty = !0, e.changeVersion++);
54
54
  });
55
55
  },
56
56
  onConnect: (t) => {
57
57
  let { edges: n, readonly: i } = c();
58
58
  i || e(t, n) && s((e) => {
59
- e.edges = r(t, e.edges), e.isDirty = !0, e._changeVersion++;
59
+ e.edges = r(t, e.edges), e.isDirty = !0, e.changeVersion++;
60
60
  });
61
61
  },
62
62
  addNode: (e, r, i) => {
@@ -74,7 +74,7 @@ var s = (s, c) => {
74
74
  type: e,
75
75
  position: r,
76
76
  data: f
77
- }), t.isDirty = !0, t._changeVersion++;
77
+ }), t.isDirty = !0, t.changeVersion++;
78
78
  });
79
79
  },
80
80
  removeNode: (e) => {
@@ -82,21 +82,21 @@ var s = (s, c) => {
82
82
  if (t) return;
83
83
  let i = r.find((t) => t.id === e);
84
84
  !i?.type || n(i.type).deletable === !1 || s((t) => {
85
- t.nodes = t.nodes.filter((t) => t.id !== e), t.edges = t.edges.filter((t) => t.source !== e && t.target !== e), t.selectedNodeId === e && (t.selectedNodeId = null), t.isDirty = !0, t._changeVersion++;
85
+ t.nodes = t.nodes.filter((t) => t.id !== e), t.edges = t.edges.filter((t) => t.source !== e && t.target !== e), t.selectedNodeId === e && (t.selectedNodeId = null), t.isDirty = !0, t.changeVersion++;
86
86
  });
87
87
  },
88
88
  removeEdge: (e) => {
89
89
  let { readonly: t } = c();
90
90
  t || s((t) => {
91
91
  let n = t.edges.length;
92
- t.edges = t.edges.filter((t) => t.id !== e), t.edges.length !== n && (t.isDirty = !0, t._changeVersion++);
92
+ t.edges = t.edges.filter((t) => t.id !== e), t.edges.length !== n && (t.isDirty = !0, t.changeVersion++);
93
93
  });
94
94
  },
95
95
  updateNodeData: (e, t) => {
96
96
  let { readonly: n } = c();
97
97
  n || s((n) => {
98
98
  let r = n.nodes.find((t) => t.id === e);
99
- r && (Object.assign(r.data, t), n.isDirty = !0, n._changeVersion++);
99
+ r && (Object.assign(r.data, t), n.isDirty = !0, n.changeVersion++);
100
100
  });
101
101
  },
102
102
  updateNodePositions: (e) => {
@@ -1,2 +1,2 @@
1
- /*! @vef-framework-react/approval-flow-editor v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
1
+ /*! @vef-framework-react/approval-flow-editor v2.2.2 made by Venus | 2026-05-18T12:44:01.943Z */
2
2
  import "./editor.js";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/approval-flow-editor v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
1
+ /*! @vef-framework-react/approval-flow-editor v2.2.2 made by Venus | 2026-05-18T12:44:01.943Z */
2
2
  //#region src/store/interaction-slice.ts
3
3
  var e = (e) => ({
4
4
  selectedNodeId: null,
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/approval-flow-editor v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
1
+ /*! @vef-framework-react/approval-flow-editor v2.2.2 made by Venus | 2026-05-18T12:44:01.943Z */
2
2
  import { css as e } from "@emotion/react";
3
3
  import t from "@xyflow/react/dist/base.css?raw";
4
4
  //#region src/styles/base.ts
@@ -1,3 +1,3 @@
1
- /*! @vef-framework-react/approval-flow-editor v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
1
+ /*! @vef-framework-react/approval-flow-editor v2.2.2 made by Venus | 2026-05-18T12:44:01.943Z */
2
2
  import "./base.js";
3
3
  import "./theme.js";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/approval-flow-editor v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
1
+ /*! @vef-framework-react/approval-flow-editor v2.2.2 made by Venus | 2026-05-18T12:44:01.943Z */
2
2
  import { css as e } from "@emotion/react";
3
3
  import { globalCssVars as t } from "@vef-framework-react/components";
4
4
  //#region src/styles/theme.ts
@@ -38,7 +38,7 @@ export interface FlowSlice {
38
38
  /**
39
39
  * @internal Counter incremented on meaningful data changes, used for onChange scheduling
40
40
  */
41
- _changeVersion: number;
41
+ changeVersion: number;
42
42
  loadDefinition: (definition: FlowDefinition) => void;
43
43
  toDefinition: () => FlowDefinition;
44
44
  reset: () => void;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@vef-framework-react/approval-flow-editor",
3
3
  "type": "module",
4
- "version": "2.2.0",
4
+ "version": "2.2.2",
5
5
  "private": false,
6
6
  "description": "Approval flow editor for VEF framework",
7
7
  "author": {
@@ -54,9 +54,9 @@
54
54
  "@xyflow/react": "^12.10.2",
55
55
  "elkjs": "^0.11.1",
56
56
  "lucide-react": "^1.16.0",
57
- "@vef-framework-react/shared": "2.2.0",
58
- "@vef-framework-react/core": "2.2.0",
59
- "@vef-framework-react/components": "2.2.0"
57
+ "@vef-framework-react/components": "2.2.2",
58
+ "@vef-framework-react/core": "2.2.2",
59
+ "@vef-framework-react/shared": "2.2.2"
60
60
  },
61
61
  "devDependencies": {
62
62
  "react": "^19.2.6"