@robot-admin/naive-ui-components 0.14.2 → 0.15.0

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 (255) hide show
  1. package/CHANGELOG.md +30 -0
  2. package/README.md +130 -721
  3. package/README_EN.md +137 -658
  4. package/dist/C_ActionBar.css +57 -58
  5. package/dist/C_ActionBar2.cjs +1 -1
  6. package/dist/C_ActionBar2.js +1 -1
  7. package/dist/C_AntV.css +215 -222
  8. package/dist/C_AntV2.cjs +2 -2
  9. package/dist/C_AntV2.js +2 -2
  10. package/dist/C_AudioPlayer.css +11 -12
  11. package/dist/C_AvatarGroup.css +5 -6
  12. package/dist/C_Barcode.css +1 -1
  13. package/dist/C_Breadcrumb.css +15 -17
  14. package/dist/C_Breadcrumb2.cjs +1 -1
  15. package/dist/C_Breadcrumb2.js +1 -1
  16. package/dist/C_Captcha.css +45 -47
  17. package/dist/C_Captcha2.cjs +1 -1
  18. package/dist/C_Captcha2.js +1 -1
  19. package/dist/C_Cascade.css +2 -2
  20. package/dist/C_Chat.css +8 -8
  21. package/dist/C_City.css +6 -7
  22. package/dist/C_Code.css +14 -15
  23. package/dist/C_CollapsePanel.css +12 -13
  24. package/dist/C_ContextMenu.css +31 -31
  25. package/dist/C_Cron.css +272 -275
  26. package/dist/C_Date.css +1 -1
  27. package/dist/C_Draggable.css +10 -11
  28. package/dist/C_Editor.css +2 -2
  29. package/dist/C_FilePreview.css +193 -193
  30. package/dist/C_Form.base.css +607 -601
  31. package/dist/C_Form.cjs +1 -1
  32. package/dist/C_Form.css +609 -603
  33. package/dist/C_Form.d.cts +2 -2
  34. package/dist/C_Form.d.ts +2 -2
  35. package/dist/C_Form.js +1 -1
  36. package/dist/C_FormModal.cjs +1 -1
  37. package/dist/C_FormModal.css +14 -20
  38. package/dist/C_FormModal.js +1 -1
  39. package/dist/C_FormModal2.cjs +1 -1
  40. package/dist/C_FormModal2.js +1 -1
  41. package/dist/C_FormSearch.css +53 -55
  42. package/dist/C_FormSearch2.cjs +1 -1
  43. package/dist/C_FormSearch2.js +1 -1
  44. package/dist/C_FormulaEditor.css +314 -315
  45. package/dist/C_FullCalendar.css +14 -16
  46. package/dist/C_FullCalendar2.cjs +1 -1
  47. package/dist/C_FullCalendar2.js +1 -1
  48. package/dist/C_GlobalSearch.css +2 -2
  49. package/dist/C_Guide.css +14 -15
  50. package/dist/C_Icon.css +7 -8
  51. package/dist/C_ImageCropper.css +69 -69
  52. package/dist/C_Language.css +8 -8
  53. package/dist/C_Loading.css +20 -22
  54. package/dist/C_Loading2.cjs +1 -1
  55. package/dist/C_Loading2.js +1 -1
  56. package/dist/C_Login.css +130 -135
  57. package/dist/C_Login2.cjs +1 -1
  58. package/dist/C_Login2.js +1 -1
  59. package/dist/C_Map.css +22 -23
  60. package/dist/C_Markdown.css +2 -2
  61. package/dist/C_Menu.css +2 -5
  62. package/dist/C_Menu2.cjs +1 -1
  63. package/dist/C_Menu2.js +1 -1
  64. package/dist/C_NotificationCenter.css +300 -301
  65. package/dist/C_OrgChart.css +3 -3
  66. package/dist/C_PageLoading.css +35 -39
  67. package/dist/C_QRCode.css +5 -6
  68. package/dist/C_Signature.css +5 -6
  69. package/dist/C_Skeleton.css +6 -7
  70. package/dist/C_SplitPane.css +2 -2
  71. package/dist/C_Steps.css +2 -2
  72. package/dist/C_Table.base.css +1097 -870
  73. package/dist/C_Table.cjs +1 -1
  74. package/dist/C_Table.css +1101 -874
  75. package/dist/C_Table.d.cts +1 -1
  76. package/dist/C_Table.d.ts +1 -1
  77. package/dist/C_Table.js +1 -1
  78. package/dist/C_Tabs.css +2 -2
  79. package/dist/C_TagsView.css +72 -76
  80. package/dist/C_TagsView2.cjs +1 -1
  81. package/dist/C_TagsView2.js +1 -1
  82. package/dist/C_Theme.css +7 -8
  83. package/dist/C_Time.css +1 -1
  84. package/dist/C_Timeline.css +8 -8
  85. package/dist/C_Transfer.css +10 -11
  86. package/dist/C_Tree.css +16 -17
  87. package/dist/C_Upload.css +147 -148
  88. package/dist/C_VideoPlayer.css +280 -281
  89. package/dist/C_VtableGantt.css +2 -2
  90. package/dist/C_WaterFall.css +17 -18
  91. package/dist/C_WorkFlow.css +453 -457
  92. package/dist/C_WorkFlow2.cjs +1 -1
  93. package/dist/C_WorkFlow2.js +1 -1
  94. package/dist/Card.cjs +1 -0
  95. package/dist/Card.js +1 -0
  96. package/dist/Custom.cjs +1 -0
  97. package/dist/Custom.js +1 -0
  98. package/dist/Dynamic.cjs +1 -0
  99. package/dist/Dynamic.js +1 -0
  100. package/dist/Steps.cjs +1 -0
  101. package/dist/Steps.js +1 -0
  102. package/dist/Tabs.cjs +1 -0
  103. package/dist/Tabs.js +1 -0
  104. package/dist/cascader.cjs +1 -0
  105. package/dist/cascader.js +1 -0
  106. package/dist/color-picker.cjs +1 -0
  107. package/dist/color-picker.js +1 -0
  108. package/dist/constants.d.cts +1 -1
  109. package/dist/constants.d.ts +1 -1
  110. package/dist/constants3.d.cts +5 -5
  111. package/dist/constants3.d.ts +5 -5
  112. package/dist/constants4.d.cts +4 -4
  113. package/dist/constants4.d.ts +4 -4
  114. package/dist/constants5.d.cts +2 -2
  115. package/dist/constants5.d.ts +2 -2
  116. package/dist/context.cjs +1 -0
  117. package/dist/context.js +1 -0
  118. package/dist/contracts.d.cts +24 -0
  119. package/dist/contracts.d.ts +24 -0
  120. package/dist/createPageLoading.cjs +1 -1
  121. package/dist/createPageLoading.js +1 -1
  122. package/dist/data.cjs +1 -1
  123. package/dist/data.d.cts +9 -9
  124. package/dist/data.d.ts +9 -9
  125. package/dist/data.js +1 -1
  126. package/dist/date-picker.cjs +1 -0
  127. package/dist/date-picker.js +1 -0
  128. package/dist/feedback.cjs +1 -0
  129. package/dist/feedback.js +1 -0
  130. package/dist/helpers.cjs +1 -1
  131. package/dist/helpers.js +1 -1
  132. package/dist/index.cjs +1 -1
  133. package/dist/index.d.cts +6 -4
  134. package/dist/index.d.ts +6 -4
  135. package/dist/index.js +1 -1
  136. package/dist/index.vue.d.cts +4 -4
  137. package/dist/index.vue.d.ts +4 -4
  138. package/dist/index10.vue.d.cts +3 -3
  139. package/dist/index11.vue.d.ts +2 -2
  140. package/dist/index12.vue.d.cts +2 -2
  141. package/dist/index12.vue.d.ts +1 -1
  142. package/dist/index13.vue.d.cts +1 -1
  143. package/dist/index13.vue.d.ts +3 -3
  144. package/dist/index14.vue.d.cts +3 -3
  145. package/dist/index14.vue.d.ts +7 -7
  146. package/dist/index15.vue.d.cts +7 -7
  147. package/dist/index16.vue.d.ts +1 -1
  148. package/dist/index17.vue.d.cts +1 -1
  149. package/dist/index17.vue.d.ts +1 -1
  150. package/dist/index18.vue.d.cts +1 -1
  151. package/dist/index18.vue.d.ts +1 -1
  152. package/dist/index19.vue.d.cts +1 -1
  153. package/dist/index19.vue.d.ts +2 -9
  154. package/dist/index2.vue.d.cts +2 -2
  155. package/dist/index2.vue.d.ts +2 -2
  156. package/dist/index20.vue.d.cts +1 -1
  157. package/dist/index20.vue.d.ts +1 -1
  158. package/dist/index21.vue.d.cts +1 -1
  159. package/dist/index21.vue.d.ts +1 -1
  160. package/dist/index22.vue.d.cts +2 -2
  161. package/dist/index22.vue.d.ts +2 -2
  162. package/dist/index23.vue.d.cts +1 -1
  163. package/dist/index23.vue.d.ts +1 -1
  164. package/dist/index25.vue.d.cts +4 -4
  165. package/dist/index25.vue.d.ts +4 -4
  166. package/dist/index26.vue.d.cts +1 -1
  167. package/dist/index26.vue.d.ts +1 -1
  168. package/dist/index27.vue.d.cts +4 -4
  169. package/dist/index27.vue.d.ts +4 -4
  170. package/dist/index28.vue.d.cts +1 -1
  171. package/dist/index28.vue.d.ts +1 -1
  172. package/dist/index3.vue.d.cts +4 -4
  173. package/dist/index3.vue.d.ts +4 -4
  174. package/dist/index4.vue.d.cts +2 -9
  175. package/dist/index6.vue.d.ts +3 -3
  176. package/dist/index7.vue.d.cts +3 -3
  177. package/dist/index8.vue.d.ts +2 -2
  178. package/dist/index9.vue.d.cts +2 -2
  179. package/dist/index9.vue.d.ts +3 -3
  180. package/dist/mapUtils.d.cts +2 -2
  181. package/dist/mapUtils.d.ts +2 -2
  182. package/dist/presets.d.cts +8 -2
  183. package/dist/presets.d.ts +8 -2
  184. package/dist/rate.cjs +1 -0
  185. package/dist/rate.js +1 -0
  186. package/dist/slider.cjs +1 -0
  187. package/dist/slider.js +1 -0
  188. package/dist/style.css +10898 -10915
  189. package/dist/time-picker.cjs +1 -0
  190. package/dist/time-picker.js +1 -0
  191. package/dist/upload.cjs +1 -0
  192. package/dist/upload.js +1 -0
  193. package/dist/useActionTask.cjs +1 -0
  194. package/dist/useActionTask.js +1 -0
  195. package/dist/useCalendarEvents.d.cts +1 -1
  196. package/dist/useCalendarEvents.d.ts +1 -1
  197. package/dist/useCollapsePanel.d.cts +4 -4
  198. package/dist/useCollapsePanel.d.ts +4 -4
  199. package/dist/useComponentLocale.cjs +1 -0
  200. package/dist/useComponentLocale.js +1 -0
  201. package/dist/useCropperCore.d.cts +6 -6
  202. package/dist/useCropperCore.d.ts +6 -6
  203. package/dist/useDraggableLayout.d.cts +1 -1
  204. package/dist/useDraggableLayout.d.ts +1 -1
  205. package/dist/useDynamicFormState.cjs +1 -0
  206. package/dist/useDynamicFormState.d.cts +64 -40
  207. package/dist/useDynamicFormState.d.ts +64 -40
  208. package/dist/useDynamicFormState.js +1 -0
  209. package/dist/useEdgeInteraction.d.cts +3 -3
  210. package/dist/useEdgeInteraction.d.ts +3 -3
  211. package/dist/useGlobalSearch.d.cts +1 -1
  212. package/dist/useGlobalSearch.d.ts +1 -1
  213. package/dist/useQRCode.d.cts +2 -2
  214. package/dist/useQRCode.d.ts +2 -2
  215. package/dist/useSearchState.d.cts +15 -725
  216. package/dist/useSearchState.d.ts +15 -834
  217. package/dist/useSignatureHistory.d.cts +4 -4
  218. package/dist/useSignatureHistory.d.ts +4 -4
  219. package/dist/useSplitResize.d.cts +3 -3
  220. package/dist/useSplitResize.d.ts +3 -3
  221. package/dist/useTableQuery.cjs +3 -3
  222. package/dist/useTableQuery.d.cts +73 -34
  223. package/dist/useTableQuery.d.ts +73 -34
  224. package/dist/useTableQuery.js +3 -3
  225. package/dist/useTimeSelection.d.cts +1 -1
  226. package/dist/useTimeSelection.d.ts +1 -1
  227. package/dist/useTreeOperations.d.cts +5 -5
  228. package/dist/useTreeOperations.d.ts +5 -5
  229. package/dist/useWorkflowValidation.d.cts +3 -3
  230. package/dist/useWorkflowValidation.d.ts +3 -3
  231. package/dist/verification.d.cts +4 -4
  232. package/dist/verification.d.ts +4 -4
  233. package/docs/architecture.en.md +83 -0
  234. package/docs/architecture.md +83 -0
  235. package/docs/assets/README.md +47 -0
  236. package/docs/assets/naive-ui-components-banner.png +0 -0
  237. package/docs/assets/naive-ui-components-banner.svg +69 -0
  238. package/docs/assets/naive-ui-components-logo.png +0 -0
  239. package/docs/assets/naive-ui-components-logo.svg +22 -0
  240. package/docs/components.en.md +118 -0
  241. package/docs/components.md +118 -0
  242. package/docs/engineering.en.md +132 -0
  243. package/docs/engineering.md +133 -0
  244. package/docs/guides/usage.en.md +638 -0
  245. package/docs/guides/usage.md +699 -0
  246. package/docs/performance-0.15.0.md +20 -0
  247. package/docs/security-scan-2026-10-06.md +11 -0
  248. package/docs/security-scan-2026-10-18.md +16 -0
  249. package/package.json +35 -12
  250. package/dist/C_Form2.cjs +0 -1
  251. package/dist/C_Form2.js +0 -1
  252. package/dist/config.cjs +0 -1
  253. package/dist/config.d.cts +0 -33
  254. package/dist/config.d.ts +0 -33
  255. package/dist/config.js +0 -1
@@ -1,12 +1,6 @@
1
1
  :root{--c-primary: var(--primary-color, #2080f0);--c-primary-hover: var(--primary-color-hover, #4098fc);--c-primary-pressed: var(--primary-color-pressed, #1060c9);--c-success: var(--success-color, #18a058);--c-warning: var(--warning-color, #f0a020);--c-error: var(--error-color, #d03050);--c-info: var(--info-color, #2080f0);--c-bg-body: var(--body-color, #ffffff);--c-bg-card: var(--card-color, #ffffff);--c-bg-surface: var(--popover-color, #ffffff);--c-text-1: var(--text-color-1, #262626);--c-text-2: var(--text-color-2, #525252);--c-text-3: var(--text-color-3, #a3a3a3);--c-text-4: var(--text-color-4, #c0c0c0);--c-border: var(--border-color, #e5e7eb);--c-radius-sm: var(--border-radius-small, 4px);--c-radius: var(--border-radius, 6px);--c-transition-fast: 0.15s cubic-bezier(0.4, 0, 0.2, 1);--c-transition-base: 0.3s cubic-bezier(0.4, 0, 0.2, 1);--c-shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.08);--c-shadow-md: 0 4px 6px rgba(0, 0, 0, 0.1);--c-shadow-lg: 0 10px 15px rgba(0, 0, 0, 0.1)}
2
2
 
3
- /* unplugin-vue-components disabled */
4
- /* layer: default */
5
- .inline-flex[data-v-075758a0]{display:inline-flex;}
6
- .transform[data-v-075758a0]{transform:translateX(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotateZ(var(--un-rotate-z)) skewX(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z));}
7
- .px[data-v-075758a0]{padding-left:1rem;padding-right:1rem;}
8
-
9
- /* unplugin-vue-components disabled */.c-icon[data-v-075758a0] {
3
+ .c-icon[data-v-075758a0] {
10
4
  display: inline-flex;
11
5
  align-items: center;
12
6
  justify-content: center;
@@ -65,15 +59,14 @@
65
59
  transform: rotate(360deg);
66
60
  }
67
61
  }
68
- /* unplugin-vue-components disabled */
62
+
69
63
  /* layer: default */
70
- .start-1[data-v-b2b17129]{inset-inline-start:0.25rem;}
71
- .table[data-v-b2b17129]{display:table;}
72
- .px[data-v-b2b17129]{padding-left:1rem;padding-right:1rem;}
73
- .filter[data-v-b2b17129]{filter:var(--un-blur) var(--un-brightness) var(--un-contrast) var(--un-drop-shadow) var(--un-grayscale) var(--un-hue-rotate) var(--un-invert) var(--un-saturate) var(--un-sepia);}
64
+ .inline-flex[data-v-075758a0]{display:inline-flex;}
65
+ .transform[data-v-075758a0]{transform:translateX(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotateZ(var(--un-rotate-z)) skewX(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z));}
66
+ .px[data-v-075758a0]{padding-left:1rem;padding-right:1rem;}
74
67
 
75
- /* unplugin-vue-components disabled *//* C_WorkFlow 组件样式 */
76
- .approval-workflow-container[data-v-b2b17129] {
68
+ /* C_WorkFlow 组件样式 */
69
+ .approval-workflow-container[data-v-ffd6fa87] {
77
70
  width: 100%;
78
71
  height: 600px;
79
72
  position: relative;
@@ -82,7 +75,7 @@
82
75
  overflow: hidden;
83
76
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1);
84
77
  }
85
- .floating-toolbar[data-v-b2b17129] {
78
+ .floating-toolbar[data-v-ffd6fa87] {
86
79
  position: absolute;
87
80
  top: 16px;
88
81
  left: 16px;
@@ -97,22 +90,22 @@
97
90
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1);
98
91
  border: 1px solid var(--n-border-color);
99
92
  }
100
- .floating-toolbar .toolbar-divider[data-v-b2b17129] {
93
+ .floating-toolbar .toolbar-divider[data-v-ffd6fa87] {
101
94
  width: 1px;
102
95
  height: 20px;
103
96
  background: var(--n-border-color);
104
97
  margin: 0 4px;
105
98
  }
106
- .workflow-canvas[data-v-b2b17129] {
99
+ .workflow-canvas[data-v-ffd6fa87] {
107
100
  width: 100%;
108
101
  height: 100%;
109
102
  }
110
- .add-node-menu[data-v-b2b17129] {
103
+ .add-node-menu[data-v-ffd6fa87] {
111
104
  position: fixed;
112
105
  z-index: 1000;
113
106
  pointer-events: none;
114
107
  }
115
- .add-node-menu .add-menu-content[data-v-b2b17129] {
108
+ .add-node-menu .add-menu-content[data-v-ffd6fa87] {
116
109
  background: var(--n-card-color);
117
110
  border-radius: 12px;
118
111
  padding: 12px;
@@ -121,9 +114,9 @@
121
114
  display: flex;
122
115
  gap: 8px;
123
116
  pointer-events: auto;
124
- animation: menuSlideUp-b2b17129 0.3s ease;
117
+ animation: menuSlideUp-ffd6fa87 0.3s ease;
125
118
  }
126
- .add-menu-item[data-v-b2b17129] {
119
+ .add-menu-item[data-v-ffd6fa87] {
127
120
  appearance: none;
128
121
  border: 0;
129
122
  color: inherit;
@@ -138,14 +131,14 @@
138
131
  min-width: 70px;
139
132
  background: var(--n-color-embedded);
140
133
  }
141
- .add-menu-item[data-v-b2b17129]:hover {
134
+ .add-menu-item[data-v-ffd6fa87]:hover {
142
135
  background: var(--n-color-hover);
143
136
  }
144
- .add-menu-item[data-v-b2b17129]:focus-visible {
137
+ .add-menu-item[data-v-ffd6fa87]:focus-visible {
145
138
  outline: 2px solid var(--n-color-target, #18a058);
146
139
  outline-offset: 2px;
147
140
  }
148
- .menu-icon[data-v-b2b17129] {
141
+ .menu-icon[data-v-ffd6fa87] {
149
142
  width: 32px;
150
143
  height: 32px;
151
144
  border-radius: 50%;
@@ -155,20 +148,20 @@
155
148
  margin-bottom: 6px;
156
149
  color: white;
157
150
  }
158
- .menu-icon.approval-icon[data-v-b2b17129] {
151
+ .menu-icon.approval-icon[data-v-ffd6fa87] {
159
152
  background: linear-gradient(135deg, #1890ff, #722ed1);
160
153
  }
161
- .menu-icon.copy-icon[data-v-b2b17129] {
154
+ .menu-icon.copy-icon[data-v-ffd6fa87] {
162
155
  background: linear-gradient(135deg, #52c41a, #389e0d);
163
156
  }
164
- .menu-icon.condition-icon[data-v-b2b17129] {
157
+ .menu-icon.condition-icon[data-v-ffd6fa87] {
165
158
  background: linear-gradient(135deg, #fa8c16, #d48806);
166
159
  }
167
- .menu-text[data-v-b2b17129] {
160
+ .menu-text[data-v-ffd6fa87] {
168
161
  font-size: 12px;
169
162
  font-weight: 500;
170
163
  }
171
- @keyframes menuSlideUp-b2b17129 {
164
+ @keyframes menuSlideUp-ffd6fa87 {
172
165
  from {
173
166
  opacity: 0;
174
167
  transform: translateY(10px);
@@ -179,25 +172,25 @@ to {
179
172
  }
180
173
  }
181
174
  /* 流程/数据校验结果显示样式 */
182
- .validation-success[data-v-b2b17129] {
175
+ .validation-success[data-v-ffd6fa87] {
183
176
  text-align: center;
184
177
  padding: 40px 20px;
185
178
  color: #52c41a;
186
179
  }
187
- .validation-success .success-icon[data-v-b2b17129] {
180
+ .validation-success .success-icon[data-v-ffd6fa87] {
188
181
  margin-bottom: 16px;
189
182
  }
190
- .validation-success h3[data-v-b2b17129] {
183
+ .validation-success h3[data-v-ffd6fa87] {
191
184
  margin: 0 0 8px 0;
192
185
  font-size: 18px;
193
186
  font-weight: 600;
194
187
  }
195
- .validation-success p[data-v-b2b17129] {
188
+ .validation-success p[data-v-ffd6fa87] {
196
189
  margin: 0;
197
190
  color: #666;
198
191
  font-size: 14px;
199
192
  }
200
- .validation-errors .error-summary[data-v-b2b17129] {
193
+ .validation-errors .error-summary[data-v-ffd6fa87] {
201
194
  text-align: center;
202
195
  padding: 20px;
203
196
  background: #fff2f0;
@@ -205,43 +198,43 @@ to {
205
198
  margin-bottom: 20px;
206
199
  border: 1px solid #ffccc7;
207
200
  }
208
- .validation-errors .error-summary .error-icon[data-v-b2b17129] {
201
+ .validation-errors .error-summary .error-icon[data-v-ffd6fa87] {
209
202
  margin-bottom: 12px;
210
203
  }
211
- .validation-errors .error-summary h3[data-v-b2b17129] {
204
+ .validation-errors .error-summary h3[data-v-ffd6fa87] {
212
205
  margin: 0 0 8px 0;
213
206
  color: #ff4d4f;
214
207
  font-size: 16px;
215
208
  font-weight: 600;
216
209
  }
217
- .validation-errors .error-summary p[data-v-b2b17129] {
210
+ .validation-errors .error-summary p[data-v-ffd6fa87] {
218
211
  margin: 0;
219
212
  color: var(--n-text-color-2);
220
213
  font-size: 14px;
221
214
  }
222
- .validation-errors .error-list[data-v-b2b17129] {
215
+ .validation-errors .error-list[data-v-ffd6fa87] {
223
216
  display: flex;
224
217
  flex-direction: column;
225
218
  gap: 12px;
226
219
  }
227
- .validation-errors .error-item[data-v-b2b17129] {
220
+ .validation-errors .error-item[data-v-ffd6fa87] {
228
221
  background: white;
229
222
  border: 1px solid #f0f0f0;
230
223
  border-radius: 8px;
231
224
  padding: 16px;
232
225
  transition: all 0.2s ease;
233
226
  }
234
- .validation-errors .error-item[data-v-b2b17129]:hover {
227
+ .validation-errors .error-item[data-v-ffd6fa87]:hover {
235
228
  border-color: #d9d9d9;
236
229
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
237
230
  }
238
- .validation-errors .error-item .error-header[data-v-b2b17129] {
231
+ .validation-errors .error-item .error-header[data-v-ffd6fa87] {
239
232
  display: flex;
240
233
  align-items: center;
241
234
  gap: 12px;
242
235
  margin-bottom: 8px;
243
236
  }
244
- .validation-errors .error-item .error-header .error-number[data-v-b2b17129] {
237
+ .validation-errors .error-item .error-header .error-number[data-v-ffd6fa87] {
245
238
  width: 24px;
246
239
  height: 24px;
247
240
  background: #ff4d4f;
@@ -254,188 +247,188 @@ to {
254
247
  font-weight: 600;
255
248
  flex-shrink: 0;
256
249
  }
257
- .validation-errors .error-item .error-header .error-info[data-v-b2b17129] {
250
+ .validation-errors .error-item .error-header .error-info[data-v-ffd6fa87] {
258
251
  flex: 1;
259
252
  min-width: 0;
260
253
  }
261
- .validation-errors .error-item .error-header .error-info .error-node[data-v-b2b17129] {
254
+ .validation-errors .error-item .error-header .error-info .error-node[data-v-ffd6fa87] {
262
255
  display: block;
263
256
  color: var(--n-text-color-1);
264
257
  font-size: 14px;
265
258
  margin-bottom: 2px;
266
259
  }
267
- .validation-errors .error-item .error-header .error-info .error-field[data-v-b2b17129] {
260
+ .validation-errors .error-item .error-header .error-info .error-field[data-v-ffd6fa87] {
268
261
  color: var(--n-text-color-3);
269
262
  font-size: 12px;
270
263
  }
271
- .validation-errors .error-item .error-header .error-type[data-v-b2b17129] {
264
+ .validation-errors .error-item .error-header .error-type[data-v-ffd6fa87] {
272
265
  padding: 2px 8px;
273
266
  border-radius: 4px;
274
267
  font-size: 11px;
275
268
  font-weight: 500;
276
269
  }
277
- .validation-errors .error-item .error-header .error-type.required[data-v-b2b17129] {
270
+ .validation-errors .error-item .error-header .error-type.required[data-v-ffd6fa87] {
278
271
  background: #fff2f0;
279
272
  color: #ff4d4f;
280
273
  border: 1px solid #ffccc7;
281
274
  }
282
- .validation-errors .error-item .error-header .error-type.incomplete[data-v-b2b17129] {
275
+ .validation-errors .error-item .error-header .error-type.incomplete[data-v-ffd6fa87] {
283
276
  background: #fff7e6;
284
277
  color: #fa8c16;
285
278
  border: 1px solid #ffd591;
286
279
  }
287
- .validation-errors .error-item .error-header .error-type.warning[data-v-b2b17129] {
280
+ .validation-errors .error-item .error-header .error-type.warning[data-v-ffd6fa87] {
288
281
  background: #fffbe6;
289
282
  color: #faad14;
290
283
  border: 1px solid #ffe58f;
291
284
  }
292
- .validation-errors .error-item .error-message[data-v-b2b17129] {
285
+ .validation-errors .error-item .error-message[data-v-ffd6fa87] {
293
286
  color: var(--n-text-color-2);
294
287
  font-size: 13px;
295
288
  line-height: 1.5;
296
289
  margin-bottom: 12px;
297
290
  padding-left: 36px;
298
291
  }
299
- .validation-errors .error-item .error-actions[data-v-b2b17129] {
292
+ .validation-errors .error-item .error-actions[data-v-ffd6fa87] {
300
293
  padding-left: 36px;
301
294
  }
302
- .validation-errors .validation-tips[data-v-b2b17129] {
295
+ .validation-errors .validation-tips[data-v-ffd6fa87] {
303
296
  margin-top: 24px;
304
297
  padding: 16px;
305
298
  background: #f6ffed;
306
299
  border-radius: 8px;
307
300
  border: 1px solid #b7eb8f;
308
301
  }
309
- .validation-errors .validation-tips h4[data-v-b2b17129] {
302
+ .validation-errors .validation-tips h4[data-v-ffd6fa87] {
310
303
  margin: 0 0 12px 0;
311
304
  color: #389e0d;
312
305
  font-size: 14px;
313
306
  font-weight: 600;
314
307
  }
315
- .validation-errors .validation-tips ul[data-v-b2b17129] {
308
+ .validation-errors .validation-tips ul[data-v-ffd6fa87] {
316
309
  margin: 0;
317
310
  padding-left: 16px;
318
311
  color: var(--n-text-color-2);
319
312
  font-size: 13px;
320
313
  line-height: 1.6;
321
314
  }
322
- .validation-errors .validation-tips ul li[data-v-b2b17129] {
315
+ .validation-errors .validation-tips ul li[data-v-ffd6fa87] {
323
316
  margin-bottom: 6px;
324
317
  }
325
- .validation-errors .validation-tips ul li strong[data-v-b2b17129] {
318
+ .validation-errors .validation-tips ul li strong[data-v-ffd6fa87] {
326
319
  color: var(--n-text-color-1);
327
320
  }
328
- .validation-footer[data-v-b2b17129] {
321
+ .validation-footer[data-v-ffd6fa87] {
329
322
  display: flex;
330
323
  gap: 8px;
331
324
  justify-content: flex-end;
332
325
  }
333
326
 
334
327
  /* 边的样式(Vue Flow) */
335
- [data-v-b2b17129] .vue-flow__edge {
328
+ [data-v-ffd6fa87] .vue-flow__edge {
336
329
  stroke: #1890ff;
337
330
  stroke-width: 2px;
338
331
  }
339
- [data-v-b2b17129] .vue-flow__edge-path {
332
+ [data-v-ffd6fa87] .vue-flow__edge-path {
340
333
  stroke: #1890ff;
341
334
  stroke-width: 2px;
342
335
  }
343
- [data-v-b2b17129] .vue-flow__arrowhead {
336
+ [data-v-ffd6fa87] .vue-flow__arrowhead {
344
337
  fill: #1890ff;
345
338
  }
346
- [data-v-b2b17129] .vue-flow__edge.animated {
339
+ [data-v-ffd6fa87] .vue-flow__edge.animated {
347
340
  stroke-dasharray: 5;
348
- animation: dashdraw-b2b17129 0.5s linear infinite;
341
+ animation: dashdraw-ffd6fa87 0.5s linear infinite;
349
342
  }
350
- @keyframes dashdraw-b2b17129 {
343
+ @keyframes dashdraw-ffd6fa87 {
351
344
  to {
352
345
  stroke-dashoffset: -10;
353
346
  }
354
347
  }
355
348
  /* 暗色主题适配 */
356
- [data-theme=dark] .approval-workflow-container[data-v-b2b17129] {
349
+ [data-theme=dark] .approval-workflow-container[data-v-ffd6fa87] {
357
350
  background: linear-gradient(135deg, #1a1a2e 0%, #16213e 100%);
358
351
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3);
359
352
  }
360
- [data-theme=dark][data-v-b2b17129] {
353
+ [data-theme=dark][data-v-ffd6fa87] {
361
354
  /* 添加节点菜单文字 */
362
355
  }
363
- [data-theme=dark] .add-menu-item span[data-v-b2b17129] {
356
+ [data-theme=dark] .add-menu-item span[data-v-ffd6fa87] {
364
357
  color: white;
365
358
  }
366
- [data-theme=dark] .validation-success[data-v-b2b17129] {
359
+ [data-theme=dark] .validation-success[data-v-ffd6fa87] {
367
360
  color: #52c41a;
368
361
  }
369
- [data-theme=dark] .validation-success h3[data-v-b2b17129] {
362
+ [data-theme=dark] .validation-success h3[data-v-ffd6fa87] {
370
363
  color: #52c41a;
371
364
  }
372
- [data-theme=dark] .validation-success p[data-v-b2b17129] {
365
+ [data-theme=dark] .validation-success p[data-v-ffd6fa87] {
373
366
  color: var(--n-text-color-2);
374
367
  }
375
- [data-theme=dark] .validation-errors .error-summary[data-v-b2b17129] {
368
+ [data-theme=dark] .validation-errors .error-summary[data-v-ffd6fa87] {
376
369
  background: rgba(255, 77, 79, 0.1);
377
370
  border-color: rgba(255, 77, 79, 0.3);
378
371
  }
379
- [data-theme=dark] .validation-errors .error-summary h3[data-v-b2b17129] {
372
+ [data-theme=dark] .validation-errors .error-summary h3[data-v-ffd6fa87] {
380
373
  color: #ff4d4f;
381
374
  }
382
- [data-theme=dark] .validation-errors .error-summary p[data-v-b2b17129] {
375
+ [data-theme=dark] .validation-errors .error-summary p[data-v-ffd6fa87] {
383
376
  color: var(--n-text-color-2);
384
377
  }
385
- [data-theme=dark] .validation-errors .error-item[data-v-b2b17129] {
378
+ [data-theme=dark] .validation-errors .error-item[data-v-ffd6fa87] {
386
379
  background: var(--n-card-color);
387
380
  border-color: var(--n-border-color);
388
381
  }
389
- [data-theme=dark] .validation-errors .error-item[data-v-b2b17129]:hover {
382
+ [data-theme=dark] .validation-errors .error-item[data-v-ffd6fa87]:hover {
390
383
  border-color: rgba(255, 255, 255, 0.2);
391
384
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
392
385
  }
393
- [data-theme=dark] .validation-errors .error-item .error-info .error-node[data-v-b2b17129] {
386
+ [data-theme=dark] .validation-errors .error-item .error-info .error-node[data-v-ffd6fa87] {
394
387
  color: var(--n-text-color-1);
395
388
  }
396
- [data-theme=dark] .validation-errors .error-item .error-info .error-field[data-v-b2b17129] {
389
+ [data-theme=dark] .validation-errors .error-item .error-info .error-field[data-v-ffd6fa87] {
397
390
  color: var(--n-text-color-3);
398
391
  }
399
- [data-theme=dark] .validation-errors .error-item .error-type.required[data-v-b2b17129] {
392
+ [data-theme=dark] .validation-errors .error-item .error-type.required[data-v-ffd6fa87] {
400
393
  background: rgba(255, 77, 79, 0.15);
401
394
  color: #ff7875;
402
395
  border-color: rgba(255, 77, 79, 0.3);
403
396
  }
404
- [data-theme=dark] .validation-errors .error-item .error-type.incomplete[data-v-b2b17129] {
397
+ [data-theme=dark] .validation-errors .error-item .error-type.incomplete[data-v-ffd6fa87] {
405
398
  background: rgba(250, 140, 22, 0.15);
406
399
  color: #ffa940;
407
400
  border-color: rgba(250, 140, 22, 0.3);
408
401
  }
409
- [data-theme=dark] .validation-errors .error-item .error-type.warning[data-v-b2b17129] {
402
+ [data-theme=dark] .validation-errors .error-item .error-type.warning[data-v-ffd6fa87] {
410
403
  background: rgba(250, 173, 20, 0.15);
411
404
  color: #ffc53d;
412
405
  border-color: rgba(250, 173, 20, 0.3);
413
406
  }
414
- [data-theme=dark] .validation-errors .error-item .error-message[data-v-b2b17129] {
407
+ [data-theme=dark] .validation-errors .error-item .error-message[data-v-ffd6fa87] {
415
408
  color: var(--n-text-color-2);
416
409
  }
417
- [data-theme=dark] .validation-errors .validation-tips[data-v-b2b17129] {
410
+ [data-theme=dark] .validation-errors .validation-tips[data-v-ffd6fa87] {
418
411
  background: rgba(82, 196, 26, 0.1);
419
412
  border-color: rgba(82, 196, 26, 0.3);
420
413
  }
421
- [data-theme=dark] .validation-errors .validation-tips h4[data-v-b2b17129] {
414
+ [data-theme=dark] .validation-errors .validation-tips h4[data-v-ffd6fa87] {
422
415
  color: #73d13d;
423
416
  }
424
- [data-theme=dark] .validation-errors .validation-tips ul[data-v-b2b17129] {
417
+ [data-theme=dark] .validation-errors .validation-tips ul[data-v-ffd6fa87] {
425
418
  color: var(--n-text-color-2);
426
419
  }
427
- [data-theme=dark] .validation-errors .validation-tips ul li strong[data-v-b2b17129] {
420
+ [data-theme=dark] .validation-errors .validation-tips ul li strong[data-v-ffd6fa87] {
428
421
  color: var(--n-text-color-1);
429
422
  }
430
423
 
431
424
  /* ─── 流程预览抽屉样式 ────────────────────────────────────── */
432
- .preview-stats[data-v-b2b17129] {
425
+ .preview-stats[data-v-ffd6fa87] {
433
426
  display: flex;
434
427
  gap: 12px;
435
428
  margin-bottom: 24px;
436
429
  flex-wrap: wrap;
437
430
  }
438
- .preview-stats .stat-item[data-v-b2b17129] {
431
+ .preview-stats .stat-item[data-v-ffd6fa87] {
439
432
  flex: 1;
440
433
  min-width: 70px;
441
434
  text-align: center;
@@ -445,51 +438,51 @@ to {
445
438
  border: 1px solid var(--n-border-color);
446
439
  transition: all 0.2s;
447
440
  }
448
- .preview-stats .stat-item .stat-value[data-v-b2b17129] {
441
+ .preview-stats .stat-item .stat-value[data-v-ffd6fa87] {
449
442
  display: block;
450
443
  font-size: 22px;
451
444
  font-weight: 700;
452
445
  color: var(--n-text-color-1);
453
446
  }
454
- .preview-stats .stat-item .stat-label[data-v-b2b17129] {
447
+ .preview-stats .stat-item .stat-label[data-v-ffd6fa87] {
455
448
  display: block;
456
449
  font-size: 12px;
457
450
  color: var(--n-text-color-3);
458
451
  margin-top: 4px;
459
452
  }
460
- .preview-stats .stat-item.approval .stat-value[data-v-b2b17129] {
453
+ .preview-stats .stat-item.approval .stat-value[data-v-ffd6fa87] {
461
454
  color: #ff6b35;
462
455
  }
463
- .preview-stats .stat-item.copy .stat-value[data-v-b2b17129] {
456
+ .preview-stats .stat-item.copy .stat-value[data-v-ffd6fa87] {
464
457
  color: #1890ff;
465
458
  }
466
- .preview-stats .stat-item.condition .stat-value[data-v-b2b17129] {
459
+ .preview-stats .stat-item.condition .stat-value[data-v-ffd6fa87] {
467
460
  color: #faad14;
468
461
  }
469
- .preview-stats .stat-item.edge .stat-value[data-v-b2b17129] {
462
+ .preview-stats .stat-item.edge .stat-value[data-v-ffd6fa87] {
470
463
  color: #52c41a;
471
464
  }
472
- .preview-timeline[data-v-b2b17129] {
465
+ .preview-timeline[data-v-ffd6fa87] {
473
466
  position: relative;
474
467
  padding: 0 0 0 8px;
475
468
  }
476
- .preview-timeline .preview-step[data-v-b2b17129] {
469
+ .preview-timeline .preview-step[data-v-ffd6fa87] {
477
470
  display: flex;
478
471
  gap: 16px;
479
472
  position: relative;
480
473
  padding-bottom: 8px;
481
474
  }
482
- .preview-timeline .preview-step:last-child .step-line[data-v-b2b17129] {
475
+ .preview-timeline .preview-step:last-child .step-line[data-v-ffd6fa87] {
483
476
  display: none;
484
477
  }
485
- .preview-timeline .step-connector[data-v-b2b17129] {
478
+ .preview-timeline .step-connector[data-v-ffd6fa87] {
486
479
  display: flex;
487
480
  flex-direction: column;
488
481
  align-items: center;
489
482
  flex-shrink: 0;
490
483
  width: 32px;
491
484
  }
492
- .preview-timeline .step-connector .step-dot[data-v-b2b17129] {
485
+ .preview-timeline .step-connector .step-dot[data-v-ffd6fa87] {
493
486
  width: 32px;
494
487
  height: 32px;
495
488
  border-radius: 50%;
@@ -501,44 +494,44 @@ to {
501
494
  z-index: 1;
502
495
  background: #999;
503
496
  }
504
- .preview-timeline .step-connector .step-line[data-v-b2b17129] {
497
+ .preview-timeline .step-connector .step-line[data-v-ffd6fa87] {
505
498
  width: 2px;
506
499
  flex: 1;
507
500
  min-height: 20px;
508
501
  background: var(--n-border-color);
509
502
  }
510
- .preview-timeline[data-v-b2b17129] {
503
+ .preview-timeline[data-v-ffd6fa87] {
511
504
  /* 不同节点类型的圆点颜色 */
512
505
  }
513
- .preview-timeline .start .step-dot[data-v-b2b17129] {
506
+ .preview-timeline .start .step-dot[data-v-ffd6fa87] {
514
507
  background: linear-gradient(135deg, #667eea, #764ba2);
515
508
  }
516
- .preview-timeline .approval .step-dot[data-v-b2b17129] {
509
+ .preview-timeline .approval .step-dot[data-v-ffd6fa87] {
517
510
  background: linear-gradient(135deg, #ff6b35, #ff4500);
518
511
  }
519
- .preview-timeline .copy .step-dot[data-v-b2b17129] {
512
+ .preview-timeline .copy .step-dot[data-v-ffd6fa87] {
520
513
  background: linear-gradient(135deg, #1890ff, #096dd9);
521
514
  }
522
- .preview-timeline .condition .step-dot[data-v-b2b17129] {
515
+ .preview-timeline .condition .step-dot[data-v-ffd6fa87] {
523
516
  background: linear-gradient(135deg, #faad14, #d48806);
524
517
  }
525
- .preview-timeline .step-content[data-v-b2b17129] {
518
+ .preview-timeline .step-content[data-v-ffd6fa87] {
526
519
  flex: 1;
527
520
  padding-bottom: 20px;
528
521
  min-width: 0;
529
522
  }
530
- .preview-timeline .step-content .step-header[data-v-b2b17129] {
523
+ .preview-timeline .step-content .step-header[data-v-ffd6fa87] {
531
524
  display: flex;
532
525
  align-items: center;
533
526
  gap: 8px;
534
527
  margin-bottom: 6px;
535
528
  }
536
- .preview-timeline .step-content .step-header .step-order[data-v-b2b17129] {
529
+ .preview-timeline .step-content .step-header .step-order[data-v-ffd6fa87] {
537
530
  font-size: 12px;
538
531
  color: var(--n-text-color-3);
539
532
  font-weight: 500;
540
533
  }
541
- .preview-timeline .step-content .step-header .step-type-badge[data-v-b2b17129] {
534
+ .preview-timeline .step-content .step-header .step-type-badge[data-v-ffd6fa87] {
542
535
  font-size: 11px;
543
536
  padding: 1px 8px;
544
537
  border-radius: 10px;
@@ -546,19 +539,19 @@ to {
546
539
  color: var(--n-text-color-2);
547
540
  border: 1px solid var(--n-border-color);
548
541
  }
549
- .preview-timeline .step-content .step-title[data-v-b2b17129] {
542
+ .preview-timeline .step-content .step-title[data-v-ffd6fa87] {
550
543
  font-size: 15px;
551
544
  font-weight: 600;
552
545
  color: var(--n-text-color-1);
553
546
  margin-bottom: 8px;
554
547
  }
555
- .preview-timeline .step-content .step-details[data-v-b2b17129] {
548
+ .preview-timeline .step-content .step-details[data-v-ffd6fa87] {
556
549
  background: var(--n-action-color);
557
550
  border-radius: 8px;
558
551
  padding: 10px 14px;
559
552
  border: 1px solid var(--n-border-color);
560
553
  }
561
- .preview-timeline .step-content .step-details .step-detail-item[data-v-b2b17129] {
554
+ .preview-timeline .step-content .step-details .step-detail-item[data-v-ffd6fa87] {
562
555
  font-size: 13px;
563
556
  color: var(--n-text-color-2);
564
557
  line-height: 1.8;
@@ -568,21 +561,21 @@ to {
568
561
  flex-wrap: wrap;
569
562
  gap: 4px;
570
563
  }
571
- .preview-timeline .step-content .step-details .step-detail-item[data-v-b2b17129]:not(:last-child) {
564
+ .preview-timeline .step-content .step-details .step-detail-item[data-v-ffd6fa87]:not(:last-child) {
572
565
  border-bottom: 1px dashed var(--n-border-color);
573
566
  padding-bottom: 8px;
574
567
  margin-bottom: 8px;
575
568
  }
576
- .preview-timeline .step-content .step-details .step-detail-item.is-warning[data-v-b2b17129] {
569
+ .preview-timeline .step-content .step-details .step-detail-item.is-warning[data-v-ffd6fa87] {
577
570
  color: #faad14;
578
571
  }
579
- .preview-timeline .step-content .step-details .step-detail-item .detail-label[data-v-b2b17129] {
572
+ .preview-timeline .step-content .step-details .step-detail-item .detail-label[data-v-ffd6fa87] {
580
573
  color: var(--n-text-color-3);
581
574
  font-size: 12px;
582
575
  flex-shrink: 0;
583
576
  line-height: 24px;
584
577
  }
585
- .preview-timeline .step-content .step-details .step-detail-item .mode-badge[data-v-b2b17129] {
578
+ .preview-timeline .step-content .step-details .step-detail-item .mode-badge[data-v-ffd6fa87] {
586
579
  display: inline-block;
587
580
  font-size: 12px;
588
581
  font-weight: 600;
@@ -590,61 +583,96 @@ to {
590
583
  border-radius: 12px;
591
584
  line-height: 20px;
592
585
  }
593
- .preview-timeline .step-content .step-details .step-detail-item .mode-badge.any[data-v-b2b17129] {
586
+ .preview-timeline .step-content .step-details .step-detail-item .mode-badge.any[data-v-ffd6fa87] {
594
587
  background: rgba(24, 144, 255, 0.1);
595
588
  color: #1890ff;
596
589
  border: 1px solid rgba(24, 144, 255, 0.25);
597
590
  }
598
- .preview-timeline .step-content .step-details .step-detail-item .mode-badge.all[data-v-b2b17129] {
591
+ .preview-timeline .step-content .step-details .step-detail-item .mode-badge.all[data-v-ffd6fa87] {
599
592
  background: rgba(255, 77, 79, 0.1);
600
593
  color: #ff4d4f;
601
594
  border: 1px solid rgba(255, 77, 79, 0.25);
602
595
  }
603
- .preview-timeline .step-content .step-details .step-detail-item .mode-badge.sequence[data-v-b2b17129] {
596
+ .preview-timeline .step-content .step-details .step-detail-item .mode-badge.sequence[data-v-ffd6fa87] {
604
597
  background: rgba(114, 46, 209, 0.1);
605
598
  color: #722ed1;
606
599
  border: 1px solid rgba(114, 46, 209, 0.25);
607
600
  }
608
- .preview-timeline .step-content .step-details .step-detail-item .user-tag[data-v-b2b17129] {
601
+ .preview-timeline .step-content .step-details .step-detail-item .user-tag[data-v-ffd6fa87] {
609
602
  margin: 1px 2px;
610
603
  }
611
- .preview-timeline .step-content .step-details .step-detail-item .warning-text[data-v-b2b17129] {
604
+ .preview-timeline .step-content .step-details .step-detail-item .warning-text[data-v-ffd6fa87] {
612
605
  color: #faad14;
613
606
  font-weight: 500;
614
607
  }
615
- .preview-empty[data-v-b2b17129] {
608
+ .preview-empty[data-v-ffd6fa87] {
616
609
  display: flex;
617
610
  flex-direction: column;
618
611
  align-items: center;
619
612
  justify-content: center;
620
613
  padding: 60px 0;
621
614
  }
622
- .preview-empty p[data-v-b2b17129] {
615
+ .preview-empty p[data-v-ffd6fa87] {
623
616
  margin-top: 12px;
624
617
  color: var(--n-text-color-3);
625
618
  font-size: 14px;
626
619
  }
627
- .preview-footer[data-v-b2b17129] {
620
+ .preview-footer[data-v-ffd6fa87] {
628
621
  display: flex;
629
622
  justify-content: flex-end;
630
623
  gap: 12px;
631
624
  }
632
- /* unplugin-vue-components disabled */
625
+
633
626
  /* layer: default */
634
- .absolute[data-v-5ede8782]{position:absolute;}
635
- .relative[data-v-5ede8782]{position:relative;}
636
- .hidden[data-v-5ede8782]{display:none;}
637
- .flex[data-v-5ede8782]{display:flex;}
638
- .transform[data-v-5ede8782]{transform:translateX(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotateZ(var(--un-rotate-z)) skewX(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z));}
639
- .border[data-v-5ede8782]{border-width:1px;}
640
- .outline[data-v-5ede8782]{outline-style:solid;}
641
- .transition[data-v-5ede8782]{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms;}
642
- .ease[data-v-5ede8782]{transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);}
627
+ .start-1[data-v-ffd6fa87]{inset-inline-start:0.25rem;}
628
+ .px[data-v-ffd6fa87]{padding-left:1rem;padding-right:1rem;}
629
+
643
630
 
644
- /* unplugin-vue-components disabled */.condition-node[data-v-5ede8782] {
631
+ /* layer: default */
632
+ .visible[data-v-df36c1fc]{visibility:visible;}
633
+ .start-1[data-v-df36c1fc]{inset-inline-start:0.25rem;}
634
+ .mb-2[data-v-df36c1fc]{margin-bottom:0.5rem;}
635
+ .mb-3[data-v-df36c1fc]{margin-bottom:0.75rem;}
636
+ .mb-4[data-v-df36c1fc]{margin-bottom:1rem;}
637
+ .ml-auto[data-v-df36c1fc]{margin-left:auto;}
638
+ .mt-4[data-v-df36c1fc]{margin-top:1rem;}
639
+ .block[data-v-df36c1fc]{display:block;}
640
+ .max-h-50[data-v-df36c1fc]{max-height:12.5rem;}
641
+ .max-h-60vh[data-v-df36c1fc]{max-height:60vh;}
642
+ .min-h-10[data-v-df36c1fc]{min-height:2.5rem;}
643
+ .w-full[data-v-df36c1fc]{width:100%;}
644
+ .flex[data-v-df36c1fc]{display:flex;}
645
+ .flex-shrink-0[data-v-df36c1fc]{flex-shrink:0;}
646
+ .flex-col[data-v-df36c1fc]{flex-direction:column;}
647
+ .flex-wrap[data-v-df36c1fc]{flex-wrap:wrap;}
648
+ .flex-nowrap[data-v-df36c1fc]{flex-wrap:nowrap;}
649
+ .items-center[data-v-df36c1fc]{align-items:center;}
650
+ .gap-1[data-v-df36c1fc]{gap:0.25rem;}
651
+ .gap-2[data-v-df36c1fc]{gap:0.5rem;}
652
+ .gap-3[data-v-df36c1fc]{gap:0.75rem;}
653
+ .space-y-3[data-v-df36c1fc]>:not([hidden])~:not([hidden]){--un-space-y-reverse:0;margin-top:calc(0.75rem * calc(1 - var(--un-space-y-reverse)));margin-bottom:calc(0.75rem * var(--un-space-y-reverse));}
654
+ .overflow-y-auto[data-v-df36c1fc]{overflow-y:auto;}
655
+ .border[data-v-df36c1fc]{border-width:1px;}
656
+ .border-gray-200[data-v-df36c1fc]{--un-border-opacity:1;border-color:rgb(229 231 235 / var(--un-border-opacity));}
657
+ .hover\:border-gray-300[data-v-df36c1fc]:hover{--un-border-opacity:1;border-color:rgb(209 213 219 / var(--un-border-opacity));}
658
+ .rounded[data-v-df36c1fc]{border-radius:0.25rem;}
659
+ .rounded-lg[data-v-df36c1fc]{border-radius:0.5rem;}
660
+ .p-2[data-v-df36c1fc]{padding:0.5rem;}
661
+ .p-3[data-v-df36c1fc]{padding:0.75rem;}
662
+ .p-4[data-v-df36c1fc]{padding:1rem;}
663
+ .px-1\.5[data-v-df36c1fc]{padding-left:0.375rem;padding-right:0.375rem;}
664
+ .py-0\.5[data-v-df36c1fc]{padding-top:0.125rem;padding-bottom:0.125rem;}
665
+ .text-base[data-v-df36c1fc]{font-size:1rem;line-height:1.5rem;}
666
+ .text-sm[data-v-df36c1fc]{font-size:0.875rem;line-height:1.25rem;}
667
+ .text-xs[data-v-df36c1fc]{font-size:0.75rem;line-height:1rem;}
668
+ .font-medium[data-v-df36c1fc]{font-weight:500;}
669
+ .font-semibold[data-v-df36c1fc]{font-weight:600;}
670
+ .transition-colors[data-v-df36c1fc]{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms;}
671
+
672
+ .approval-node[data-v-e6968a42] {
645
673
  position: relative;
646
674
  }
647
- .status-indicator[data-v-5ede8782] {
675
+ .status-indicator[data-v-e6968a42] {
648
676
  position: absolute;
649
677
  top: -4px;
650
678
  right: -4px;
@@ -655,13 +683,16 @@ to {
655
683
  z-index: 2;
656
684
  background: #faad14;
657
685
  }
658
- .status-indicator.completed[data-v-5ede8782] {
686
+ .status-indicator.approved[data-v-e6968a42] {
659
687
  background: #52c41a;
660
688
  }
661
- .status-indicator.active[data-v-5ede8782] {
662
- background: #fa8c16;
689
+ .status-indicator.rejected[data-v-e6968a42] {
690
+ background: #ff4d4f;
663
691
  }
664
- .delete-btn[data-v-5ede8782] {
692
+ .status-indicator.pending[data-v-e6968a42] {
693
+ background: #1890ff;
694
+ }
695
+ .delete-btn[data-v-e6968a42] {
665
696
  appearance: none;
666
697
  padding: 0;
667
698
  position: absolute;
@@ -676,68 +707,69 @@ to {
676
707
  align-items: center;
677
708
  justify-content: center;
678
709
  cursor: pointer;
679
- z-index: 100;
710
+ z-index: 100; /* 确保在所有元素之上 */
680
711
  opacity: 0;
681
712
  transform: scale(0.8);
682
713
  transition: all 0.2s ease;
683
714
  border: 2px solid white;
684
715
  box-shadow: 0 2px 8px rgba(255, 77, 79, 0.3);
685
716
  }
686
- .delete-btn[data-v-5ede8782]:hover {
717
+ .delete-btn[data-v-e6968a42]:hover {
687
718
  transform: scale(1);
688
719
  background: #ff7875;
689
720
  box-shadow: 0 4px 12px rgba(255, 77, 79, 0.5);
690
721
  }
691
- .delete-btn[data-v-5ede8782]:active {
722
+ .delete-btn[data-v-e6968a42]:active {
692
723
  transform: scale(0.95);
693
724
  }
694
- .condition-node:hover .delete-btn[data-v-5ede8782],
695
- .condition-node:focus-within .delete-btn[data-v-5ede8782] {
725
+ .approval-node:hover .delete-btn[data-v-e6968a42],
726
+ .approval-node:focus-within .delete-btn[data-v-e6968a42] {
696
727
  opacity: 1;
697
728
  transform: scale(1);
698
729
  }
699
- .node-card[data-v-5ede8782] {
730
+ .node-card[data-v-e6968a42] {
700
731
  background: white;
701
732
  border-radius: 12px;
702
- min-width: 220px;
733
+ min-width: 240px;
734
+ max-width: 300px;
703
735
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
704
736
  border: 2px solid transparent;
705
737
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
706
738
  overflow: hidden;
707
739
  cursor: pointer;
708
740
  }
709
- .node-card[data-v-5ede8782]:hover {
741
+ .node-card[data-v-e6968a42]:hover {
710
742
  transform: translateY(-2px);
711
743
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
712
- border-color: #fa8c16;
744
+ border-color: #1890ff;
713
745
  }
714
- .node-header[data-v-5ede8782] {
746
+ .node-header[data-v-e6968a42] {
715
747
  padding: 12px 16px;
716
- background: #fff7e6;
717
- border-bottom: 1px solid #ffe7ba;
748
+ background: linear-gradient(135deg, #e6f7ff, #f0f9ff);
749
+ border-bottom: 1px solid #91d5ff;
718
750
  display: flex;
719
751
  align-items: center;
720
752
  gap: 8px;
753
+ flex-wrap: wrap;
721
754
  }
722
- .node-icon[data-v-5ede8782] {
755
+ .node-icon[data-v-e6968a42] {
723
756
  width: 24px;
724
757
  height: 24px;
725
758
  border-radius: 50%;
726
- background: #fa8c16;
759
+ background: #1890ff;
727
760
  color: white;
728
761
  display: flex;
729
762
  align-items: center;
730
763
  justify-content: center;
731
- font-size: 12px;
732
764
  }
733
- .node-title[data-v-5ede8782] {
765
+ .node-title[data-v-e6968a42] {
734
766
  font-weight: 600;
735
- color: #262626;
767
+ color: var(--n-text-color-1);
736
768
  font-size: 14px;
737
769
  flex: 1;
738
770
  }
739
- .node-badge[data-v-5ede8782] {
740
- background: #fa8c16;
771
+ .node-badge[data-v-e6968a42] {
772
+ background: #1890ff;
741
773
  color: white;
742
774
  padding: 2px 6px;
743
775
  border-radius: 10px;
@@ -746,53 +778,91 @@ to {
746
778
  min-width: 16px;
747
779
  text-align: center;
748
780
  }
749
- .node-content[data-v-5ede8782] {
781
+ .approval-mode-badge[data-v-e6968a42] {
782
+ background: #f0f0f0;
783
+ color: #666;
784
+ padding: 2px 6px;
785
+ border-radius: 8px;
786
+ font-size: 10px;
787
+ font-weight: 500;
788
+ }
789
+ .node-content[data-v-e6968a42] {
750
790
  padding: 16px;
751
791
  }
752
- .conditions-list[data-v-5ede8782] {
792
+ .approvers-list[data-v-e6968a42] {
753
793
  display: flex;
754
794
  flex-direction: column;
755
- gap: 6px;
795
+ gap: 8px;
756
796
  }
757
- .condition-tag[data-v-5ede8782] {
758
- display: flex;
759
- align-items: center;
760
- gap: 6px;
761
- background: #fff7e6;
762
- color: #fa8c16;
763
- padding: 6px 10px;
797
+ .approver-tag[data-v-e6968a42] {
798
+ background: linear-gradient(135deg, #e6f7ff, #f0f9ff);
799
+ border: 1px solid #91d5ff;
764
800
  border-radius: 8px;
765
- font-size: 12px;
766
- border: 1px solid #ffd591;
801
+ padding: 8px 12px;
767
802
  transition: all 0.2s ease;
768
803
  }
769
- .condition-tag[data-v-5ede8782]:hover {
770
- background: #ffe7ba;
804
+ .approver-tag[data-v-e6968a42]:hover {
771
805
  transform: translateX(2px);
806
+ box-shadow: 0 2px 8px rgba(24, 144, 255, 0.2);
772
807
  }
773
- .condition-icon[data-v-5ede8782] {
774
- font-weight: bold;
775
- color: #d48806;
808
+ .approver-tag .approver-info[data-v-e6968a42] {
809
+ display: flex;
810
+ align-items: center;
811
+ gap: 8px;
776
812
  }
777
- .more-count[data-v-5ede8782] {
813
+ .approver-tag .approver-info .approver-avatar[data-v-e6968a42] {
814
+ flex-shrink: 0;
815
+ }
816
+ .approver-tag .approver-info .approver-details[data-v-e6968a42] {
817
+ display: flex;
818
+ flex-direction: column;
819
+ gap: 2px;
820
+ min-width: 0;
821
+ }
822
+ .approver-tag .approver-info .approver-details .approver-name[data-v-e6968a42] {
823
+ font-weight: 600;
824
+ color: #1890ff;
825
+ font-size: 13px;
826
+ }
827
+ .approver-tag .approver-info .approver-details .approver-dept[data-v-e6968a42] {
828
+ font-size: 11px;
829
+ color: #666;
830
+ background: rgba(0, 0, 0, 0.05);
831
+ padding: 1px 4px;
832
+ border-radius: 4px;
833
+ display: inline-block;
834
+ }
835
+ .approver-tag .approver-info .approver-details .approver-role[data-v-e6968a42] {
836
+ font-size: 10px;
837
+ color: #999;
838
+ }
839
+ .more-count[data-v-e6968a42] {
778
840
  background: #f0f0f0;
779
841
  color: #8c8c8c;
780
- padding: 4px 8px;
842
+ padding: 6px 8px;
781
843
  border-radius: 12px;
782
844
  font-size: 12px;
783
845
  font-weight: 500;
784
846
  text-align: center;
785
- margin-top: 4px;
847
+ border: 1px dashed #d9d9d9;
786
848
  }
787
- .placeholder[data-v-5ede8782] {
849
+ .placeholder[data-v-e6968a42] {
788
850
  display: flex;
851
+ flex-direction: column;
789
852
  align-items: center;
790
- gap: 6px;
853
+ justify-content: center;
854
+ gap: 8px;
791
855
  color: #8c8c8c;
792
856
  font-size: 12px;
793
- padding: 8px 0;
857
+ padding: 20px 0;
858
+ border: 1px dashed #d9d9d9;
859
+ border-radius: 8px;
860
+ background: #fafafa;
794
861
  }
795
- .add-node-btn[data-v-5ede8782] {
862
+ .placeholder span[data-v-e6968a42] {
863
+ font-weight: 500;
864
+ }
865
+ .add-node-btn[data-v-e6968a42] {
796
866
  appearance: none;
797
867
  border: 0;
798
868
  padding: 0;
@@ -803,44 +873,30 @@ to {
803
873
  width: 32px;
804
874
  height: 32px;
805
875
  border-radius: 50%;
806
- background: linear-gradient(135deg, #fa8c16, #d48806);
876
+ background: linear-gradient(135deg, #1890ff, #722ed1);
807
877
  color: white;
808
878
  display: flex;
809
879
  align-items: center;
810
880
  justify-content: center;
811
881
  cursor: pointer;
812
- box-shadow: 0 4px 12px rgba(250, 140, 22, 0.3);
882
+ box-shadow: 0 4px 12px rgba(24, 144, 255, 0.3);
813
883
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
814
- font-size: 16px;
815
- font-weight: bold;
816
884
  z-index: 10;
817
885
  }
818
- .add-node-btn[data-v-5ede8782]:hover {
886
+ .add-node-btn[data-v-e6968a42]:hover {
819
887
  transform: translateX(-50%) scale(1.1);
820
- box-shadow: 0 6px 20px rgba(250, 140, 22, 0.4);
888
+ box-shadow: 0 6px 20px rgba(24, 144, 255, 0.4);
821
889
  }
822
- .add-node-btn[data-v-5ede8782]:focus-visible {
823
- outline: 2px solid #fa8c16;
890
+ .add-node-btn[data-v-e6968a42]:focus-visible {
891
+ outline: 2px solid #1890ff;
824
892
  outline-offset: 2px;
825
893
  }
826
- .delete-btn[data-v-5ede8782]:focus-visible {
894
+ .delete-btn[data-v-e6968a42]:focus-visible {
827
895
  opacity: 1;
828
- outline: 2px solid #fa8c16;
896
+ outline: 2px solid #1890ff;
829
897
  outline-offset: 2px;
830
898
  }
831
- /* unplugin-vue-components disabled */
832
- /* layer: default */
833
- .absolute[data-v-6fb2df95]{position:absolute;}
834
- .relative[data-v-6fb2df95]{position:relative;}
835
- .flex[data-v-6fb2df95]{display:flex;}
836
- .flex-shrink[data-v-6fb2df95]{flex-shrink:1;}
837
- .transform[data-v-6fb2df95]{transform:translateX(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotateZ(var(--un-rotate-z)) skewX(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z));}
838
- .border[data-v-6fb2df95]{border-width:1px;}
839
- .italic[data-v-6fb2df95]{font-style:italic;}
840
- .outline[data-v-6fb2df95]{outline-style:solid;}
841
- .transition[data-v-6fb2df95]{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms;}
842
899
 
843
- /* unplugin-vue-components disabled */
844
900
  /* layer: default */
845
901
  .absolute[data-v-e6968a42]{position:absolute;}
846
902
  .relative[data-v-e6968a42]{position:relative;}
@@ -856,185 +912,103 @@ to {
856
912
  .transition[data-v-e6968a42]{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms;}
857
913
  .ease[data-v-e6968a42]{transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);}
858
914
 
859
- /* unplugin-vue-components disabled */.start-node[data-v-6fb2df95] {
915
+ .condition-node[data-v-5ede8782] {
860
916
  position: relative;
861
917
  }
862
- .node-content[data-v-6fb2df95] {
863
- background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
918
+ .status-indicator[data-v-5ede8782] {
919
+ position: absolute;
920
+ top: -4px;
921
+ right: -4px;
922
+ width: 12px;
923
+ height: 12px;
924
+ border-radius: 50%;
925
+ border: 2px solid white;
926
+ z-index: 2;
927
+ background: #faad14;
928
+ }
929
+ .status-indicator.completed[data-v-5ede8782] {
930
+ background: #52c41a;
931
+ }
932
+ .status-indicator.active[data-v-5ede8782] {
933
+ background: #fa8c16;
934
+ }
935
+ .delete-btn[data-v-5ede8782] {
936
+ appearance: none;
937
+ padding: 0;
938
+ position: absolute;
939
+ top: -10px;
940
+ right: -10px;
941
+ width: 24px;
942
+ height: 24px;
943
+ border-radius: 50%;
944
+ background: #ff4d4f;
864
945
  color: white;
865
- padding: 16px 20px;
866
- border-radius: 12px;
867
946
  display: flex;
868
947
  align-items: center;
869
948
  justify-content: center;
870
- gap: 12px;
871
- min-width: 160px;
872
- box-shadow: 0 4px 20px rgba(102, 126, 234, 0.3);
873
- transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
874
949
  cursor: pointer;
950
+ z-index: 100;
951
+ opacity: 0;
952
+ transform: scale(0.8);
953
+ transition: all 0.2s ease;
954
+ border: 2px solid white;
955
+ box-shadow: 0 2px 8px rgba(255, 77, 79, 0.3);
875
956
  }
876
- .node-content[data-v-6fb2df95]:hover {
877
- transform: translateY(-2px);
878
- box-shadow: 0 8px 30px rgba(102, 126, 234, 0.4);
879
- }
880
- .node-icon[data-v-6fb2df95] {
881
- font-size: 16px;
882
- flex-shrink: 0;
957
+ .delete-btn[data-v-5ede8782]:hover {
958
+ transform: scale(1);
959
+ background: #ff7875;
960
+ box-shadow: 0 4px 12px rgba(255, 77, 79, 0.5);
883
961
  }
884
- .node-info[data-v-6fb2df95] {
885
- display: flex;
886
- flex-direction: column;
887
- gap: 4px;
888
- text-align: center;
962
+ .delete-btn[data-v-5ede8782]:active {
963
+ transform: scale(0.95);
889
964
  }
890
- .node-text[data-v-6fb2df95] {
891
- font-weight: 600;
892
- font-size: 14px;
965
+ .condition-node:hover .delete-btn[data-v-5ede8782],
966
+ .condition-node:focus-within .delete-btn[data-v-5ede8782] {
967
+ opacity: 1;
968
+ transform: scale(1);
893
969
  }
894
- .initiator-name[data-v-6fb2df95] {
895
- font-size: 12px;
896
- opacity: 0.9;
897
- background: rgba(255, 255, 255, 0.2);
898
- padding: 2px 8px;
899
- border-radius: 8px;
900
- }
901
- .placeholder-text[data-v-6fb2df95] {
902
- font-size: 11px;
903
- opacity: 0.7;
904
- font-style: italic;
905
- }
906
- .add-node-btn[data-v-6fb2df95] {
907
- appearance: none;
908
- border: 0;
909
- padding: 0;
910
- position: absolute;
911
- left: 50%;
912
- bottom: -20px;
913
- transform: translateX(-50%);
914
- width: 32px;
915
- height: 32px;
916
- border-radius: 50%;
917
- background: linear-gradient(135deg, #1890ff, #722ed1);
918
- color: white;
919
- display: flex;
920
- align-items: center;
921
- justify-content: center;
922
- cursor: pointer;
923
- box-shadow: 0 4px 12px rgba(24, 144, 255, 0.3);
924
- transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
925
- font-size: 16px;
926
- font-weight: bold;
927
- z-index: 10;
928
- }
929
- .add-node-btn[data-v-6fb2df95]:hover {
930
- transform: translateX(-50%) scale(1.1);
931
- box-shadow: 0 6px 20px rgba(24, 144, 255, 0.4);
932
- }
933
- .add-node-btn[data-v-6fb2df95]:focus-visible {
934
- outline: 2px solid #1890ff;
935
- outline-offset: 2px;
936
- }
937
- /* unplugin-vue-components disabled */.approval-node[data-v-e6968a42] {
938
- position: relative;
939
- }
940
- .status-indicator[data-v-e6968a42] {
941
- position: absolute;
942
- top: -4px;
943
- right: -4px;
944
- width: 12px;
945
- height: 12px;
946
- border-radius: 50%;
947
- border: 2px solid white;
948
- z-index: 2;
949
- background: #faad14;
950
- }
951
- .status-indicator.approved[data-v-e6968a42] {
952
- background: #52c41a;
953
- }
954
- .status-indicator.rejected[data-v-e6968a42] {
955
- background: #ff4d4f;
956
- }
957
- .status-indicator.pending[data-v-e6968a42] {
958
- background: #1890ff;
959
- }
960
- .delete-btn[data-v-e6968a42] {
961
- appearance: none;
962
- padding: 0;
963
- position: absolute;
964
- top: -10px;
965
- right: -10px;
966
- width: 24px;
967
- height: 24px;
968
- border-radius: 50%;
969
- background: #ff4d4f;
970
- color: white;
971
- display: flex;
972
- align-items: center;
973
- justify-content: center;
974
- cursor: pointer;
975
- z-index: 100; /* 确保在所有元素之上 */
976
- opacity: 0;
977
- transform: scale(0.8);
978
- transition: all 0.2s ease;
979
- border: 2px solid white;
980
- box-shadow: 0 2px 8px rgba(255, 77, 79, 0.3);
981
- }
982
- .delete-btn[data-v-e6968a42]:hover {
983
- transform: scale(1);
984
- background: #ff7875;
985
- box-shadow: 0 4px 12px rgba(255, 77, 79, 0.5);
986
- }
987
- .delete-btn[data-v-e6968a42]:active {
988
- transform: scale(0.95);
989
- }
990
- .approval-node:hover .delete-btn[data-v-e6968a42],
991
- .approval-node:focus-within .delete-btn[data-v-e6968a42] {
992
- opacity: 1;
993
- transform: scale(1);
994
- }
995
- .node-card[data-v-e6968a42] {
970
+ .node-card[data-v-5ede8782] {
996
971
  background: white;
997
972
  border-radius: 12px;
998
- min-width: 240px;
999
- max-width: 300px;
973
+ min-width: 220px;
1000
974
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
1001
975
  border: 2px solid transparent;
1002
976
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
1003
977
  overflow: hidden;
1004
978
  cursor: pointer;
1005
979
  }
1006
- .node-card[data-v-e6968a42]:hover {
980
+ .node-card[data-v-5ede8782]:hover {
1007
981
  transform: translateY(-2px);
1008
982
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
1009
- border-color: #1890ff;
983
+ border-color: #fa8c16;
1010
984
  }
1011
- .node-header[data-v-e6968a42] {
985
+ .node-header[data-v-5ede8782] {
1012
986
  padding: 12px 16px;
1013
- background: linear-gradient(135deg, #e6f7ff, #f0f9ff);
1014
- border-bottom: 1px solid #91d5ff;
987
+ background: #fff7e6;
988
+ border-bottom: 1px solid #ffe7ba;
1015
989
  display: flex;
1016
990
  align-items: center;
1017
991
  gap: 8px;
1018
- flex-wrap: wrap;
1019
992
  }
1020
- .node-icon[data-v-e6968a42] {
993
+ .node-icon[data-v-5ede8782] {
1021
994
  width: 24px;
1022
995
  height: 24px;
1023
996
  border-radius: 50%;
1024
- background: #1890ff;
997
+ background: #fa8c16;
1025
998
  color: white;
1026
999
  display: flex;
1027
1000
  align-items: center;
1028
1001
  justify-content: center;
1002
+ font-size: 12px;
1029
1003
  }
1030
- .node-title[data-v-e6968a42] {
1004
+ .node-title[data-v-5ede8782] {
1031
1005
  font-weight: 600;
1032
- color: var(--n-text-color-1);
1006
+ color: #262626;
1033
1007
  font-size: 14px;
1034
1008
  flex: 1;
1035
1009
  }
1036
- .node-badge[data-v-e6968a42] {
1037
- background: #1890ff;
1010
+ .node-badge[data-v-5ede8782] {
1011
+ background: #fa8c16;
1038
1012
  color: white;
1039
1013
  padding: 2px 6px;
1040
1014
  border-radius: 10px;
@@ -1043,91 +1017,53 @@ to {
1043
1017
  min-width: 16px;
1044
1018
  text-align: center;
1045
1019
  }
1046
- .approval-mode-badge[data-v-e6968a42] {
1047
- background: #f0f0f0;
1048
- color: #666;
1049
- padding: 2px 6px;
1050
- border-radius: 8px;
1051
- font-size: 10px;
1052
- font-weight: 500;
1053
- }
1054
- .node-content[data-v-e6968a42] {
1020
+ .node-content[data-v-5ede8782] {
1055
1021
  padding: 16px;
1056
1022
  }
1057
- .approvers-list[data-v-e6968a42] {
1023
+ .conditions-list[data-v-5ede8782] {
1058
1024
  display: flex;
1059
1025
  flex-direction: column;
1060
- gap: 8px;
1026
+ gap: 6px;
1061
1027
  }
1062
- .approver-tag[data-v-e6968a42] {
1063
- background: linear-gradient(135deg, #e6f7ff, #f0f9ff);
1064
- border: 1px solid #91d5ff;
1028
+ .condition-tag[data-v-5ede8782] {
1029
+ display: flex;
1030
+ align-items: center;
1031
+ gap: 6px;
1032
+ background: #fff7e6;
1033
+ color: #fa8c16;
1034
+ padding: 6px 10px;
1065
1035
  border-radius: 8px;
1066
- padding: 8px 12px;
1036
+ font-size: 12px;
1037
+ border: 1px solid #ffd591;
1067
1038
  transition: all 0.2s ease;
1068
1039
  }
1069
- .approver-tag[data-v-e6968a42]:hover {
1040
+ .condition-tag[data-v-5ede8782]:hover {
1041
+ background: #ffe7ba;
1070
1042
  transform: translateX(2px);
1071
- box-shadow: 0 2px 8px rgba(24, 144, 255, 0.2);
1072
- }
1073
- .approver-tag .approver-info[data-v-e6968a42] {
1074
- display: flex;
1075
- align-items: center;
1076
- gap: 8px;
1077
- }
1078
- .approver-tag .approver-info .approver-avatar[data-v-e6968a42] {
1079
- flex-shrink: 0;
1080
1043
  }
1081
- .approver-tag .approver-info .approver-details[data-v-e6968a42] {
1082
- display: flex;
1083
- flex-direction: column;
1084
- gap: 2px;
1085
- min-width: 0;
1086
- }
1087
- .approver-tag .approver-info .approver-details .approver-name[data-v-e6968a42] {
1088
- font-weight: 600;
1089
- color: #1890ff;
1090
- font-size: 13px;
1091
- }
1092
- .approver-tag .approver-info .approver-details .approver-dept[data-v-e6968a42] {
1093
- font-size: 11px;
1094
- color: #666;
1095
- background: rgba(0, 0, 0, 0.05);
1096
- padding: 1px 4px;
1097
- border-radius: 4px;
1098
- display: inline-block;
1099
- }
1100
- .approver-tag .approver-info .approver-details .approver-role[data-v-e6968a42] {
1101
- font-size: 10px;
1102
- color: #999;
1044
+ .condition-icon[data-v-5ede8782] {
1045
+ font-weight: bold;
1046
+ color: #d48806;
1103
1047
  }
1104
- .more-count[data-v-e6968a42] {
1048
+ .more-count[data-v-5ede8782] {
1105
1049
  background: #f0f0f0;
1106
1050
  color: #8c8c8c;
1107
- padding: 6px 8px;
1051
+ padding: 4px 8px;
1108
1052
  border-radius: 12px;
1109
1053
  font-size: 12px;
1110
1054
  font-weight: 500;
1111
1055
  text-align: center;
1112
- border: 1px dashed #d9d9d9;
1056
+ margin-top: 4px;
1113
1057
  }
1114
- .placeholder[data-v-e6968a42] {
1058
+ .placeholder[data-v-5ede8782] {
1115
1059
  display: flex;
1116
- flex-direction: column;
1117
1060
  align-items: center;
1118
- justify-content: center;
1119
- gap: 8px;
1061
+ gap: 6px;
1120
1062
  color: #8c8c8c;
1121
1063
  font-size: 12px;
1122
- padding: 20px 0;
1123
- border: 1px dashed #d9d9d9;
1124
- border-radius: 8px;
1125
- background: #fafafa;
1126
- }
1127
- .placeholder span[data-v-e6968a42] {
1128
- font-weight: 500;
1064
+ padding: 8px 0;
1129
1065
  }
1130
- .add-node-btn[data-v-e6968a42] {
1066
+ .add-node-btn[data-v-5ede8782] {
1131
1067
  appearance: none;
1132
1068
  border: 0;
1133
1069
  padding: 0;
@@ -1138,30 +1074,44 @@ to {
1138
1074
  width: 32px;
1139
1075
  height: 32px;
1140
1076
  border-radius: 50%;
1141
- background: linear-gradient(135deg, #1890ff, #722ed1);
1077
+ background: linear-gradient(135deg, #fa8c16, #d48806);
1142
1078
  color: white;
1143
1079
  display: flex;
1144
1080
  align-items: center;
1145
1081
  justify-content: center;
1146
1082
  cursor: pointer;
1147
- box-shadow: 0 4px 12px rgba(24, 144, 255, 0.3);
1083
+ box-shadow: 0 4px 12px rgba(250, 140, 22, 0.3);
1148
1084
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
1085
+ font-size: 16px;
1086
+ font-weight: bold;
1149
1087
  z-index: 10;
1150
1088
  }
1151
- .add-node-btn[data-v-e6968a42]:hover {
1089
+ .add-node-btn[data-v-5ede8782]:hover {
1152
1090
  transform: translateX(-50%) scale(1.1);
1153
- box-shadow: 0 6px 20px rgba(24, 144, 255, 0.4);
1091
+ box-shadow: 0 6px 20px rgba(250, 140, 22, 0.4);
1154
1092
  }
1155
- .add-node-btn[data-v-e6968a42]:focus-visible {
1156
- outline: 2px solid #1890ff;
1093
+ .add-node-btn[data-v-5ede8782]:focus-visible {
1094
+ outline: 2px solid #fa8c16;
1157
1095
  outline-offset: 2px;
1158
1096
  }
1159
- .delete-btn[data-v-e6968a42]:focus-visible {
1097
+ .delete-btn[data-v-5ede8782]:focus-visible {
1160
1098
  opacity: 1;
1161
- outline: 2px solid #1890ff;
1099
+ outline: 2px solid #fa8c16;
1162
1100
  outline-offset: 2px;
1163
1101
  }
1164
- /* unplugin-vue-components disabled */.copy-node[data-v-010e7ec8] {
1102
+
1103
+ /* layer: default */
1104
+ .absolute[data-v-5ede8782]{position:absolute;}
1105
+ .relative[data-v-5ede8782]{position:relative;}
1106
+ .hidden[data-v-5ede8782]{display:none;}
1107
+ .flex[data-v-5ede8782]{display:flex;}
1108
+ .transform[data-v-5ede8782]{transform:translateX(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotateZ(var(--un-rotate-z)) skewX(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z));}
1109
+ .border[data-v-5ede8782]{border-width:1px;}
1110
+ .outline[data-v-5ede8782]{outline-style:solid;}
1111
+ .transition[data-v-5ede8782]{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms;}
1112
+ .ease[data-v-5ede8782]{transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);}
1113
+
1114
+ .copy-node[data-v-010e7ec8] {
1165
1115
  position: relative;
1166
1116
  }
1167
1117
  .status-indicator[data-v-010e7ec8] {
@@ -1338,7 +1288,7 @@ to {
1338
1288
  outline: 2px solid #52c41a;
1339
1289
  outline-offset: 2px;
1340
1290
  }
1341
- /* unplugin-vue-components disabled */
1291
+
1342
1292
  /* layer: default */
1343
1293
  .absolute[data-v-010e7ec8]{position:absolute;}
1344
1294
  .relative[data-v-010e7ec8]{position:relative;}
@@ -1351,46 +1301,92 @@ to {
1351
1301
  .transition[data-v-010e7ec8]{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms;}
1352
1302
  .ease[data-v-010e7ec8]{transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);}
1353
1303
 
1354
- /* unplugin-vue-components disabled */
1304
+ .start-node[data-v-6fb2df95] {
1305
+ position: relative;
1306
+ }
1307
+ .node-content[data-v-6fb2df95] {
1308
+ background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
1309
+ color: white;
1310
+ padding: 16px 20px;
1311
+ border-radius: 12px;
1312
+ display: flex;
1313
+ align-items: center;
1314
+ justify-content: center;
1315
+ gap: 12px;
1316
+ min-width: 160px;
1317
+ box-shadow: 0 4px 20px rgba(102, 126, 234, 0.3);
1318
+ transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
1319
+ cursor: pointer;
1320
+ }
1321
+ .node-content[data-v-6fb2df95]:hover {
1322
+ transform: translateY(-2px);
1323
+ box-shadow: 0 8px 30px rgba(102, 126, 234, 0.4);
1324
+ }
1325
+ .node-icon[data-v-6fb2df95] {
1326
+ font-size: 16px;
1327
+ flex-shrink: 0;
1328
+ }
1329
+ .node-info[data-v-6fb2df95] {
1330
+ display: flex;
1331
+ flex-direction: column;
1332
+ gap: 4px;
1333
+ text-align: center;
1334
+ }
1335
+ .node-text[data-v-6fb2df95] {
1336
+ font-weight: 600;
1337
+ font-size: 14px;
1338
+ }
1339
+ .initiator-name[data-v-6fb2df95] {
1340
+ font-size: 12px;
1341
+ opacity: 0.9;
1342
+ background: rgba(255, 255, 255, 0.2);
1343
+ padding: 2px 8px;
1344
+ border-radius: 8px;
1345
+ }
1346
+ .placeholder-text[data-v-6fb2df95] {
1347
+ font-size: 11px;
1348
+ opacity: 0.7;
1349
+ font-style: italic;
1350
+ }
1351
+ .add-node-btn[data-v-6fb2df95] {
1352
+ appearance: none;
1353
+ border: 0;
1354
+ padding: 0;
1355
+ position: absolute;
1356
+ left: 50%;
1357
+ bottom: -20px;
1358
+ transform: translateX(-50%);
1359
+ width: 32px;
1360
+ height: 32px;
1361
+ border-radius: 50%;
1362
+ background: linear-gradient(135deg, #1890ff, #722ed1);
1363
+ color: white;
1364
+ display: flex;
1365
+ align-items: center;
1366
+ justify-content: center;
1367
+ cursor: pointer;
1368
+ box-shadow: 0 4px 12px rgba(24, 144, 255, 0.3);
1369
+ transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
1370
+ font-size: 16px;
1371
+ font-weight: bold;
1372
+ z-index: 10;
1373
+ }
1374
+ .add-node-btn[data-v-6fb2df95]:hover {
1375
+ transform: translateX(-50%) scale(1.1);
1376
+ box-shadow: 0 6px 20px rgba(24, 144, 255, 0.4);
1377
+ }
1378
+ .add-node-btn[data-v-6fb2df95]:focus-visible {
1379
+ outline: 2px solid #1890ff;
1380
+ outline-offset: 2px;
1381
+ }
1382
+
1355
1383
  /* layer: default */
1356
- .visible[data-v-3d6434f4]{visibility:visible;}
1357
- .start-1[data-v-3d6434f4]{inset-inline-start:0.25rem;}
1358
- .mb-2[data-v-3d6434f4]{margin-bottom:0.5rem;}
1359
- .mb-3[data-v-3d6434f4]{margin-bottom:0.75rem;}
1360
- .mb-4[data-v-3d6434f4]{margin-bottom:1rem;}
1361
- .ml-auto[data-v-3d6434f4]{margin-left:auto;}
1362
- .mt-4[data-v-3d6434f4]{margin-top:1rem;}
1363
- .block[data-v-3d6434f4]{display:block;}
1364
- .max-h-50[data-v-3d6434f4]{max-height:12.5rem;}
1365
- .max-h-60vh[data-v-3d6434f4]{max-height:60vh;}
1366
- .min-h-10[data-v-3d6434f4]{min-height:2.5rem;}
1367
- .w-full[data-v-3d6434f4]{width:100%;}
1368
- .flex[data-v-3d6434f4]{display:flex;}
1369
- .flex-shrink-0[data-v-3d6434f4]{flex-shrink:0;}
1370
- .flex-col[data-v-3d6434f4]{flex-direction:column;}
1371
- .flex-wrap[data-v-3d6434f4]{flex-wrap:wrap;}
1372
- .flex-nowrap[data-v-3d6434f4]{flex-wrap:nowrap;}
1373
- .table[data-v-3d6434f4]{display:table;}
1374
- .items-center[data-v-3d6434f4]{align-items:center;}
1375
- .gap-1[data-v-3d6434f4]{gap:0.25rem;}
1376
- .gap-2[data-v-3d6434f4]{gap:0.5rem;}
1377
- .gap-3[data-v-3d6434f4]{gap:0.75rem;}
1378
- .space-y-3[data-v-3d6434f4]>:not([hidden])~:not([hidden]){--un-space-y-reverse:0;margin-top:calc(0.75rem * calc(1 - var(--un-space-y-reverse)));margin-bottom:calc(0.75rem * var(--un-space-y-reverse));}
1379
- .overflow-y-auto[data-v-3d6434f4]{overflow-y:auto;}
1380
- .border[data-v-3d6434f4]{border-width:1px;}
1381
- .border-gray-200[data-v-3d6434f4]{--un-border-opacity:1;border-color:rgb(229 231 235 / var(--un-border-opacity));}
1382
- .hover\:border-gray-300[data-v-3d6434f4]:hover{--un-border-opacity:1;border-color:rgb(209 213 219 / var(--un-border-opacity));}
1383
- .rounded[data-v-3d6434f4]{border-radius:0.25rem;}
1384
- .rounded-lg[data-v-3d6434f4]{border-radius:0.5rem;}
1385
- .p-2[data-v-3d6434f4]{padding:0.5rem;}
1386
- .p-3[data-v-3d6434f4]{padding:0.75rem;}
1387
- .p-4[data-v-3d6434f4]{padding:1rem;}
1388
- .px-1\.5[data-v-3d6434f4]{padding-left:0.375rem;padding-right:0.375rem;}
1389
- .py-0\.5[data-v-3d6434f4]{padding-top:0.125rem;padding-bottom:0.125rem;}
1390
- .text-base[data-v-3d6434f4]{font-size:1rem;line-height:1.5rem;}
1391
- .text-sm[data-v-3d6434f4]{font-size:0.875rem;line-height:1.25rem;}
1392
- .text-xs[data-v-3d6434f4]{font-size:0.75rem;line-height:1rem;}
1393
- .font-medium[data-v-3d6434f4]{font-weight:500;}
1394
- .font-semibold[data-v-3d6434f4]{font-weight:600;}
1395
- .filter[data-v-3d6434f4]{filter:var(--un-blur) var(--un-brightness) var(--un-contrast) var(--un-drop-shadow) var(--un-grayscale) var(--un-hue-rotate) var(--un-invert) var(--un-saturate) var(--un-sepia);}
1396
- .transition-colors[data-v-3d6434f4]{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms;}
1384
+ .absolute[data-v-6fb2df95]{position:absolute;}
1385
+ .relative[data-v-6fb2df95]{position:relative;}
1386
+ .flex[data-v-6fb2df95]{display:flex;}
1387
+ .flex-shrink[data-v-6fb2df95]{flex-shrink:1;}
1388
+ .transform[data-v-6fb2df95]{transform:translateX(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotateZ(var(--un-rotate-z)) skewX(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z));}
1389
+ .border[data-v-6fb2df95]{border-width:1px;}
1390
+ .italic[data-v-6fb2df95]{font-style:italic;}
1391
+ .outline[data-v-6fb2df95]{outline-style:solid;}
1392
+ .transition[data-v-6fb2df95]{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms;}