@yugu-ui/flow-ui 0.0.0-stage → 0.1.1
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.
- package/README.md +343 -2
- package/dist/adapter/wflow.d.ts +260 -0
- package/dist/base-ui/base-card-item.d.ts +26 -0
- package/dist/base-ui/base-card.d.ts +60 -0
- package/dist/base-ui/base-drawer.d.ts +56 -0
- package/dist/base-ui/base-modal.d.ts +43 -0
- package/dist/base-ui/yg-confirm.d.ts +79 -0
- package/dist/composables/form.d.ts +19 -0
- package/dist/config/FlowConfig.d.ts +34 -0
- package/dist/config/FlowConfigField.d.ts +12 -0
- package/dist/config/FlowConfigFlow/components/FlowIcon.d.ts +11 -0
- package/dist/config/FlowConfigFlow/components/FlowNodeCard.d.ts +7 -0
- package/dist/config/FlowConfigFlow/components/NodeConfigDrawer/index.d.ts +19 -0
- package/dist/config/FlowConfigFlow/components/NodeConfigDrawer/modules/ApproverConfig.d.ts +7 -0
- package/dist/config/FlowConfigFlow/components/NodeConfigDrawer/modules/CcConfig.d.ts +6 -0
- package/dist/config/FlowConfigFlow/components/NodeConfigDrawer/modules/ConditionConfig.d.ts +8 -0
- package/dist/config/FlowConfigFlow/components/NodeConfigDrawer/modules/StartConfig.d.ts +7 -0
- package/dist/config/FlowConfigFlow/composables/useNodeDrawer.d.ts +9 -0
- package/dist/config/FlowConfigFlow/index.d.ts +18 -0
- package/dist/config/FlowConfigMore.d.ts +12 -0
- package/dist/config/useFcCssVars.d.ts +2 -0
- package/dist/file-preview/file-preview-modal.d.ts +24 -0
- package/dist/file-preview/index.d.ts +21 -0
- package/dist/flow-list/index.d.ts +21 -0
- package/dist/flow-list/modules/FlowListGroup.d.ts +21 -0
- package/dist/flow-list/modules/FlowListItem.d.ts +21 -0
- package/dist/flow-list/types/index.d.ts +20 -0
- package/dist/index.d.ts +18 -0
- package/dist/index.js +6913 -0
- package/dist/person-selector/api/index.d.ts +4 -0
- package/dist/person-selector/composables/useOverflowTags.d.ts +13 -0
- package/dist/person-selector/composables/usePersonData.d.ts +40 -0
- package/dist/person-selector/composables/useSelection.d.ts +42 -0
- package/dist/person-selector/constants/index.d.ts +5 -0
- package/dist/person-selector/index.d.ts +21 -0
- package/dist/person-selector/types/index.d.ts +35 -0
- package/dist/person-selector/utils/index.d.ts +5 -0
- package/dist/provider/index.d.ts +25 -0
- package/dist/provider/key.d.ts +4 -0
- package/dist/provider/types.d.ts +68 -0
- package/dist/style.css +2430 -0
- package/dist/timeline/ApprovalModal.d.ts +47 -0
- package/dist/timeline/FlowAvatar.d.ts +11 -0
- package/dist/timeline/FlowLayout.d.ts +42 -0
- package/dist/timeline/FlowNode.d.ts +103 -0
- package/dist/timeline/flowUserKey.d.ts +18 -0
- package/dist/timeline/types.d.ts +9 -0
- package/dist/utils/common.d.ts +4 -0
- package/package.json +56 -4
package/dist/style.css
ADDED
|
@@ -0,0 +1,2430 @@
|
|
|
1
|
+
@charset "UTF-8";*,::before,::after{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 rgb(0 0 0 / 0);--un-ring-shadow:0 0 rgb(0 0 0 / 0);--un-shadow-inset: ;--un-shadow:0 0 rgb(0 0 0 / 0);--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgb(147 197 253 / 0.5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: ;}::backdrop{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 rgb(0 0 0 / 0);--un-ring-shadow:0 0 rgb(0 0 0 / 0);--un-shadow-inset: ;--un-shadow:0 0 rgb(0 0 0 / 0);--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgb(147 197 253 / 0.5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: ;}.container{width:100%;}.flex-center{display:flex;align-items:center;justify-content:center;}@media (min-width: 640px){.container{max-width:640px;}}@media (min-width: 768px){.container{max-width:768px;}}@media (min-width: 1024px){.container{max-width:1024px;}}@media (min-width: 1280px){.container{max-width:1280px;}}@media (min-width: 1536px){.container{max-width:1536px;}}.visible{visibility:visible;}.absolute{position:absolute;}.fixed{position:fixed;}.relative{position:relative;}.sticky{position:sticky;}.grid{display:grid;}.m5{margin:1.25rem;}.m6{margin:1.5rem;}.block{display:block;}.inline-block{display:inline-block;}.hidden{display:none;}.h-full{height:100%;}.max-w-90\%{max-width:90%;}.w-600px{width:600px;}.w-full{width:100%;}.flex{display:flex;}.inline-flex{display:inline-flex;}.flex-shrink{flex-shrink:1;}.flex-grow{flex-grow:1;}.flex-wrap{flex-wrap:wrap;}.transform{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));}.resize{resize:both;}.break-all{word-break:break-all;}.border{border-width:1px;}.b-t{border-top-width:1px;}.border-\[var\(--n-border-color\)\]{border-color:var(--n-border-color);}.rounded{border-radius:0.25rem;}.border-solid{border-style:solid;}.bg-black{--un-bg-opacity:1;background-color:rgb(0 0 0 / var(--un-bg-opacity));}.px{padding-left:1rem;padding-right:1rem;}.pt-\[var\(--n-padding-top\)\]\!{padding-top:var(--n-padding-top) !important;}.tabular-nums{--un-numeric-spacing:tabular-nums;font-variant-numeric:var(--un-ordinal) var(--un-slashed-zero) var(--un-numeric-figure) var(--un-numeric-spacing) var(--un-numeric-fraction);}.tab{-moz-tab-size:4;-o-tab-size:4;tab-size:4;}.blur{--un-blur:blur(8px);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);}.filter{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);}.transition{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;}.ease{transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);}
|
|
2
|
+
/* Developed collaboratively with vscode - 改动代码行数: 1行(style 块改用 scss 并做 BEM 嵌套整理,硬编码色改用 --fc-* 主题变量) */
|
|
3
|
+
/* Developed collaboratively with vscode - 改动代码行数: 20行 */
|
|
4
|
+
/* 主题变量 --fc-* 由顶层 FlowConfig.vue 通过 useThemeVars 注入 */
|
|
5
|
+
.flow-config-condition[data-v-314ac215] {
|
|
6
|
+
display: flex;
|
|
7
|
+
flex-direction: column;
|
|
8
|
+
gap: 12px;
|
|
9
|
+
min-height: 100%;
|
|
10
|
+
padding: 16px;
|
|
11
|
+
/* Developed collaboratively with vscode - 改动代码行数: 1行(恢复与外层卡片同色的背景) */
|
|
12
|
+
background: var(--fc-card-bg);
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
/* 顶部工具栏 */
|
|
16
|
+
.fcc-toolbar[data-v-314ac215] {
|
|
17
|
+
display: flex;
|
|
18
|
+
align-items: center;
|
|
19
|
+
gap: 10px;
|
|
20
|
+
flex-shrink: 0;
|
|
21
|
+
}
|
|
22
|
+
.fcc-toolbar__title[data-v-314ac215] {
|
|
23
|
+
margin-right: auto;
|
|
24
|
+
font-size: 14px;
|
|
25
|
+
font-weight: 500;
|
|
26
|
+
color: var(--fc-text-color);
|
|
27
|
+
border-left: 3px solid var(--fc-primary-color);
|
|
28
|
+
padding-left: 8px;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
/* 通用按钮 */
|
|
32
|
+
/* Developed collaboratively with vscode - 改动代码行数: 12行+删除10行(fcc-btn 与 fcc-mini-btn 共享按钮骨架声明合并:background/border/border-radius/cursor/transition 与 hover 主色染色逐字相同,抽为共享选择器;尺寸/文案色差异与 --primary、--danger/disabled 修饰各自保留,均为独立属性且相对级联顺序不变,编译产物与原独立声明等价) */
|
|
33
|
+
.fcc-btn[data-v-314ac215],
|
|
34
|
+
.fcc-mini-btn[data-v-314ac215] {
|
|
35
|
+
background: var(--fc-card-bg);
|
|
36
|
+
border: 1px solid var(--fc-border-color);
|
|
37
|
+
border-radius: 4px;
|
|
38
|
+
cursor: pointer;
|
|
39
|
+
transition: all 0.15s ease;
|
|
40
|
+
}
|
|
41
|
+
.fcc-btn[data-v-314ac215]:hover,
|
|
42
|
+
.fcc-mini-btn[data-v-314ac215]:hover {
|
|
43
|
+
color: var(--fc-primary-color);
|
|
44
|
+
border-color: var(--fc-primary-color);
|
|
45
|
+
}
|
|
46
|
+
.fcc-btn[data-v-314ac215] {
|
|
47
|
+
padding: 6px 14px;
|
|
48
|
+
font-size: 13px;
|
|
49
|
+
color: var(--fc-text-color);
|
|
50
|
+
}
|
|
51
|
+
.fcc-btn--primary[data-v-314ac215] {
|
|
52
|
+
color: #fff;
|
|
53
|
+
background: var(--fc-primary-color);
|
|
54
|
+
border-color: var(--fc-primary-color);
|
|
55
|
+
}
|
|
56
|
+
.fcc-btn--primary[data-v-314ac215]:hover {
|
|
57
|
+
color: #fff;
|
|
58
|
+
opacity: 0.85;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
/* 空状态 */
|
|
62
|
+
.fcc-empty[data-v-314ac215] {
|
|
63
|
+
padding: 48px 0;
|
|
64
|
+
font-size: 13px;
|
|
65
|
+
color: var(--fc-text-color-secondary);
|
|
66
|
+
text-align: center;
|
|
67
|
+
border: 1px dashed var(--fc-border-color);
|
|
68
|
+
border-radius: 8px;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
/* Developed collaboratively with vscode - 改动代码行数: 1行(:deep 覆盖规则收进 .fcc-fields 父块统一管理) */
|
|
72
|
+
/* Developed collaboratively with vscode - 改动代码行数: 34行 */
|
|
73
|
+
/* 字段卡片:NCollapse 折叠面板(重复类名提高优先级,覆盖 naive 默认间距/分隔线) */
|
|
74
|
+
.fcc-fields[data-v-314ac215] {
|
|
75
|
+
display: flex;
|
|
76
|
+
flex-direction: column;
|
|
77
|
+
gap: 12px;
|
|
78
|
+
}
|
|
79
|
+
.fcc-fields[data-v-314ac215] .n-collapse-item.n-collapse-item {
|
|
80
|
+
margin: 0;
|
|
81
|
+
border-top: none;
|
|
82
|
+
background: var(--fc-card-bg);
|
|
83
|
+
border: 1px solid var(--fc-card-border);
|
|
84
|
+
border-radius: 8px;
|
|
85
|
+
overflow: hidden;
|
|
86
|
+
transition: border-color 0.15s ease, box-shadow 0.15s ease;
|
|
87
|
+
}
|
|
88
|
+
.fcc-fields[data-v-314ac215] .n-collapse-item.n-collapse-item:hover {
|
|
89
|
+
border-color: color-mix(in srgb, var(--fc-primary-color) 55%, var(--fc-card-border));
|
|
90
|
+
box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06);
|
|
91
|
+
}
|
|
92
|
+
.fcc-fields[data-v-314ac215] {
|
|
93
|
+
/* 面板头对齐原 fcc-field__head:内边距 / 背景 / 子项间距 */
|
|
94
|
+
}
|
|
95
|
+
.fcc-fields[data-v-314ac215] .n-collapse-item .n-collapse-item__header {
|
|
96
|
+
padding: 10px 14px;
|
|
97
|
+
background: var(--fc-bg-color-secondary);
|
|
98
|
+
user-select: none;
|
|
99
|
+
}
|
|
100
|
+
.fcc-fields[data-v-314ac215] .n-collapse-item__header-main {
|
|
101
|
+
gap: 10px;
|
|
102
|
+
}
|
|
103
|
+
.fcc-fields[data-v-314ac215] {
|
|
104
|
+
/* 内容区内边距由 .fcc-field__body 自管,去掉 naive 默认 padding-top */
|
|
105
|
+
}
|
|
106
|
+
.fcc-fields[data-v-314ac215] .n-collapse-item .n-collapse-item__content-wrapper .n-collapse-item__content-inner {
|
|
107
|
+
padding-top: 0;
|
|
108
|
+
}
|
|
109
|
+
.fcc-fields[data-v-314ac215] {
|
|
110
|
+
/* Developed collaboratively with vscode - 改动代码行数: 20行 */
|
|
111
|
+
/* 拖拽中的原卡片(:class 声明式绑定,占位):虚线描边 + 半透明;实体感由跟随鼠标的
|
|
112
|
+
克隆幽灵承担。幽灵挂在 .n-collapse 根内,继承 naive 与本组件的全部样式 */
|
|
113
|
+
}
|
|
114
|
+
.fcc-fields[data-v-314ac215] .n-collapse-item.is-dragging {
|
|
115
|
+
border-style: dashed;
|
|
116
|
+
border-color: color-mix(in srgb, var(--fc-primary-color) 55%, var(--fc-card-border));
|
|
117
|
+
opacity: 0.5;
|
|
118
|
+
background: color-mix(in srgb, var(--fc-primary-color) 4%, var(--fc-card-bg));
|
|
119
|
+
}
|
|
120
|
+
.fcc-fields[data-v-314ac215] .n-collapse-item.fcc-drag-ghost {
|
|
121
|
+
position: fixed;
|
|
122
|
+
left: 0;
|
|
123
|
+
top: 0;
|
|
124
|
+
z-index: 2000;
|
|
125
|
+
margin: 0;
|
|
126
|
+
opacity: 0.88;
|
|
127
|
+
box-shadow: 0 12px 32px rgba(0, 0, 0, 0.22);
|
|
128
|
+
pointer-events: none;
|
|
129
|
+
will-change: transform;
|
|
130
|
+
}
|
|
131
|
+
.fcc-field__index[data-v-314ac215] {
|
|
132
|
+
flex-shrink: 0;
|
|
133
|
+
display: inline-flex;
|
|
134
|
+
align-items: center;
|
|
135
|
+
justify-content: center;
|
|
136
|
+
width: 20px;
|
|
137
|
+
height: 20px;
|
|
138
|
+
font-size: 12px;
|
|
139
|
+
font-weight: 600;
|
|
140
|
+
color: var(--fc-primary-color);
|
|
141
|
+
background: color-mix(in srgb, var(--fc-primary-color) 12%, transparent);
|
|
142
|
+
border-radius: 6px;
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
/* Developed collaboratively with vscode - 改动代码行数: 24行 */
|
|
146
|
+
/* 头部拖拽句柄(六点 icon,置于最左侧;hover 提亮,按下抓取态) */
|
|
147
|
+
.fcc-field__drag[data-v-314ac215] {
|
|
148
|
+
flex-shrink: 0;
|
|
149
|
+
display: inline-flex;
|
|
150
|
+
align-items: center;
|
|
151
|
+
color: var(--fc-text-color-secondary);
|
|
152
|
+
opacity: 0.55;
|
|
153
|
+
cursor: grab;
|
|
154
|
+
transition: opacity 0.15s ease, color 0.15s ease;
|
|
155
|
+
}
|
|
156
|
+
.fcc-field__drag[data-v-314ac215]:hover {
|
|
157
|
+
opacity: 1;
|
|
158
|
+
color: var(--fc-primary-color);
|
|
159
|
+
}
|
|
160
|
+
.fcc-field__drag[data-v-314ac215]:active {
|
|
161
|
+
cursor: grabbing;
|
|
162
|
+
}
|
|
163
|
+
.fcc-field__name[data-v-314ac215] {
|
|
164
|
+
max-width: 200px;
|
|
165
|
+
font-size: 13px;
|
|
166
|
+
font-weight: 500;
|
|
167
|
+
color: var(--fc-text-color);
|
|
168
|
+
white-space: nowrap;
|
|
169
|
+
overflow: hidden;
|
|
170
|
+
text-overflow: ellipsis;
|
|
171
|
+
}
|
|
172
|
+
.fcc-field__name.is-empty[data-v-314ac215] {
|
|
173
|
+
color: var(--fc-text-color-secondary);
|
|
174
|
+
font-weight: normal;
|
|
175
|
+
}
|
|
176
|
+
.fcc-field__key[data-v-314ac215] {
|
|
177
|
+
max-width: 160px;
|
|
178
|
+
padding: 1px 6px;
|
|
179
|
+
font-size: 12px;
|
|
180
|
+
font-family: Consolas, Monaco, "Courier New", monospace;
|
|
181
|
+
color: var(--fc-text-color-secondary);
|
|
182
|
+
background: var(--fc-card-bg);
|
|
183
|
+
border: 1px solid var(--fc-border-color);
|
|
184
|
+
border-radius: 4px;
|
|
185
|
+
white-space: nowrap;
|
|
186
|
+
overflow: hidden;
|
|
187
|
+
text-overflow: ellipsis;
|
|
188
|
+
}
|
|
189
|
+
.fcc-field__key.is-empty[data-v-314ac215] {
|
|
190
|
+
display: none;
|
|
191
|
+
}
|
|
192
|
+
.fcc-field__tags[data-v-314ac215] {
|
|
193
|
+
display: flex;
|
|
194
|
+
gap: 6px;
|
|
195
|
+
}
|
|
196
|
+
.fcc-tag[data-v-314ac215] {
|
|
197
|
+
padding: 1px 8px;
|
|
198
|
+
font-size: 12px;
|
|
199
|
+
color: var(--fc-primary-color);
|
|
200
|
+
background: color-mix(in srgb, var(--fc-primary-color) 10%, transparent);
|
|
201
|
+
border: 1px solid color-mix(in srgb, var(--fc-primary-color) 35%, transparent);
|
|
202
|
+
border-radius: 10px;
|
|
203
|
+
/* Developed collaboratively with vscode - 改动代码行数: 3行(warning 硬编码色改用 --fc-warning-color 主题变量,跟随暗色模式) */
|
|
204
|
+
}
|
|
205
|
+
.fcc-tag--remote[data-v-314ac215] {
|
|
206
|
+
color: var(--fc-warning-color);
|
|
207
|
+
background: var(--fc-warning-color-bg);
|
|
208
|
+
border-color: color-mix(in srgb, var(--fc-warning-color) 40%, transparent);
|
|
209
|
+
}
|
|
210
|
+
.fcc-field__ops[data-v-314ac215] {
|
|
211
|
+
margin-left: auto;
|
|
212
|
+
display: flex;
|
|
213
|
+
gap: 6px;
|
|
214
|
+
}
|
|
215
|
+
|
|
216
|
+
/* Developed collaboratively with vscode - 改动代码行数: 16行 */
|
|
217
|
+
/* Developed collaboratively with vscode - 改动代码行数: 1行+删除10行(骨架五项声明与 hover 主色染色并入上方 .fcc-btn, .fcc-mini-btn 共享选择器,输出等价;尺寸/文案色/disabled/--danger 修饰保留) */
|
|
218
|
+
.fcc-mini-btn[data-v-314ac215] {
|
|
219
|
+
padding: 3px 10px;
|
|
220
|
+
font-size: 12px;
|
|
221
|
+
color: var(--fc-text-color-secondary);
|
|
222
|
+
}
|
|
223
|
+
.fcc-mini-btn[data-v-314ac215]:disabled {
|
|
224
|
+
opacity: 0.4;
|
|
225
|
+
cursor: not-allowed;
|
|
226
|
+
}
|
|
227
|
+
.fcc-mini-btn[data-v-314ac215] {
|
|
228
|
+
/* Developed collaboratively with vscode - 改动代码行数: 1行(danger 硬编码色改用 --fc-error-color,跟随暗色模式) */
|
|
229
|
+
}
|
|
230
|
+
.fcc-mini-btn--danger[data-v-314ac215]:hover {
|
|
231
|
+
color: var(--fc-error-color);
|
|
232
|
+
border-color: var(--fc-error-color);
|
|
233
|
+
}
|
|
234
|
+
|
|
235
|
+
/* Developed collaboratively with vscode - 改动代码行数: 73行(BEM 规则收拢为 scss 嵌套,编译产物与原 CSS 等价) */
|
|
236
|
+
/* 卡片主体:配置表单(主表单 5 列、数据源 4 列行式布局,label 右对齐;组件尺寸走 naive size="small") */
|
|
237
|
+
.fcc-field__body[data-v-314ac215] {
|
|
238
|
+
padding: 12px 16px 14px;
|
|
239
|
+
}
|
|
240
|
+
.fcc-grid[data-v-314ac215] {
|
|
241
|
+
display: grid;
|
|
242
|
+
grid-template-columns: repeat(4, minmax(0, 1fr));
|
|
243
|
+
gap: 8px 14px;
|
|
244
|
+
/* 主表单 5 列:开关项占宽小(0.9fr),输入/下拉项占宽大(1.3fr/1.1fr);
|
|
245
|
+
数据源配置区域沿用默认 4 列,保证 span 2 的长文本项布局不乱 */
|
|
246
|
+
}
|
|
247
|
+
.fcc-grid--fields[data-v-314ac215] {
|
|
248
|
+
grid-template-columns: minmax(0, 1.3fr) minmax(0, 1.3fr) minmax(0, 0.9fr) minmax(0, 0.9fr) minmax(0, 1.1fr);
|
|
249
|
+
}
|
|
250
|
+
.fcc-form-item[data-v-314ac215] {
|
|
251
|
+
display: flex;
|
|
252
|
+
align-items: center;
|
|
253
|
+
gap: 8px;
|
|
254
|
+
min-width: 0;
|
|
255
|
+
}
|
|
256
|
+
.fcc-form-item > label[data-v-314ac215] {
|
|
257
|
+
flex-shrink: 0;
|
|
258
|
+
width: 76px;
|
|
259
|
+
text-align: right;
|
|
260
|
+
font-size: 12px;
|
|
261
|
+
color: var(--fc-text-color-secondary);
|
|
262
|
+
white-space: nowrap;
|
|
263
|
+
}
|
|
264
|
+
.fcc-form-item[data-v-314ac215] {
|
|
265
|
+
/* 控件撑满剩余空间 */
|
|
266
|
+
}
|
|
267
|
+
.fcc-form-item[data-v-314ac215] .n-input,
|
|
268
|
+
.fcc-form-item[data-v-314ac215] .n-select {
|
|
269
|
+
flex: 1;
|
|
270
|
+
min-width: 0;
|
|
271
|
+
}
|
|
272
|
+
.fcc-form-item[data-v-314ac215] {
|
|
273
|
+
/* 代码类输入(JSON 参数 / 格式化函数)用等宽字体 */
|
|
274
|
+
}
|
|
275
|
+
.fcc-form-item[data-v-314ac215] .n-input__textarea-el {
|
|
276
|
+
font-family: Consolas, Monaco, "Courier New", monospace;
|
|
277
|
+
font-size: 12px;
|
|
278
|
+
line-height: 1.5;
|
|
279
|
+
}
|
|
280
|
+
.fcc-form-item[data-v-314ac215] {
|
|
281
|
+
/* radio 按钮组跟随瘦身 */
|
|
282
|
+
}
|
|
283
|
+
.fcc-form-item[data-v-314ac215] .n-radio-button__state {
|
|
284
|
+
padding: 4px 10px;
|
|
285
|
+
}
|
|
286
|
+
.fcc-form-item[data-v-314ac215] .n-radio-button__label {
|
|
287
|
+
font-size: 12px;
|
|
288
|
+
}
|
|
289
|
+
|
|
290
|
+
/* Developed collaboratively with vscode - 改动代码行数: 4行(请求地址 NInputGroupLabel:base 地址超长省略,悬浮 title 提示全量) */
|
|
291
|
+
.fcc-fetch-base[data-v-314ac215] {
|
|
292
|
+
max-width: 240px;
|
|
293
|
+
overflow: hidden;
|
|
294
|
+
text-overflow: ellipsis;
|
|
295
|
+
white-space: nowrap;
|
|
296
|
+
}
|
|
297
|
+
.fcc-col--2[data-v-314ac215] {
|
|
298
|
+
grid-column: span 2;
|
|
299
|
+
}
|
|
300
|
+
|
|
301
|
+
/* 分组标题(小标题 + 延伸线) */
|
|
302
|
+
.fcc-group-title[data-v-314ac215] {
|
|
303
|
+
display: flex;
|
|
304
|
+
align-items: center;
|
|
305
|
+
gap: 8px;
|
|
306
|
+
margin: 12px 0 10px;
|
|
307
|
+
font-size: 12px;
|
|
308
|
+
font-weight: 500;
|
|
309
|
+
color: var(--fc-text-color);
|
|
310
|
+
}
|
|
311
|
+
.fcc-group-title span[data-v-314ac215] {
|
|
312
|
+
display: inline-flex;
|
|
313
|
+
align-items: center;
|
|
314
|
+
gap: 6px;
|
|
315
|
+
}
|
|
316
|
+
.fcc-group-title span[data-v-314ac215]::before {
|
|
317
|
+
content: "";
|
|
318
|
+
width: 3px;
|
|
319
|
+
height: 12px;
|
|
320
|
+
background: var(--fc-primary-color);
|
|
321
|
+
border-radius: 2px;
|
|
322
|
+
}
|
|
323
|
+
.fcc-group-title[data-v-314ac215]::after {
|
|
324
|
+
content: "";
|
|
325
|
+
flex: 1;
|
|
326
|
+
height: 1px;
|
|
327
|
+
background: var(--fc-border-color);
|
|
328
|
+
}
|
|
329
|
+
|
|
330
|
+
/* Developed collaboratively with vscode - 改动代码行数: 64行(子区块/选项行/添加按钮收拢为 scss 嵌套) */
|
|
331
|
+
/* 标题行内联开关(远程数据切换) */
|
|
332
|
+
.fcc-inline-switch[data-v-314ac215] {
|
|
333
|
+
display: inline-flex;
|
|
334
|
+
align-items: center;
|
|
335
|
+
gap: 6px;
|
|
336
|
+
font-size: 12px;
|
|
337
|
+
font-weight: normal;
|
|
338
|
+
color: var(--fc-text-color-secondary);
|
|
339
|
+
cursor: pointer;
|
|
340
|
+
}
|
|
341
|
+
|
|
342
|
+
/* 子区块:数据源配置(浅底 + 描边,与外层卡片形成层次) */
|
|
343
|
+
.fcc-sub[data-v-314ac215] {
|
|
344
|
+
padding: 12px 14px;
|
|
345
|
+
background: var(--fc-bg-color-secondary);
|
|
346
|
+
border: 1px solid var(--fc-border-color);
|
|
347
|
+
border-radius: 8px;
|
|
348
|
+
}
|
|
349
|
+
.fcc-sub__head[data-v-314ac215] {
|
|
350
|
+
display: flex;
|
|
351
|
+
align-items: center;
|
|
352
|
+
gap: 8px;
|
|
353
|
+
margin-bottom: 8px;
|
|
354
|
+
font-size: 12px;
|
|
355
|
+
font-weight: 500;
|
|
356
|
+
color: var(--fc-text-color-secondary);
|
|
357
|
+
}
|
|
358
|
+
.fcc-sub__empty[data-v-314ac215] {
|
|
359
|
+
padding: 8px 0;
|
|
360
|
+
font-size: 12px;
|
|
361
|
+
color: var(--fc-text-color-secondary);
|
|
362
|
+
text-align: center;
|
|
363
|
+
}
|
|
364
|
+
|
|
365
|
+
/* 选项编辑行(序号 + 选项名 + 选项值 + 删除) */
|
|
366
|
+
.fcc-option-row[data-v-314ac215] {
|
|
367
|
+
display: grid;
|
|
368
|
+
grid-template-columns: auto minmax(0, 1fr) minmax(0, 1fr) auto;
|
|
369
|
+
gap: 8px;
|
|
370
|
+
align-items: center;
|
|
371
|
+
margin-bottom: 8px;
|
|
372
|
+
}
|
|
373
|
+
.fcc-option-row__index[data-v-314ac215] {
|
|
374
|
+
display: inline-flex;
|
|
375
|
+
align-items: center;
|
|
376
|
+
justify-content: center;
|
|
377
|
+
width: 18px;
|
|
378
|
+
height: 18px;
|
|
379
|
+
font-size: 11px;
|
|
380
|
+
color: var(--fc-text-color-secondary);
|
|
381
|
+
background: var(--fc-card-bg);
|
|
382
|
+
border: 1px solid var(--fc-border-color);
|
|
383
|
+
border-radius: 50%;
|
|
384
|
+
}
|
|
385
|
+
|
|
386
|
+
/* 整行虚线添加按钮 */
|
|
387
|
+
.fcc-add-row[data-v-314ac215] {
|
|
388
|
+
width: 100%;
|
|
389
|
+
padding: 6px 0;
|
|
390
|
+
font-size: 12px;
|
|
391
|
+
color: var(--fc-primary-color);
|
|
392
|
+
background: transparent;
|
|
393
|
+
border: 1px dashed color-mix(in srgb, var(--fc-primary-color) 45%, transparent);
|
|
394
|
+
border-radius: 6px;
|
|
395
|
+
cursor: pointer;
|
|
396
|
+
transition: all 0.15s ease;
|
|
397
|
+
}
|
|
398
|
+
.fcc-add-row[data-v-314ac215]:hover {
|
|
399
|
+
background: color-mix(in srgb, var(--fc-primary-color) 8%, transparent);
|
|
400
|
+
border-color: var(--fc-primary-color);
|
|
401
|
+
}
|
|
402
|
+
/* Developed collaboratively with vscode - 改动代码行数: 1行(style 块改用 scss) */
|
|
403
|
+
/* Developed collaboratively with vscode - 改动代码行数: 3行 */
|
|
404
|
+
.fc-icon[data-v-65188f30] {
|
|
405
|
+
display: inline-block;
|
|
406
|
+
vertical-align: -0.15em;
|
|
407
|
+
flex-shrink: 0;
|
|
408
|
+
}
|
|
409
|
+
/* Developed collaboratively with vscode - 改动代码行数: 2行 */
|
|
410
|
+
/* 样式拆分至同目录 index.scss(SCSS 嵌套精简体积);@use 内联进本块,仍受 scoped 隔离 */
|
|
411
|
+
/* Developed collaboratively with vscode - 改动代码行数: 598行 */
|
|
412
|
+
/*
|
|
413
|
+
* PersonSelector 组件样式(自 index.vue \3c style> 块拆分为 SCSS,经 \3c style scoped lang="scss"> @use 引入,同样受 scoped 隔离)
|
|
414
|
+
* 主题变量:原 --y-* 变量本项目不存在,Naive UI NEl 也不注入 --n-* 变量,
|
|
415
|
+
* 故在组件根定义 --ps-* 语义变量,全部推导自项目全局 RGB 通道变量(:root 注入,html.dark 自动覆盖)
|
|
416
|
+
*/
|
|
417
|
+
/* 弹窗 body 限高封顶:内容再多也不超过视口,卡片标题栏与底部操作按钮始终可见,内部各区自行收缩/滚动 */
|
|
418
|
+
/* padding+负margin 各留 4px 阴影渲染空间,抵消后内容位置不变,避免 overflow 裁剪搜索框 focus 阴影 */
|
|
419
|
+
.person-selector__body[data-v-fe31f4e2] {
|
|
420
|
+
position: relative;
|
|
421
|
+
display: flex;
|
|
422
|
+
flex-direction: column;
|
|
423
|
+
max-height: calc(100vh - 200px);
|
|
424
|
+
overflow-y: auto;
|
|
425
|
+
padding: 4px;
|
|
426
|
+
margin: -4px;
|
|
427
|
+
}
|
|
428
|
+
.person-selector__body--loading[data-v-fe31f4e2] {
|
|
429
|
+
pointer-events: none;
|
|
430
|
+
}
|
|
431
|
+
.person-selector__loading[data-v-fe31f4e2] {
|
|
432
|
+
position: absolute;
|
|
433
|
+
inset: 0;
|
|
434
|
+
z-index: 10;
|
|
435
|
+
display: flex;
|
|
436
|
+
flex-direction: column;
|
|
437
|
+
align-items: center;
|
|
438
|
+
justify-content: center;
|
|
439
|
+
gap: 12px;
|
|
440
|
+
background: color-mix(in srgb, var(--ps-bg) 78%, transparent);
|
|
441
|
+
backdrop-filter: blur(2px);
|
|
442
|
+
border-radius: 8px;
|
|
443
|
+
color: var(--ps-text-2);
|
|
444
|
+
font-size: 14px;
|
|
445
|
+
}
|
|
446
|
+
.person-selector__loading-spinner[data-v-fe31f4e2] {
|
|
447
|
+
color: rgb(var(--primary-color));
|
|
448
|
+
animation: person-selector-spin-fe31f4e2 0.8s linear infinite;
|
|
449
|
+
}
|
|
450
|
+
@keyframes person-selector-spin-fe31f4e2 {
|
|
451
|
+
from {
|
|
452
|
+
transform: rotate(0deg);
|
|
453
|
+
}
|
|
454
|
+
to {
|
|
455
|
+
transform: rotate(360deg);
|
|
456
|
+
}
|
|
457
|
+
}
|
|
458
|
+
/* 组件级语义变量:唯一事实来源是项目全局 RGB 通道变量 */
|
|
459
|
+
.person-selector[data-v-fe31f4e2],
|
|
460
|
+
.person-selector__body[data-v-fe31f4e2] {
|
|
461
|
+
--ps-border: rgb(var(--base-text-color) / 0.14);
|
|
462
|
+
--ps-border-soft: rgb(var(--base-text-color) / 0.08);
|
|
463
|
+
--ps-text-1: rgb(var(--base-text-color));
|
|
464
|
+
--ps-text-2: rgb(var(--base-text-color) / 0.72);
|
|
465
|
+
--ps-text-3: rgb(var(--base-text-color) / 0.45);
|
|
466
|
+
--ps-bg: rgb(var(--container-bg-color));
|
|
467
|
+
--ps-bg-secondary: rgb(var(--layout-bg-color));
|
|
468
|
+
}
|
|
469
|
+
.person-selector[data-v-fe31f4e2] {
|
|
470
|
+
width: 100%;
|
|
471
|
+
min-width: 0;
|
|
472
|
+
}
|
|
473
|
+
.person-selector__trigger[data-v-fe31f4e2] {
|
|
474
|
+
display: flex;
|
|
475
|
+
align-items: center;
|
|
476
|
+
width: 100%;
|
|
477
|
+
min-height: 34px;
|
|
478
|
+
padding: 0 12px;
|
|
479
|
+
border: 1px solid var(--ps-border);
|
|
480
|
+
border-radius: 8px;
|
|
481
|
+
background: var(--ps-bg);
|
|
482
|
+
cursor: pointer;
|
|
483
|
+
transition: border-color 0.2s, box-shadow 0.2s;
|
|
484
|
+
gap: 6px;
|
|
485
|
+
overflow: hidden;
|
|
486
|
+
}
|
|
487
|
+
.person-selector__trigger[data-v-fe31f4e2]:hover, .person-selector__trigger[data-v-fe31f4e2]:focus-visible {
|
|
488
|
+
border-color: rgb(var(--primary-color));
|
|
489
|
+
box-shadow: 0 0 0 2px rgb(var(--primary-color)/0.2);
|
|
490
|
+
}
|
|
491
|
+
.person-selector__trigger:hover .person-selector__arrow[data-v-fe31f4e2] {
|
|
492
|
+
color: rgb(var(--primary-color));
|
|
493
|
+
}
|
|
494
|
+
.person-selector__tags[data-v-fe31f4e2] {
|
|
495
|
+
display: flex;
|
|
496
|
+
flex-wrap: wrap;
|
|
497
|
+
gap: 4px;
|
|
498
|
+
flex: 1;
|
|
499
|
+
min-width: 0;
|
|
500
|
+
overflow: hidden;
|
|
501
|
+
}
|
|
502
|
+
.person-selector__tags--overflow[data-v-fe31f4e2] {
|
|
503
|
+
flex-wrap: nowrap;
|
|
504
|
+
overflow: hidden;
|
|
505
|
+
}
|
|
506
|
+
.person-selector__tags--overflow .person-selector__tag[data-v-fe31f4e2] {
|
|
507
|
+
flex-shrink: 0;
|
|
508
|
+
}
|
|
509
|
+
|
|
510
|
+
/* 级联顺序注意:--more 需保持在 __tag 基础规则之前(基础样式的背景/边框覆盖此处声明,维持原视觉) */
|
|
511
|
+
.person-selector__tag--more[data-v-fe31f4e2] {
|
|
512
|
+
padding: 0 6px;
|
|
513
|
+
color: var(--ps-text-2);
|
|
514
|
+
background: var(--ps-bg-secondary);
|
|
515
|
+
border-color: var(--ps-border);
|
|
516
|
+
font-weight: 500;
|
|
517
|
+
height: 24px;
|
|
518
|
+
line-height: 24px;
|
|
519
|
+
font-size: 12px;
|
|
520
|
+
}
|
|
521
|
+
.person-selector__tag[data-v-fe31f4e2] {
|
|
522
|
+
display: inline-flex;
|
|
523
|
+
align-items: center;
|
|
524
|
+
gap: 4px;
|
|
525
|
+
padding: 0 6px 0 2px;
|
|
526
|
+
background: rgb(var(--primary-color)/0.1);
|
|
527
|
+
border: 1px solid rgb(var(--primary-color)/0.1);
|
|
528
|
+
border-radius: 4px;
|
|
529
|
+
font-size: 12px;
|
|
530
|
+
color: rgb(var(--primary-color));
|
|
531
|
+
max-width: 140px;
|
|
532
|
+
overflow: hidden;
|
|
533
|
+
height: 24px;
|
|
534
|
+
flex-shrink: 0;
|
|
535
|
+
}
|
|
536
|
+
.person-selector__tag-avatar[data-v-fe31f4e2] {
|
|
537
|
+
display: inline-flex;
|
|
538
|
+
align-items: center;
|
|
539
|
+
justify-content: center;
|
|
540
|
+
width: 18px;
|
|
541
|
+
height: 18px;
|
|
542
|
+
border-radius: 50%;
|
|
543
|
+
color: #fff;
|
|
544
|
+
font-size: 10px;
|
|
545
|
+
font-weight: 600;
|
|
546
|
+
flex-shrink: 0;
|
|
547
|
+
}
|
|
548
|
+
.person-selector__tag-name[data-v-fe31f4e2] {
|
|
549
|
+
overflow: hidden;
|
|
550
|
+
text-overflow: ellipsis;
|
|
551
|
+
white-space: nowrap;
|
|
552
|
+
}
|
|
553
|
+
.person-selector__tag-close[data-v-fe31f4e2] {
|
|
554
|
+
display: inline-flex;
|
|
555
|
+
align-items: center;
|
|
556
|
+
justify-content: center;
|
|
557
|
+
width: 16px;
|
|
558
|
+
height: 16px;
|
|
559
|
+
margin-left: 2px;
|
|
560
|
+
font-size: 12px;
|
|
561
|
+
line-height: 1;
|
|
562
|
+
color: var(--ps-text-3);
|
|
563
|
+
cursor: pointer;
|
|
564
|
+
flex-shrink: 0;
|
|
565
|
+
border-radius: 50%;
|
|
566
|
+
transition: color 0.15s, background 0.15s;
|
|
567
|
+
}
|
|
568
|
+
.person-selector__tag-close[data-v-fe31f4e2]:hover {
|
|
569
|
+
color: rgb(var(--error-color));
|
|
570
|
+
background: rgb(var(--error-color)/0.06);
|
|
571
|
+
}
|
|
572
|
+
.person-selector__placeholder[data-v-fe31f4e2] {
|
|
573
|
+
flex: 1;
|
|
574
|
+
color: var(--ps-text-3);
|
|
575
|
+
font-size: 14px;
|
|
576
|
+
user-select: none;
|
|
577
|
+
}
|
|
578
|
+
.person-selector__arrow[data-v-fe31f4e2] {
|
|
579
|
+
display: inline-flex;
|
|
580
|
+
align-items: center;
|
|
581
|
+
color: var(--ps-text-3);
|
|
582
|
+
flex-shrink: 0;
|
|
583
|
+
transition: color 0.2s, transform 0.2s;
|
|
584
|
+
}
|
|
585
|
+
.person-selector__arrow--open[data-v-fe31f4e2] {
|
|
586
|
+
transform: rotate(180deg);
|
|
587
|
+
}
|
|
588
|
+
.person-selector__search[data-v-fe31f4e2] {
|
|
589
|
+
position: relative;
|
|
590
|
+
display: flex;
|
|
591
|
+
align-items: center;
|
|
592
|
+
margin-bottom: 12px;
|
|
593
|
+
padding: 0 12px;
|
|
594
|
+
height: 38px;
|
|
595
|
+
background: var(--ps-bg-secondary);
|
|
596
|
+
border-radius: 10px;
|
|
597
|
+
transition: background 0.2s, box-shadow 0.2s;
|
|
598
|
+
}
|
|
599
|
+
.person-selector__search[data-v-fe31f4e2]:focus-within {
|
|
600
|
+
background: var(--ps-bg);
|
|
601
|
+
box-shadow: 0 0 0 2px rgb(var(--primary-color)/0.25);
|
|
602
|
+
}
|
|
603
|
+
.person-selector__search-icon[data-v-fe31f4e2] {
|
|
604
|
+
color: var(--ps-text-3);
|
|
605
|
+
flex-shrink: 0;
|
|
606
|
+
margin-right: 8px;
|
|
607
|
+
transition: color 0.2s;
|
|
608
|
+
}
|
|
609
|
+
.person-selector__search:focus-within .person-selector__search-icon[data-v-fe31f4e2] {
|
|
610
|
+
color: rgb(var(--primary-color));
|
|
611
|
+
}
|
|
612
|
+
.person-selector__search-input[data-v-fe31f4e2] {
|
|
613
|
+
flex: 1;
|
|
614
|
+
border: none;
|
|
615
|
+
outline: none;
|
|
616
|
+
background: transparent;
|
|
617
|
+
font-size: 14px;
|
|
618
|
+
color: var(--ps-text-1);
|
|
619
|
+
line-height: 22px;
|
|
620
|
+
height: 22px;
|
|
621
|
+
}
|
|
622
|
+
.person-selector__search-input[data-v-fe31f4e2]::placeholder {
|
|
623
|
+
color: var(--ps-text-3);
|
|
624
|
+
}
|
|
625
|
+
.person-selector__search-clear[data-v-fe31f4e2] {
|
|
626
|
+
display: inline-flex;
|
|
627
|
+
align-items: center;
|
|
628
|
+
justify-content: center;
|
|
629
|
+
width: 20px;
|
|
630
|
+
height: 20px;
|
|
631
|
+
font-size: 14px;
|
|
632
|
+
color: var(--ps-text-3);
|
|
633
|
+
cursor: pointer;
|
|
634
|
+
margin-left: 4px;
|
|
635
|
+
line-height: 1;
|
|
636
|
+
border-radius: 50%;
|
|
637
|
+
transition: color 0.15s, background 0.15s;
|
|
638
|
+
}
|
|
639
|
+
.person-selector__search-clear[data-v-fe31f4e2]:hover {
|
|
640
|
+
color: var(--ps-text-1);
|
|
641
|
+
background: rgb(var(--base-text-color)/0.04);
|
|
642
|
+
}
|
|
643
|
+
|
|
644
|
+
/* 高度改为可收缩:已选区占用空间时面板压缩至保底 300px,内部列表仍可滚动 */
|
|
645
|
+
.person-selector__panels[data-v-fe31f4e2] {
|
|
646
|
+
display: flex;
|
|
647
|
+
gap: 12px;
|
|
648
|
+
flex: 0 1 400px;
|
|
649
|
+
min-height: 300px;
|
|
650
|
+
}
|
|
651
|
+
.person-selector__panels--single .person-selector__nav[data-v-fe31f4e2] {
|
|
652
|
+
flex: 1;
|
|
653
|
+
width: auto;
|
|
654
|
+
}
|
|
655
|
+
|
|
656
|
+
/* 面板自身不再滚动:全选栏固定头部 + 列表在内部滚动区滚动;overflow: hidden 兜底裁剪意外溢出 */
|
|
657
|
+
.person-selector__nav[data-v-fe31f4e2],
|
|
658
|
+
.person-selector__people[data-v-fe31f4e2] {
|
|
659
|
+
border: 1px solid var(--ps-border);
|
|
660
|
+
border-radius: 10px;
|
|
661
|
+
background: var(--ps-bg);
|
|
662
|
+
padding: 12px;
|
|
663
|
+
overflow: hidden;
|
|
664
|
+
}
|
|
665
|
+
.person-selector__nav[data-v-fe31f4e2] {
|
|
666
|
+
width: 220px;
|
|
667
|
+
flex-shrink: 0;
|
|
668
|
+
display: flex;
|
|
669
|
+
flex-direction: column;
|
|
670
|
+
}
|
|
671
|
+
|
|
672
|
+
/* 人员面板改纵向 flex:全选栏固定头部,列表滚动区占满剩余高度(结构同左侧面板) */
|
|
673
|
+
.person-selector__people[data-v-fe31f4e2] {
|
|
674
|
+
flex: 1;
|
|
675
|
+
min-width: 0;
|
|
676
|
+
display: flex;
|
|
677
|
+
flex-direction: column;
|
|
678
|
+
}
|
|
679
|
+
.person-selector__nav-tabs[data-v-fe31f4e2] {
|
|
680
|
+
margin-bottom: 12px;
|
|
681
|
+
flex-shrink: 0;
|
|
682
|
+
}
|
|
683
|
+
|
|
684
|
+
/* 部门/角色列表滚动区:负右外边距抵消面板右侧内边距让滚动条贴近边框,右内边距维持内容与滑块间距 */
|
|
685
|
+
.person-selector__nav-content[data-v-fe31f4e2] {
|
|
686
|
+
flex: 1;
|
|
687
|
+
overflow-y: auto;
|
|
688
|
+
min-height: 0;
|
|
689
|
+
margin-right: -8px;
|
|
690
|
+
padding-right: 4px;
|
|
691
|
+
}
|
|
692
|
+
.person-selector__nav-content[data-v-fe31f4e2]::-webkit-scrollbar {
|
|
693
|
+
width: 8px;
|
|
694
|
+
}
|
|
695
|
+
.person-selector__nav-content[data-v-fe31f4e2]::-webkit-scrollbar-thumb {
|
|
696
|
+
background: rgb(var(--base-text-color)/0.12);
|
|
697
|
+
border-radius: 4px;
|
|
698
|
+
border: 2px solid transparent;
|
|
699
|
+
background-clip: padding-box;
|
|
700
|
+
}
|
|
701
|
+
|
|
702
|
+
/* 人员列表滚动区:负右外边距让滚动条贴到面板右边框,加大滑块右侧透明边使其距边框约 6px,与左侧面板滚动条位置对齐 */
|
|
703
|
+
.person-selector__people-scroll[data-v-fe31f4e2] {
|
|
704
|
+
flex: 1;
|
|
705
|
+
min-height: 0;
|
|
706
|
+
overflow-y: auto;
|
|
707
|
+
margin-right: -12px;
|
|
708
|
+
}
|
|
709
|
+
.person-selector__people-scroll[data-v-fe31f4e2]::-webkit-scrollbar {
|
|
710
|
+
width: 12px;
|
|
711
|
+
}
|
|
712
|
+
.person-selector__people-scroll[data-v-fe31f4e2]::-webkit-scrollbar-thumb {
|
|
713
|
+
background: rgb(var(--base-text-color)/0.12);
|
|
714
|
+
border-radius: 4px;
|
|
715
|
+
border: 2px solid transparent;
|
|
716
|
+
border-right-width: 6px;
|
|
717
|
+
background-clip: padding-box;
|
|
718
|
+
}
|
|
719
|
+
.person-selector__people-scroll[data-v-fe31f4e2]::-webkit-scrollbar-thumb:hover {
|
|
720
|
+
background: rgb(var(--base-text-color)/0.25);
|
|
721
|
+
border: 2px solid transparent;
|
|
722
|
+
border-right-width: 6px;
|
|
723
|
+
background-clip: padding-box;
|
|
724
|
+
}
|
|
725
|
+
|
|
726
|
+
/* 全选栏固定在滚动区外:负左右外边距让分割线贯穿到面板左右边框,自身左右内边距保持勾选框/文字原位置 */
|
|
727
|
+
.person-selector__panel-title[data-v-fe31f4e2] {
|
|
728
|
+
font-size: 13px;
|
|
729
|
+
font-weight: 600;
|
|
730
|
+
color: var(--ps-text-2);
|
|
731
|
+
margin: 0 -12px 8px;
|
|
732
|
+
padding: 0 12px 8px;
|
|
733
|
+
display: flex;
|
|
734
|
+
align-items: center;
|
|
735
|
+
gap: 4px;
|
|
736
|
+
border-bottom: 1px solid var(--ps-border-soft);
|
|
737
|
+
}
|
|
738
|
+
.person-selector__panel-hint[data-v-fe31f4e2] {
|
|
739
|
+
font-weight: 400;
|
|
740
|
+
font-size: 12px;
|
|
741
|
+
color: var(--ps-text-3);
|
|
742
|
+
}
|
|
743
|
+
.person-selector__selected-left[data-v-fe31f4e2] {
|
|
744
|
+
display: inline-flex;
|
|
745
|
+
align-items: center;
|
|
746
|
+
gap: 6px;
|
|
747
|
+
}
|
|
748
|
+
.person-selector__dept-list[data-v-fe31f4e2],
|
|
749
|
+
.person-selector__role-list[data-v-fe31f4e2] {
|
|
750
|
+
display: flex;
|
|
751
|
+
flex-direction: column;
|
|
752
|
+
gap: 2px;
|
|
753
|
+
}
|
|
754
|
+
.person-selector__dept-item[data-v-fe31f4e2],
|
|
755
|
+
.person-selector__role-item[data-v-fe31f4e2] {
|
|
756
|
+
display: flex;
|
|
757
|
+
align-items: center;
|
|
758
|
+
gap: 8px;
|
|
759
|
+
padding: 8px 10px;
|
|
760
|
+
border-radius: 6px;
|
|
761
|
+
font-size: 14px;
|
|
762
|
+
color: var(--ps-text-2);
|
|
763
|
+
cursor: pointer;
|
|
764
|
+
transition: background 0.15s, color 0.15s;
|
|
765
|
+
position: relative;
|
|
766
|
+
/* 长名适配:勾选框/图标/计数徽标不被压缩 */
|
|
767
|
+
}
|
|
768
|
+
.person-selector__dept-item .n-checkbox[data-v-fe31f4e2],
|
|
769
|
+
.person-selector__dept-item > svg[data-v-fe31f4e2],
|
|
770
|
+
.person-selector__role-item .n-checkbox[data-v-fe31f4e2],
|
|
771
|
+
.person-selector__role-item > svg[data-v-fe31f4e2] {
|
|
772
|
+
flex-shrink: 0;
|
|
773
|
+
}
|
|
774
|
+
.person-selector__dept-item[data-v-fe31f4e2]:hover,
|
|
775
|
+
.person-selector__role-item[data-v-fe31f4e2]:hover {
|
|
776
|
+
background: rgb(var(--primary-color)/0.06);
|
|
777
|
+
color: rgb(var(--primary-color));
|
|
778
|
+
}
|
|
779
|
+
.person-selector__dept-item--active[data-v-fe31f4e2],
|
|
780
|
+
.person-selector__role-item--active[data-v-fe31f4e2] {
|
|
781
|
+
background: rgb(var(--primary-color)/0.1);
|
|
782
|
+
color: rgb(var(--primary-color));
|
|
783
|
+
font-weight: 600;
|
|
784
|
+
}
|
|
785
|
+
.person-selector__dept-item--active[data-v-fe31f4e2]::before,
|
|
786
|
+
.person-selector__role-item--active[data-v-fe31f4e2]::before {
|
|
787
|
+
content: "";
|
|
788
|
+
position: absolute;
|
|
789
|
+
left: 0;
|
|
790
|
+
top: 50%;
|
|
791
|
+
transform: translateY(-50%);
|
|
792
|
+
width: 3px;
|
|
793
|
+
height: 16px;
|
|
794
|
+
border-radius: 0 3px 3px 0;
|
|
795
|
+
background: rgb(var(--primary-color));
|
|
796
|
+
}
|
|
797
|
+
.person-selector__dept-item--selected[data-v-fe31f4e2],
|
|
798
|
+
.person-selector__role-item--selected[data-v-fe31f4e2] {
|
|
799
|
+
background: rgb(var(--primary-color)/0.1);
|
|
800
|
+
color: rgb(var(--primary-color));
|
|
801
|
+
}
|
|
802
|
+
|
|
803
|
+
/* 长名适配:名称占满剩余宽度单行省略,悬停由 NEllipsis 仅在溢出时弹出完整文本;已选标签限宽防撑破 */
|
|
804
|
+
.person-selector__dept-name[data-v-fe31f4e2],
|
|
805
|
+
.person-selector__role-name[data-v-fe31f4e2] {
|
|
806
|
+
flex: 1;
|
|
807
|
+
min-width: 0;
|
|
808
|
+
}
|
|
809
|
+
.person-selector__dept-name[data-v-fe31f4e2],
|
|
810
|
+
.person-selector__role-name[data-v-fe31f4e2],
|
|
811
|
+
.person-selector__person-name[data-v-fe31f4e2],
|
|
812
|
+
.person-selector__person-dept[data-v-fe31f4e2],
|
|
813
|
+
.person-selector__stag-name[data-v-fe31f4e2] {
|
|
814
|
+
overflow: hidden;
|
|
815
|
+
text-overflow: ellipsis;
|
|
816
|
+
white-space: nowrap;
|
|
817
|
+
}
|
|
818
|
+
.person-selector__dept-count[data-v-fe31f4e2],
|
|
819
|
+
.person-selector__role-count[data-v-fe31f4e2] {
|
|
820
|
+
flex-shrink: 0;
|
|
821
|
+
margin-left: auto;
|
|
822
|
+
font-size: 12px;
|
|
823
|
+
background: var(--ps-bg-secondary);
|
|
824
|
+
color: var(--ps-text-3);
|
|
825
|
+
padding: 0 6px;
|
|
826
|
+
border-radius: 10px;
|
|
827
|
+
font-weight: 500;
|
|
828
|
+
line-height: 18px;
|
|
829
|
+
}
|
|
830
|
+
.person-selector__dept-item--active .person-selector__dept-count[data-v-fe31f4e2],
|
|
831
|
+
.person-selector__role-item--active .person-selector__role-count[data-v-fe31f4e2] {
|
|
832
|
+
background: rgb(var(--primary-color));
|
|
833
|
+
color: #fff;
|
|
834
|
+
}
|
|
835
|
+
.person-selector__people-list[data-v-fe31f4e2] {
|
|
836
|
+
display: flex;
|
|
837
|
+
flex-direction: column;
|
|
838
|
+
gap: 4px;
|
|
839
|
+
}
|
|
840
|
+
.person-selector__person[data-v-fe31f4e2] {
|
|
841
|
+
display: flex;
|
|
842
|
+
align-items: center;
|
|
843
|
+
gap: 10px;
|
|
844
|
+
padding: 8px 10px;
|
|
845
|
+
border-radius: 6px;
|
|
846
|
+
cursor: pointer;
|
|
847
|
+
transition: background 0.15s;
|
|
848
|
+
}
|
|
849
|
+
.person-selector__person[data-v-fe31f4e2]:hover {
|
|
850
|
+
background: rgb(var(--primary-color)/0.06);
|
|
851
|
+
}
|
|
852
|
+
.person-selector__person--selected[data-v-fe31f4e2] {
|
|
853
|
+
background: rgb(var(--primary-color)/0.1);
|
|
854
|
+
}
|
|
855
|
+
.person-selector__person--disabled[data-v-fe31f4e2] {
|
|
856
|
+
opacity: 0.45;
|
|
857
|
+
cursor: not-allowed;
|
|
858
|
+
pointer-events: none;
|
|
859
|
+
}
|
|
860
|
+
.person-selector__person--disabled .person-selector__person-avatar[data-v-fe31f4e2] {
|
|
861
|
+
filter: grayscale(1);
|
|
862
|
+
}
|
|
863
|
+
.person-selector__person-avatar[data-v-fe31f4e2] {
|
|
864
|
+
display: inline-flex;
|
|
865
|
+
align-items: center;
|
|
866
|
+
justify-content: center;
|
|
867
|
+
width: 34px;
|
|
868
|
+
height: 34px;
|
|
869
|
+
border-radius: 50%;
|
|
870
|
+
color: #fff;
|
|
871
|
+
font-size: 13px;
|
|
872
|
+
font-weight: 600;
|
|
873
|
+
flex-shrink: 0;
|
|
874
|
+
}
|
|
875
|
+
.person-selector__person-info[data-v-fe31f4e2] {
|
|
876
|
+
display: flex;
|
|
877
|
+
flex-direction: column;
|
|
878
|
+
gap: 2px;
|
|
879
|
+
flex: 1;
|
|
880
|
+
min-width: 0;
|
|
881
|
+
}
|
|
882
|
+
.person-selector__person-name[data-v-fe31f4e2] {
|
|
883
|
+
font-size: 14px;
|
|
884
|
+
color: var(--ps-text-1);
|
|
885
|
+
font-weight: 500;
|
|
886
|
+
line-height: 1.4;
|
|
887
|
+
}
|
|
888
|
+
.person-selector__person-dept[data-v-fe31f4e2] {
|
|
889
|
+
font-size: 12px;
|
|
890
|
+
color: var(--ps-text-3);
|
|
891
|
+
line-height: 1.3;
|
|
892
|
+
}
|
|
893
|
+
.person-selector__person-check[data-v-fe31f4e2] {
|
|
894
|
+
display: inline-flex;
|
|
895
|
+
align-items: center;
|
|
896
|
+
justify-content: center;
|
|
897
|
+
width: 20px;
|
|
898
|
+
height: 20px;
|
|
899
|
+
color: #fff;
|
|
900
|
+
flex-shrink: 0;
|
|
901
|
+
background: rgb(var(--primary-color));
|
|
902
|
+
border-radius: 50%;
|
|
903
|
+
/* 组覆盖人员的勾标记:淡主题色实心,区别于散选的实色勾,表达「由组带入」 */
|
|
904
|
+
}
|
|
905
|
+
.person-selector__person-check--covered[data-v-fe31f4e2] {
|
|
906
|
+
background: rgb(var(--primary-color)/0.35);
|
|
907
|
+
}
|
|
908
|
+
.person-selector__empty[data-v-fe31f4e2] {
|
|
909
|
+
display: flex;
|
|
910
|
+
flex-direction: column;
|
|
911
|
+
align-items: center;
|
|
912
|
+
justify-content: center;
|
|
913
|
+
gap: 8px;
|
|
914
|
+
padding: 40px 0;
|
|
915
|
+
color: var(--ps-text-3);
|
|
916
|
+
font-size: 13px;
|
|
917
|
+
}
|
|
918
|
+
.person-selector__empty svg[data-v-fe31f4e2] {
|
|
919
|
+
opacity: 0.3;
|
|
920
|
+
}
|
|
921
|
+
.person-selector__selected[data-v-fe31f4e2] {
|
|
922
|
+
margin-top: 12px;
|
|
923
|
+
padding: 12px;
|
|
924
|
+
background: var(--ps-bg-secondary);
|
|
925
|
+
border-radius: 10px;
|
|
926
|
+
}
|
|
927
|
+
.person-selector__selected-head[data-v-fe31f4e2] {
|
|
928
|
+
display: flex;
|
|
929
|
+
align-items: center;
|
|
930
|
+
justify-content: space-between;
|
|
931
|
+
margin-bottom: 8px;
|
|
932
|
+
font-size: 13px;
|
|
933
|
+
color: var(--ps-text-2);
|
|
934
|
+
}
|
|
935
|
+
.person-selector__selected-head strong[data-v-fe31f4e2] {
|
|
936
|
+
color: rgb(var(--primary-color));
|
|
937
|
+
font-weight: 600;
|
|
938
|
+
}
|
|
939
|
+
|
|
940
|
+
/* 已选标签限高约 3 行,超出在标签区内滚动,避免把整个弹窗撑高 */
|
|
941
|
+
.person-selector__selected-tags[data-v-fe31f4e2] {
|
|
942
|
+
display: flex;
|
|
943
|
+
flex-wrap: wrap;
|
|
944
|
+
gap: 6px;
|
|
945
|
+
max-height: 96px;
|
|
946
|
+
overflow-y: auto;
|
|
947
|
+
padding-right: 4px;
|
|
948
|
+
}
|
|
949
|
+
.person-selector__selected-tags[data-v-fe31f4e2]::-webkit-scrollbar {
|
|
950
|
+
width: 8px;
|
|
951
|
+
}
|
|
952
|
+
.person-selector__selected-tags[data-v-fe31f4e2]::-webkit-scrollbar-thumb {
|
|
953
|
+
background: rgb(var(--base-text-color)/0.12);
|
|
954
|
+
border-radius: 4px;
|
|
955
|
+
border: 2px solid transparent;
|
|
956
|
+
background-clip: padding-box;
|
|
957
|
+
}
|
|
958
|
+
.person-selector__stag[data-v-fe31f4e2] {
|
|
959
|
+
display: inline-flex;
|
|
960
|
+
align-items: center;
|
|
961
|
+
gap: 5px;
|
|
962
|
+
padding: 3px 8px 3px 3px;
|
|
963
|
+
background: var(--ps-bg);
|
|
964
|
+
border: 1px solid var(--ps-border-soft);
|
|
965
|
+
border-radius: 20px;
|
|
966
|
+
font-size: 13px;
|
|
967
|
+
color: var(--ps-text-1);
|
|
968
|
+
transition: border-color 0.15s, box-shadow 0.15s;
|
|
969
|
+
max-width: 100%;
|
|
970
|
+
}
|
|
971
|
+
.person-selector__stag[data-v-fe31f4e2]:hover {
|
|
972
|
+
border-color: rgb(var(--primary-color)/0.4);
|
|
973
|
+
box-shadow: 0 1px 3px rgb(var(--base-text-color)/0.08);
|
|
974
|
+
}
|
|
975
|
+
.person-selector__stag-avatar[data-v-fe31f4e2] {
|
|
976
|
+
display: inline-flex;
|
|
977
|
+
align-items: center;
|
|
978
|
+
justify-content: center;
|
|
979
|
+
width: 20px;
|
|
980
|
+
height: 20px;
|
|
981
|
+
border-radius: 50%;
|
|
982
|
+
background: rgb(var(--primary-color));
|
|
983
|
+
color: #fff;
|
|
984
|
+
font-size: 10px;
|
|
985
|
+
font-weight: 600;
|
|
986
|
+
flex-shrink: 0;
|
|
987
|
+
}
|
|
988
|
+
.person-selector__stag[data-v-fe31f4e2] {
|
|
989
|
+
/* 组标签人数徽标:淡主题色胶囊,呼应导航面板计数徽标;人员标签无徽标以区分「组」与「人」 */
|
|
990
|
+
}
|
|
991
|
+
.person-selector__stag-count[data-v-fe31f4e2] {
|
|
992
|
+
flex-shrink: 0;
|
|
993
|
+
padding: 0 5px;
|
|
994
|
+
border-radius: 8px;
|
|
995
|
+
background: rgb(var(--primary-color)/0.12);
|
|
996
|
+
color: rgb(var(--primary-color));
|
|
997
|
+
font-size: 11px;
|
|
998
|
+
font-weight: 600;
|
|
999
|
+
line-height: 16px;
|
|
1000
|
+
}
|
|
1001
|
+
.person-selector__stag-close[data-v-fe31f4e2] {
|
|
1002
|
+
display: inline-flex;
|
|
1003
|
+
align-items: center;
|
|
1004
|
+
justify-content: center;
|
|
1005
|
+
width: 16px;
|
|
1006
|
+
height: 16px;
|
|
1007
|
+
font-size: 12px;
|
|
1008
|
+
color: var(--ps-text-3);
|
|
1009
|
+
cursor: pointer;
|
|
1010
|
+
line-height: 1;
|
|
1011
|
+
margin-left: 2px;
|
|
1012
|
+
border-radius: 50%;
|
|
1013
|
+
transition: color 0.15s, background 0.15s;
|
|
1014
|
+
}
|
|
1015
|
+
.person-selector__stag-close[data-v-fe31f4e2]:hover {
|
|
1016
|
+
color: rgb(var(--error-color));
|
|
1017
|
+
background: rgb(var(--error-color)/0.06);
|
|
1018
|
+
}
|
|
1019
|
+
/* Developed collaboratively with vscode - 改动代码行数: 1行(style 块改用 scss,:deep 收进父选择器) */
|
|
1020
|
+
/* Developed collaboratively with vscode - 改动代码行数: 6行 */
|
|
1021
|
+
/* 单选竖向排列:让 radio 项换行显示,实现左对齐 */
|
|
1022
|
+
.radio-vertical[data-v-60121398] {
|
|
1023
|
+
display: flex;
|
|
1024
|
+
flex-direction: column;
|
|
1025
|
+
align-items: flex-start;
|
|
1026
|
+
gap: 8px;
|
|
1027
|
+
}
|
|
1028
|
+
.radio-vertical[data-v-60121398] .n-radio {
|
|
1029
|
+
margin-right: 0;
|
|
1030
|
+
margin-left: 0;
|
|
1031
|
+
}
|
|
1032
|
+
/* Developed collaboratively with vscode - 改动代码行数: 257行(全部规则收拢进 .cond 嵌套,编译产物与原 CSS 等价;硬编码青色/灰色改主题变量跟随暗色模式) */
|
|
1033
|
+
.cond[data-v-182807c6] {
|
|
1034
|
+
display: flex;
|
|
1035
|
+
flex-direction: column;
|
|
1036
|
+
gap: 0;
|
|
1037
|
+
width: 100%;
|
|
1038
|
+
}
|
|
1039
|
+
.cond__group[data-v-182807c6] {
|
|
1040
|
+
display: flex;
|
|
1041
|
+
flex-direction: column;
|
|
1042
|
+
/* Developed collaboratively with vscode - 改动代码行数: 4行(条件组整块卡片化:灰底描边圆角,与抽屉白底拉开块状区分) */
|
|
1043
|
+
padding: 10px 12px;
|
|
1044
|
+
background: var(--fc-bg-color);
|
|
1045
|
+
border: 1px solid var(--fc-border-color);
|
|
1046
|
+
border-radius: 8px;
|
|
1047
|
+
}
|
|
1048
|
+
.cond[data-v-182807c6] {
|
|
1049
|
+
/* Developed collaboratively with vscode - 改动代码行数: 15行 */
|
|
1050
|
+
/* 分支进入条件说明:浅蓝信息条 + 左侧主题色竖条装饰 */
|
|
1051
|
+
}
|
|
1052
|
+
.cond__tip[data-v-182807c6] {
|
|
1053
|
+
position: relative;
|
|
1054
|
+
margin-bottom: 10px;
|
|
1055
|
+
padding: 8px 12px 8px 18px;
|
|
1056
|
+
font-size: 12px;
|
|
1057
|
+
line-height: 1.6;
|
|
1058
|
+
/* Developed collaboratively with vscode - 改动代码行数: 2行(提示条改主题变量,跟随暗色模式) */
|
|
1059
|
+
color: var(--fc-text-color-secondary);
|
|
1060
|
+
background: var(--fc-primary-color-bg);
|
|
1061
|
+
border-radius: 6px;
|
|
1062
|
+
}
|
|
1063
|
+
.cond__tip[data-v-182807c6]::before {
|
|
1064
|
+
content: "";
|
|
1065
|
+
position: absolute;
|
|
1066
|
+
top: 9px;
|
|
1067
|
+
bottom: 9px;
|
|
1068
|
+
left: 9px;
|
|
1069
|
+
width: 3px;
|
|
1070
|
+
border-radius: 2px;
|
|
1071
|
+
/* Developed collaboratively with vscode - 改动代码行数: 1行 */
|
|
1072
|
+
background: var(--fc-primary-color);
|
|
1073
|
+
}
|
|
1074
|
+
.cond__group-head[data-v-182807c6] {
|
|
1075
|
+
display: flex;
|
|
1076
|
+
align-items: center;
|
|
1077
|
+
justify-content: space-between;
|
|
1078
|
+
margin-bottom: 8px;
|
|
1079
|
+
}
|
|
1080
|
+
.cond__group-tag[data-v-182807c6] {
|
|
1081
|
+
display: inline-flex;
|
|
1082
|
+
align-items: center;
|
|
1083
|
+
padding: 2px 8px;
|
|
1084
|
+
font-size: 12px;
|
|
1085
|
+
font-weight: 600;
|
|
1086
|
+
/* Developed collaboratively with vscode - 改动代码行数: 2行(紫改主题青色变量,与节点条件色统一;底色半透明,浅暗两态自适应) */
|
|
1087
|
+
color: var(--fc-cyan-color);
|
|
1088
|
+
background: color-mix(in srgb, var(--fc-cyan-color) 14%, transparent);
|
|
1089
|
+
border-radius: 4px;
|
|
1090
|
+
letter-spacing: 0.5px;
|
|
1091
|
+
}
|
|
1092
|
+
.cond__group-head-right[data-v-182807c6] {
|
|
1093
|
+
display: flex;
|
|
1094
|
+
align-items: center;
|
|
1095
|
+
gap: 8px;
|
|
1096
|
+
}
|
|
1097
|
+
.cond__and-hint[data-v-182807c6] {
|
|
1098
|
+
font-size: 11px;
|
|
1099
|
+
/* Developed collaboratively with vscode - 改动代码行数: 1行 */
|
|
1100
|
+
color: var(--fc-text-color-tertiary);
|
|
1101
|
+
}
|
|
1102
|
+
.cond__rules[data-v-182807c6] {
|
|
1103
|
+
display: flex;
|
|
1104
|
+
flex-direction: column;
|
|
1105
|
+
gap: 8px;
|
|
1106
|
+
/* Developed collaboratively with vscode - 改动代码行数: 3行(规则列表不再包框,层次由组灰底卡片 + 规则白条承担) */
|
|
1107
|
+
background: transparent;
|
|
1108
|
+
border: none;
|
|
1109
|
+
padding: 0;
|
|
1110
|
+
}
|
|
1111
|
+
.cond__rule-and[data-v-182807c6] {
|
|
1112
|
+
display: flex;
|
|
1113
|
+
align-items: center;
|
|
1114
|
+
gap: 8px;
|
|
1115
|
+
padding: 2px 0;
|
|
1116
|
+
}
|
|
1117
|
+
.cond__rule[data-v-182807c6] {
|
|
1118
|
+
display: flex;
|
|
1119
|
+
align-items: center;
|
|
1120
|
+
gap: 6px;
|
|
1121
|
+
width: 100%;
|
|
1122
|
+
/* Developed collaboratively with vscode - 改动代码行数: 4行(每条规则独立卡片:卡片底色 + 描边圆角,规则间分割清晰不糊成一坨) */
|
|
1123
|
+
padding: 6px 8px;
|
|
1124
|
+
background: var(--fc-card-bg);
|
|
1125
|
+
border: 1px solid var(--fc-border-color);
|
|
1126
|
+
border-radius: 6px;
|
|
1127
|
+
}
|
|
1128
|
+
.cond[data-v-182807c6] {
|
|
1129
|
+
/* __rule-num 为平级兄弟规则,保持原 CSS 声明顺序(位于 __rule 之后) */
|
|
1130
|
+
}
|
|
1131
|
+
.cond__rule-num[data-v-182807c6] {
|
|
1132
|
+
display: flex;
|
|
1133
|
+
align-items: center;
|
|
1134
|
+
justify-content: center;
|
|
1135
|
+
width: 20px;
|
|
1136
|
+
height: 20px;
|
|
1137
|
+
font-size: 11px;
|
|
1138
|
+
font-weight: 600;
|
|
1139
|
+
/* Developed collaboratively with vscode - 改动代码行数: 2行(序号圈改三级文字色 + 半透明灰底改变量派生,浅暗两态自适应) */
|
|
1140
|
+
color: var(--fc-text-color-tertiary);
|
|
1141
|
+
background: color-mix(in srgb, var(--fc-text-color-tertiary) 14%, transparent);
|
|
1142
|
+
border-radius: 50%;
|
|
1143
|
+
flex-shrink: 0;
|
|
1144
|
+
}
|
|
1145
|
+
.cond[data-v-182807c6] {
|
|
1146
|
+
/* Developed collaboratively with vscode - 改动代码行数: 1行(字段下拉加宽:100px 只够 4 字左右,130px 可完整显示 6 字字段名不出现省略号) */
|
|
1147
|
+
}
|
|
1148
|
+
.cond__field[data-v-182807c6] {
|
|
1149
|
+
width: 130px;
|
|
1150
|
+
flex-shrink: 0;
|
|
1151
|
+
}
|
|
1152
|
+
.cond__op[data-v-182807c6] {
|
|
1153
|
+
width: 90px;
|
|
1154
|
+
flex-shrink: 0;
|
|
1155
|
+
}
|
|
1156
|
+
.cond__value[data-v-182807c6] {
|
|
1157
|
+
flex: 1;
|
|
1158
|
+
min-width: 120px;
|
|
1159
|
+
}
|
|
1160
|
+
.cond__rule-del[data-v-182807c6] {
|
|
1161
|
+
flex-shrink: 0;
|
|
1162
|
+
padding: 4px !important;
|
|
1163
|
+
margin-left: 0;
|
|
1164
|
+
}
|
|
1165
|
+
.cond[data-v-182807c6] {
|
|
1166
|
+
/* Developed collaboratively with vscode - 改动代码行数: 29行 */
|
|
1167
|
+
/* 添加按钮:统一虚线幽灵风格(原生 button 替换 NButton quaternary,去掉内边距 hack) */
|
|
1168
|
+
}
|
|
1169
|
+
.cond__add-btn[data-v-182807c6] {
|
|
1170
|
+
display: flex;
|
|
1171
|
+
align-items: center;
|
|
1172
|
+
justify-content: center;
|
|
1173
|
+
width: 100%;
|
|
1174
|
+
height: 30px;
|
|
1175
|
+
font-size: 12px;
|
|
1176
|
+
color: var(--fc-primary-color);
|
|
1177
|
+
background: transparent;
|
|
1178
|
+
border: 1px dashed var(--fc-border-color);
|
|
1179
|
+
border-radius: 6px;
|
|
1180
|
+
cursor: pointer;
|
|
1181
|
+
transition: background 0.15s ease, border-color 0.15s ease;
|
|
1182
|
+
}
|
|
1183
|
+
.cond__add-btn[data-v-182807c6]:hover {
|
|
1184
|
+
/* 悬停:主题色浅底 + 主题色实线边框 */
|
|
1185
|
+
background: var(--fc-primary-color-bg);
|
|
1186
|
+
border-color: var(--fc-border-color-hover);
|
|
1187
|
+
}
|
|
1188
|
+
.cond__add-btn--rule[data-v-182807c6] {
|
|
1189
|
+
margin-top: 2px;
|
|
1190
|
+
}
|
|
1191
|
+
.cond__add-btn[data-v-182807c6] {
|
|
1192
|
+
/* Developed collaboratively with vscode - 改动代码行数: 7行(拆分对齐规则:组尾按钮左对齐;空状态按钮去掉 flex-start 改为跟随容器居中,与「请添加条件」文字对齐) */
|
|
1193
|
+
/* 添加条件组入口:内容自适应宽度,组尾左对齐(规则内占满容器宽) */
|
|
1194
|
+
}
|
|
1195
|
+
.cond__add-btn--group[data-v-182807c6] {
|
|
1196
|
+
align-self: flex-start;
|
|
1197
|
+
width: auto;
|
|
1198
|
+
padding: 0 14px;
|
|
1199
|
+
margin-top: 10px;
|
|
1200
|
+
}
|
|
1201
|
+
.cond__and-line[data-v-182807c6], .cond__or-line[data-v-182807c6] {
|
|
1202
|
+
flex: 1;
|
|
1203
|
+
height: 1px;
|
|
1204
|
+
/* Developed collaboratively with vscode - 改动代码行数: 1行 */
|
|
1205
|
+
background: linear-gradient(90deg, transparent, var(--fc-border-color), transparent);
|
|
1206
|
+
}
|
|
1207
|
+
.cond__and-text[data-v-182807c6], .cond__or-text[data-v-182807c6] {
|
|
1208
|
+
display: inline-flex;
|
|
1209
|
+
align-items: center;
|
|
1210
|
+
justify-content: center;
|
|
1211
|
+
width: 28px;
|
|
1212
|
+
height: 28px;
|
|
1213
|
+
font-size: 12px;
|
|
1214
|
+
font-weight: 700;
|
|
1215
|
+
border-radius: 50%;
|
|
1216
|
+
flex-shrink: 0;
|
|
1217
|
+
}
|
|
1218
|
+
.cond[data-v-182807c6] {
|
|
1219
|
+
/* Developed collaboratively with vscode - 改动代码行数: 1行(组间距加大,配合「或」线分割更清晰) */
|
|
1220
|
+
}
|
|
1221
|
+
.cond__or[data-v-182807c6] {
|
|
1222
|
+
display: flex;
|
|
1223
|
+
align-items: center;
|
|
1224
|
+
gap: 8px;
|
|
1225
|
+
padding: 10px 0;
|
|
1226
|
+
}
|
|
1227
|
+
.cond__and-text[data-v-182807c6] {
|
|
1228
|
+
/* Developed collaboratively with vscode - 改动代码行数: 3行(「且」圈改主题色三件套,跟随暗色模式) */
|
|
1229
|
+
color: var(--fc-primary-color);
|
|
1230
|
+
background: var(--fc-primary-color-bg);
|
|
1231
|
+
border: 1px solid var(--fc-primary-color-bg);
|
|
1232
|
+
}
|
|
1233
|
+
.cond__or-text[data-v-182807c6] {
|
|
1234
|
+
/* Developed collaboratively with vscode - 改动代码行数: 3行(「或」圈改 warning 主题三件套,--fc-warning-color-bg 为警告色 10% 透明底) */
|
|
1235
|
+
color: var(--fc-warning-color);
|
|
1236
|
+
background: var(--fc-warning-color-bg);
|
|
1237
|
+
border: 1px solid var(--fc-warning-color-bg);
|
|
1238
|
+
}
|
|
1239
|
+
.cond[data-v-182807c6] {
|
|
1240
|
+
/* Developed collaboratively with vscode - 改动代码行数: 13行 */
|
|
1241
|
+
/* 空状态:虚线框居中提示「请添加条件」 */
|
|
1242
|
+
}
|
|
1243
|
+
.cond__empty[data-v-182807c6] {
|
|
1244
|
+
display: flex;
|
|
1245
|
+
flex-direction: column;
|
|
1246
|
+
align-items: center;
|
|
1247
|
+
gap: 10px;
|
|
1248
|
+
padding: 24px 0;
|
|
1249
|
+
/* Developed collaboratively with vscode - 改动代码行数: 2行 */
|
|
1250
|
+
background: var(--fc-bg-color);
|
|
1251
|
+
border: 1px dashed var(--fc-border-color);
|
|
1252
|
+
border-radius: 6px;
|
|
1253
|
+
/* 空状态入口:自适应宽度,水平居中(原为独立后代规则移入此嵌套,特异性 (0,2,0) 仍高于 --group 的 (0,1,0),级联结果不变) */
|
|
1254
|
+
}
|
|
1255
|
+
.cond__empty .cond__add-btn[data-v-182807c6] {
|
|
1256
|
+
width: auto;
|
|
1257
|
+
padding: 0 14px;
|
|
1258
|
+
}
|
|
1259
|
+
.cond__empty-text[data-v-182807c6] {
|
|
1260
|
+
font-size: 13px;
|
|
1261
|
+
/* Developed collaboratively with vscode - 改动代码行数: 1行 */
|
|
1262
|
+
color: var(--fc-text-color-tertiary);
|
|
1263
|
+
}
|
|
1264
|
+
/* Developed collaboratively with vscode - 改动代码行数: 1行(style 块改用 scss,:deep 收进父选择器) */
|
|
1265
|
+
/* Developed collaboratively with vscode - 改动代码行数: 5行 */
|
|
1266
|
+
/* Developed collaboratively with vscode - 改动代码行数: 6行(body 上边距恢复 24px;带 label 的首项补 8px 与标题的间距,条件配置 --no-label 不受影响) */
|
|
1267
|
+
.node-drawer__form[data-v-3485c546] {
|
|
1268
|
+
padding: 0 4px;
|
|
1269
|
+
/* Developed collaboratively with vscode - 改动代码行数: 3行 */
|
|
1270
|
+
}
|
|
1271
|
+
.node-drawer__form[data-v-3485c546] .n-form-item:not(.n-form-item--no-label):first-child {
|
|
1272
|
+
margin-top: 8px;
|
|
1273
|
+
}
|
|
1274
|
+
/* Developed collaboratively with vscode - 改动代码行数: 205行(全部规则收拢进 .fnode 嵌套,编译产物与原 CSS 等价;硬编码色改主题变量跟随暗色模式) */
|
|
1275
|
+
.fnode[data-v-626844a8] {
|
|
1276
|
+
position: relative;
|
|
1277
|
+
display: flex;
|
|
1278
|
+
align-items: center;
|
|
1279
|
+
gap: 12px;
|
|
1280
|
+
width: 100%;
|
|
1281
|
+
height: 100%;
|
|
1282
|
+
padding: 0 14px;
|
|
1283
|
+
background: var(--fc-card-bg);
|
|
1284
|
+
border: 1px solid var(--fc-card-border);
|
|
1285
|
+
border-radius: 8px;
|
|
1286
|
+
/* 节点不可拖拽,鼠标移入显示可点击手势 */
|
|
1287
|
+
cursor: pointer;
|
|
1288
|
+
user-select: none;
|
|
1289
|
+
box-sizing: border-box;
|
|
1290
|
+
transition: border-color 0.15s ease, box-shadow 0.15s ease;
|
|
1291
|
+
/* Developed collaboratively with vscode - 改动代码行数: 8行(审批蓝/抄送橙改主题 primary / warning 变量) */
|
|
1292
|
+
/* 审批 / 抄送节点颜色区分:审批走蓝色、抄送走橙色;
|
|
1293
|
+
渐变起点与边框由类型色和主题卡色 color-mix 生成,亮暗模式自动适配。
|
|
1294
|
+
置于 hover / active 之前,保证悬停与选中态优先级更高 */
|
|
1295
|
+
}
|
|
1296
|
+
.fnode--approver[data-v-626844a8] {
|
|
1297
|
+
border-color: color-mix(in srgb, var(--fc-primary-color) 40%, var(--fc-card-border));
|
|
1298
|
+
background: linear-gradient(135deg, color-mix(in srgb, var(--fc-primary-color) 10%, var(--fc-card-bg)) 0%, var(--fc-card-bg) 60%);
|
|
1299
|
+
}
|
|
1300
|
+
.fnode--cc[data-v-626844a8] {
|
|
1301
|
+
border-color: color-mix(in srgb, var(--fc-warning-color) 40%, var(--fc-card-border));
|
|
1302
|
+
background: linear-gradient(135deg, color-mix(in srgb, var(--fc-warning-color) 10%, var(--fc-card-bg)) 0%, var(--fc-card-bg) 60%);
|
|
1303
|
+
}
|
|
1304
|
+
.fnode[data-v-626844a8]:hover {
|
|
1305
|
+
border-color: var(--fc-border-color-hover);
|
|
1306
|
+
}
|
|
1307
|
+
.fnode--active[data-v-626844a8] {
|
|
1308
|
+
border-color: var(--fc-primary-color);
|
|
1309
|
+
box-shadow: 0 0 0 3px var(--fc-primary-color-bg);
|
|
1310
|
+
}
|
|
1311
|
+
.fnode__icon[data-v-626844a8] {
|
|
1312
|
+
display: flex;
|
|
1313
|
+
align-items: center;
|
|
1314
|
+
justify-content: center;
|
|
1315
|
+
width: 36px;
|
|
1316
|
+
height: 36px;
|
|
1317
|
+
border-radius: 8px;
|
|
1318
|
+
flex-shrink: 0;
|
|
1319
|
+
background: var(--fc-primary-color);
|
|
1320
|
+
}
|
|
1321
|
+
.fnode[data-v-626844a8] {
|
|
1322
|
+
/* Developed collaboratively with vscode - 改动代码行数: 3行(图标色块改主题 success / warning / 三级文字色变量,跟随暗色模式) */
|
|
1323
|
+
}
|
|
1324
|
+
.fnode--start .fnode__icon[data-v-626844a8] {
|
|
1325
|
+
background: var(--fc-success-color);
|
|
1326
|
+
}
|
|
1327
|
+
.fnode--end .fnode__icon[data-v-626844a8] {
|
|
1328
|
+
background: var(--fc-text-color-tertiary);
|
|
1329
|
+
}
|
|
1330
|
+
.fnode--cc .fnode__icon[data-v-626844a8] {
|
|
1331
|
+
background: var(--fc-warning-color);
|
|
1332
|
+
}
|
|
1333
|
+
.fnode[data-v-626844a8] {
|
|
1334
|
+
/* Developed collaboratively with vscode - 改动代码行数: 1行(条件图标色块改主题青色变量) */
|
|
1335
|
+
}
|
|
1336
|
+
.fnode--condition .fnode__icon[data-v-626844a8] {
|
|
1337
|
+
background: var(--fc-cyan-color);
|
|
1338
|
+
}
|
|
1339
|
+
.fnode[data-v-626844a8] {
|
|
1340
|
+
/* Developed collaboratively with vscode - 改动代码行数: 1行(兜底图标硬编码灰改三级文字色变量) */
|
|
1341
|
+
/* 默认条件分支:灰色系(区别于普通条件的青色),表示兜底分支;
|
|
1342
|
+
渐变起点用主题次级背景色、边框用主题卡边框,亮暗模式自动适配。
|
|
1343
|
+
置于 condition 样式之后以覆盖其 icon 背景色 */
|
|
1344
|
+
}
|
|
1345
|
+
.fnode--default-condition[data-v-626844a8] {
|
|
1346
|
+
border-color: var(--fc-card-border);
|
|
1347
|
+
background: linear-gradient(135deg, var(--fc-bg-color-secondary) 0%, var(--fc-card-bg) 60%);
|
|
1348
|
+
}
|
|
1349
|
+
.fnode--default-condition .fnode__icon[data-v-626844a8] {
|
|
1350
|
+
background: var(--fc-text-color-tertiary);
|
|
1351
|
+
}
|
|
1352
|
+
.fnode--default-condition .fnode__title[data-v-626844a8] {
|
|
1353
|
+
color: var(--fc-text-color-secondary);
|
|
1354
|
+
}
|
|
1355
|
+
.fnode[data-v-626844a8] {
|
|
1356
|
+
/* Developed collaboratively with vscode - 改动代码行数: 4行(标签底色改主题次级背景,暗色下不再是亮灰块;--gray 与 __mode 同元素共存且原顺序 gray 在前,必须保持平级兄弟规则且置于 __mode 之前,否则级联反转改变渲染) */
|
|
1357
|
+
}
|
|
1358
|
+
.fnode__mode--gray[data-v-626844a8] {
|
|
1359
|
+
color: var(--fc-text-color-tertiary);
|
|
1360
|
+
background: var(--fc-bg-color-secondary);
|
|
1361
|
+
}
|
|
1362
|
+
.fnode__body[data-v-626844a8] {
|
|
1363
|
+
flex: 1;
|
|
1364
|
+
min-width: 0;
|
|
1365
|
+
}
|
|
1366
|
+
.fnode__title[data-v-626844a8] {
|
|
1367
|
+
font-size: 14px;
|
|
1368
|
+
font-weight: 500;
|
|
1369
|
+
line-height: 1.4;
|
|
1370
|
+
letter-spacing: 0.2px;
|
|
1371
|
+
color: var(--fc-text-color);
|
|
1372
|
+
overflow: hidden;
|
|
1373
|
+
text-overflow: ellipsis;
|
|
1374
|
+
white-space: nowrap;
|
|
1375
|
+
}
|
|
1376
|
+
.fnode[data-v-626844a8] {
|
|
1377
|
+
/* 描述区 flex 布局:人名文本可省略截断,审批方式为独立主题色圆角标签 */
|
|
1378
|
+
}
|
|
1379
|
+
.fnode__desc[data-v-626844a8] {
|
|
1380
|
+
display: flex;
|
|
1381
|
+
align-items: center;
|
|
1382
|
+
gap: 6px;
|
|
1383
|
+
margin-top: 3px;
|
|
1384
|
+
font-size: 12px;
|
|
1385
|
+
line-height: 1.5;
|
|
1386
|
+
color: var(--fc-text-color-tertiary);
|
|
1387
|
+
min-width: 0;
|
|
1388
|
+
overflow: hidden;
|
|
1389
|
+
transition: color 0.15s ease;
|
|
1390
|
+
}
|
|
1391
|
+
.fnode__desc-text[data-v-626844a8] {
|
|
1392
|
+
min-width: 0;
|
|
1393
|
+
overflow: hidden;
|
|
1394
|
+
text-overflow: ellipsis;
|
|
1395
|
+
white-space: nowrap;
|
|
1396
|
+
}
|
|
1397
|
+
.fnode__mode[data-v-626844a8] {
|
|
1398
|
+
flex-shrink: 0;
|
|
1399
|
+
padding: 1px 7px;
|
|
1400
|
+
font-size: 11px;
|
|
1401
|
+
line-height: 16px;
|
|
1402
|
+
color: var(--fc-primary-color);
|
|
1403
|
+
background: var(--fc-primary-color-bg);
|
|
1404
|
+
border-radius: 999px;
|
|
1405
|
+
white-space: nowrap;
|
|
1406
|
+
}
|
|
1407
|
+
.fnode:hover .fnode__desc[data-v-626844a8] {
|
|
1408
|
+
color: var(--fc-text-color-secondary);
|
|
1409
|
+
}
|
|
1410
|
+
.fnode__arrow[data-v-626844a8] {
|
|
1411
|
+
display: inline-flex;
|
|
1412
|
+
align-items: center;
|
|
1413
|
+
flex-shrink: 0;
|
|
1414
|
+
}
|
|
1415
|
+
.fnode__remove[data-v-626844a8] {
|
|
1416
|
+
position: absolute;
|
|
1417
|
+
top: -8px;
|
|
1418
|
+
right: -8px;
|
|
1419
|
+
display: inline-flex;
|
|
1420
|
+
align-items: center;
|
|
1421
|
+
justify-content: center;
|
|
1422
|
+
width: 18px;
|
|
1423
|
+
height: 18px;
|
|
1424
|
+
border-radius: 50%;
|
|
1425
|
+
background: var(--fc-card-bg);
|
|
1426
|
+
border: 1px solid var(--fc-card-border);
|
|
1427
|
+
cursor: pointer;
|
|
1428
|
+
opacity: 0;
|
|
1429
|
+
transition: opacity 0.15s ease;
|
|
1430
|
+
}
|
|
1431
|
+
.fnode:hover .fnode__remove[data-v-626844a8] {
|
|
1432
|
+
opacity: 1;
|
|
1433
|
+
}
|
|
1434
|
+
.fnode--add-condition[data-v-626844a8] {
|
|
1435
|
+
display: flex;
|
|
1436
|
+
align-items: center;
|
|
1437
|
+
justify-content: center;
|
|
1438
|
+
gap: 3px;
|
|
1439
|
+
width: 100%;
|
|
1440
|
+
height: 100%;
|
|
1441
|
+
padding: 0 6px;
|
|
1442
|
+
/* Developed collaboratively with vscode - 改动代码行数: 3行(默认态深青纯色底 + 常驻青色光圈;硬编码深青/青改主题青色变量派生) */
|
|
1443
|
+
background: color-mix(in srgb, var(--fc-cyan-color) 78%, #000);
|
|
1444
|
+
border: 1px solid color-mix(in srgb, var(--fc-cyan-color) 78%, #000);
|
|
1445
|
+
box-shadow: 0 0 0 2px color-mix(in srgb, var(--fc-cyan-color) 12%, transparent);
|
|
1446
|
+
border-radius: 999px;
|
|
1447
|
+
cursor: pointer;
|
|
1448
|
+
user-select: none;
|
|
1449
|
+
box-sizing: border-box;
|
|
1450
|
+
transition: border-color 0.15s ease, box-shadow 0.15s ease;
|
|
1451
|
+
/* Developed collaboratively with vscode - 改动代码行数: 2行(悬停仅提亮底色,光圈常驻不变) */
|
|
1452
|
+
}
|
|
1453
|
+
.fnode--add-condition[data-v-626844a8]:hover {
|
|
1454
|
+
background: var(--fc-cyan-color);
|
|
1455
|
+
border-color: var(--fc-cyan-color);
|
|
1456
|
+
}
|
|
1457
|
+
.fnode--add-condition[data-v-626844a8] {
|
|
1458
|
+
/* __text 与 --add-condition 复合拼接为 .fnode--add-condition__text,非后代选择器 */
|
|
1459
|
+
}
|
|
1460
|
+
.fnode--add-condition__text[data-v-626844a8] {
|
|
1461
|
+
font-size: 11px;
|
|
1462
|
+
line-height: 1;
|
|
1463
|
+
/* Developed collaboratively with vscode - 改动代码行数: 1行(纯色底后文字改白色) */
|
|
1464
|
+
color: #fff;
|
|
1465
|
+
white-space: nowrap;
|
|
1466
|
+
}
|
|
1467
|
+
/* Developed collaboratively with vscode - 改动代码行数: 1行(style 块改用 scss 并做 BEM 嵌套整理) */
|
|
1468
|
+
/* Developed collaboratively with vscode - 改动代码行数: 45行 */
|
|
1469
|
+
.flow-config-flow[data-v-da20dabb] {
|
|
1470
|
+
position: relative;
|
|
1471
|
+
display: flex;
|
|
1472
|
+
flex-direction: column;
|
|
1473
|
+
height: 100%;
|
|
1474
|
+
/* Developed collaboratively with vscode - 改动代码行数: 3行(去除卡片背景/圆角与画布描边,避免与外层卡片形成双边框) */
|
|
1475
|
+
}
|
|
1476
|
+
.flow-config-flow__canvas[data-v-da20dabb] {
|
|
1477
|
+
flex: 1;
|
|
1478
|
+
min-height: 0;
|
|
1479
|
+
background: var(--fc-bg-color-secondary);
|
|
1480
|
+
overflow: hidden;
|
|
1481
|
+
}
|
|
1482
|
+
.flow-config-flow[data-v-da20dabb] {
|
|
1483
|
+
/* Developed collaboratively with vscode - 改动代码行数: 13行(右上角缩放百分比胶囊) */
|
|
1484
|
+
}
|
|
1485
|
+
.flow-config-flow__zoom[data-v-da20dabb] {
|
|
1486
|
+
position: absolute;
|
|
1487
|
+
top: 12px;
|
|
1488
|
+
right: 12px;
|
|
1489
|
+
z-index: 5;
|
|
1490
|
+
padding: 4px 10px;
|
|
1491
|
+
font-size: 12px;
|
|
1492
|
+
line-height: 1;
|
|
1493
|
+
color: var(--fc-text-color-secondary);
|
|
1494
|
+
background: var(--fc-card-bg);
|
|
1495
|
+
border: 1px solid var(--fc-card-border);
|
|
1496
|
+
border-radius: 999px;
|
|
1497
|
+
user-select: none;
|
|
1498
|
+
/* Developed collaboratively with vscode - 改动代码行数: 8行(非 100% 时可点击恢复:指针 + hover 反馈) */
|
|
1499
|
+
}
|
|
1500
|
+
.flow-config-flow__zoom--reset[data-v-da20dabb] {
|
|
1501
|
+
cursor: pointer;
|
|
1502
|
+
}
|
|
1503
|
+
.flow-config-flow__zoom--reset[data-v-da20dabb]:hover {
|
|
1504
|
+
color: var(--fc-text-color);
|
|
1505
|
+
border-color: var(--fc-text-color-secondary);
|
|
1506
|
+
}
|
|
1507
|
+
.flow-config-flow__menu[data-v-da20dabb] {
|
|
1508
|
+
position: absolute;
|
|
1509
|
+
z-index: 10;
|
|
1510
|
+
display: flex;
|
|
1511
|
+
flex-direction: column;
|
|
1512
|
+
gap: 2px;
|
|
1513
|
+
min-width: 120px;
|
|
1514
|
+
padding: 4px;
|
|
1515
|
+
background: var(--fc-card-bg);
|
|
1516
|
+
border: 1px solid var(--fc-card-border);
|
|
1517
|
+
border-radius: 6px;
|
|
1518
|
+
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
|
|
1519
|
+
}
|
|
1520
|
+
.flow-config-flow__menu-item[data-v-da20dabb] {
|
|
1521
|
+
display: flex;
|
|
1522
|
+
align-items: center;
|
|
1523
|
+
gap: 8px;
|
|
1524
|
+
padding: 6px 10px;
|
|
1525
|
+
border-radius: 4px;
|
|
1526
|
+
font-size: 13px;
|
|
1527
|
+
color: var(--fc-text-color);
|
|
1528
|
+
cursor: pointer;
|
|
1529
|
+
transition: background-color 0.15s ease;
|
|
1530
|
+
}
|
|
1531
|
+
.flow-config-flow__menu-item[data-v-da20dabb]:hover {
|
|
1532
|
+
background: var(--fc-bg-color-secondary);
|
|
1533
|
+
}
|
|
1534
|
+
/* Developed collaboratively with vscode - 改动代码行数: 1行(全局 style 块改用 scss) */
|
|
1535
|
+
/* Developed collaboratively with vscode - 改动代码行数: 3行 */
|
|
1536
|
+
.flow-config-flow .x6-port-body {
|
|
1537
|
+
visibility: hidden;
|
|
1538
|
+
}
|
|
1539
|
+
/* Developed collaboratively with vscode - 改动代码行数: 1行(style 块改用 scss) */
|
|
1540
|
+
/* Developed collaboratively with vscode - 改动代码行数: 6行 */
|
|
1541
|
+
.flow-config-more[data-v-7ba16bba] {
|
|
1542
|
+
max-width: 600px;
|
|
1543
|
+
/* Developed collaboratively with vscode - 改动代码行数: 3行(白色背景 + 圆角 + 距外部 20px 边距) */
|
|
1544
|
+
margin: 20px auto;
|
|
1545
|
+
padding: 24px;
|
|
1546
|
+
background: var(--fc-card-bg);
|
|
1547
|
+
border-radius: 8px;
|
|
1548
|
+
/* Developed collaboratively with vscode - 改动代码行数: 1行(柔和投影增强卡片浮起层次感) */
|
|
1549
|
+
box-shadow: 0 2px 12px rgba(0, 0, 0, 0.08);
|
|
1550
|
+
}
|
|
1551
|
+
/* Developed collaboratively with vscode - 改动代码行数: 1行(style 块改用 scss 并做 BEM 嵌套整理) */
|
|
1552
|
+
/* Developed collaboratively with vscode - 改动代码行数: 14行 */
|
|
1553
|
+
.flow-config[data-v-487f26ff] {
|
|
1554
|
+
/* .n-card 根元素自带 flex column 布局与 cardColor 背景,此处只补满高度;
|
|
1555
|
+
overflow: hidden 让底部圆角裁掉子组件直角背景的超出部分 */
|
|
1556
|
+
/* Developed collaboratively with vscode - 改动代码行数: 1行(根容器裁剪圆角外溢出) */
|
|
1557
|
+
height: 100%;
|
|
1558
|
+
overflow: hidden;
|
|
1559
|
+
}
|
|
1560
|
+
.flow-config__header[data-v-487f26ff] {
|
|
1561
|
+
/* header 插槽行:占满卡片头部宽度并作为 title / publish 的 absolute 定位包含块;
|
|
1562
|
+
内容区自身滚动(overflow: auto),头部天然固定,无需 sticky */
|
|
1563
|
+
position: relative;
|
|
1564
|
+
width: 100%;
|
|
1565
|
+
display: flex;
|
|
1566
|
+
align-items: center;
|
|
1567
|
+
justify-content: center;
|
|
1568
|
+
padding: 16px 20px;
|
|
1569
|
+
border-bottom: 1px solid var(--fc-border-color);
|
|
1570
|
+
}
|
|
1571
|
+
.flow-config__title[data-v-487f26ff] {
|
|
1572
|
+
font-size: 15px;
|
|
1573
|
+
font-weight: 500;
|
|
1574
|
+
color: var(--fc-primary-color);
|
|
1575
|
+
letter-spacing: 0.3px;
|
|
1576
|
+
white-space: nowrap;
|
|
1577
|
+
position: absolute;
|
|
1578
|
+
left: 20px;
|
|
1579
|
+
padding-left: 10px;
|
|
1580
|
+
border-left: 3px solid var(--fc-primary-color);
|
|
1581
|
+
}
|
|
1582
|
+
.flow-config__publish[data-v-487f26ff] {
|
|
1583
|
+
position: absolute;
|
|
1584
|
+
right: 20px;
|
|
1585
|
+
}
|
|
1586
|
+
.flow-config[data-v-487f26ff] {
|
|
1587
|
+
/* Developed collaboratively with vscode - 改动代码行数: 7行(NTabs segment 收缩为内容宽度;segment 模式 rail 均分容器宽度,fit-content 下富余为零导致标签文字紧连,补 label 水平内边距还原分段控件观感) */
|
|
1588
|
+
}
|
|
1589
|
+
.flow-config__tabs[data-v-487f26ff] {
|
|
1590
|
+
width: fit-content;
|
|
1591
|
+
}
|
|
1592
|
+
.flow-config__tabs[data-v-487f26ff] .n-tabs-tab__label {
|
|
1593
|
+
padding: 0 12px;
|
|
1594
|
+
}
|
|
1595
|
+
.flow-config[data-v-487f26ff] {
|
|
1596
|
+
/* Developed collaboratively with vscode - 改动代码行数: 9行(内容区 loading:NSpin 链式撑满替代原 body 的 flex 布局职责) */
|
|
1597
|
+
/* NSpin 承载内容区 flex 布局职责,内部容器链式撑满,保证 body 滚动与遮罩覆盖正确 */
|
|
1598
|
+
}
|
|
1599
|
+
.flow-config__spin[data-v-487f26ff] {
|
|
1600
|
+
flex: 1;
|
|
1601
|
+
min-height: 0;
|
|
1602
|
+
}
|
|
1603
|
+
.flow-config__spin[data-v-487f26ff] .n-spin-container,
|
|
1604
|
+
.flow-config__spin[data-v-487f26ff] .n-spin-content {
|
|
1605
|
+
height: 100%;
|
|
1606
|
+
}
|
|
1607
|
+
.flow-config__body[data-v-487f26ff] {
|
|
1608
|
+
height: 100%;
|
|
1609
|
+
overflow: auto;
|
|
1610
|
+
/* 内容区浅色背景,子组件以白色卡片浮于其上 */
|
|
1611
|
+
background: var(--fc-bg-color);
|
|
1612
|
+
}
|
|
1613
|
+
.flow-config__body[data-v-487f26ff] > * {
|
|
1614
|
+
min-height: 100%;
|
|
1615
|
+
}
|
|
1616
|
+
/* Developed collaboratively with vscode - 改动代码行数: 39行 */
|
|
1617
|
+
.file-preview[data-v-e50ab833] {
|
|
1618
|
+
position: relative;
|
|
1619
|
+
width: 100%;
|
|
1620
|
+
overflow: hidden;
|
|
1621
|
+
}
|
|
1622
|
+
.file-preview video[data-v-e50ab833] {
|
|
1623
|
+
object-fit: contain;
|
|
1624
|
+
}
|
|
1625
|
+
.office-spin[data-v-e50ab833] {
|
|
1626
|
+
height: 100%;
|
|
1627
|
+
}
|
|
1628
|
+
.office-spin[data-v-e50ab833] .n-spin-container,
|
|
1629
|
+
.office-spin[data-v-e50ab833] .n-spin-content {
|
|
1630
|
+
height: 100%;
|
|
1631
|
+
}
|
|
1632
|
+
.office-viewer[data-v-e50ab833] .vue-office-docx,
|
|
1633
|
+
.office-viewer[data-v-e50ab833] .vue-office-excel,
|
|
1634
|
+
.office-viewer[data-v-e50ab833] .vue-office-pdf,
|
|
1635
|
+
.office-viewer[data-v-e50ab833] .vue-office-pptx {
|
|
1636
|
+
height: 100%;
|
|
1637
|
+
}
|
|
1638
|
+
.preview-fail-overlay[data-v-e50ab833] {
|
|
1639
|
+
position: absolute;
|
|
1640
|
+
inset: 0;
|
|
1641
|
+
/* Developed collaboratively with vscode - 改动代码行数: 1行(z-index 1→1002:@vue-office/excel 挂载即渲染空网格,其内部 overlayer(z-index:10)、选框(10+)、滚动条(12)、右键菜单(1001) 与遮罩同层叠上下文且更高,原 z-index:1 会被压住——透明 overlayer 盖住遮罩吃掉全部点击导致重试/下载按钮无法点击,选框滚动条透出形成"空网格残留";提升到 1002 盖过库内全部层级) */
|
|
1642
|
+
z-index: 1002;
|
|
1643
|
+
display: flex;
|
|
1644
|
+
flex-direction: column;
|
|
1645
|
+
align-items: center;
|
|
1646
|
+
justify-content: center;
|
|
1647
|
+
gap: 12px;
|
|
1648
|
+
background: #fff;
|
|
1649
|
+
}
|
|
1650
|
+
/* 通用基础样式;尺寸与字号由使用处通过传入的 class 控制(子组件根节点会继承父组件 scoped 样式) */
|
|
1651
|
+
.flow-avatar[data-v-197c08a1] {
|
|
1652
|
+
display: flex;
|
|
1653
|
+
align-items: center;
|
|
1654
|
+
justify-content: center;
|
|
1655
|
+
border-radius: 50%;
|
|
1656
|
+
object-fit: cover;
|
|
1657
|
+
color: #fff;
|
|
1658
|
+
font-weight: 500;
|
|
1659
|
+
}
|
|
1660
|
+
|
|
1661
|
+
/* Developed collaboratively with vscode - 改动代码行数: 1行 */
|
|
1662
|
+
/* 单个节点:展示模式时间列 72 + 间距 12 + 图标 36,选择模式时间在最右端 */
|
|
1663
|
+
.flow-node__item[data-v-bc5f6c3a] {
|
|
1664
|
+
position: relative;
|
|
1665
|
+
display: flex;
|
|
1666
|
+
align-items: flex-start;
|
|
1667
|
+
gap: 12px;
|
|
1668
|
+
/* 底部间距同时作为连接线的延伸区,使线段接到下一个节点图标顶部 */
|
|
1669
|
+
padding-bottom: 28px;
|
|
1670
|
+
}
|
|
1671
|
+
.flow-node__item[data-v-bc5f6c3a]:last-child {
|
|
1672
|
+
padding-bottom: 0;
|
|
1673
|
+
}
|
|
1674
|
+
.flow-node__item[data-v-bc5f6c3a] {
|
|
1675
|
+
/* 节点连接线:从图标下方延伸到项底部,与下一项首尾相接 */
|
|
1676
|
+
}
|
|
1677
|
+
.flow-node__item[data-v-bc5f6c3a]::before {
|
|
1678
|
+
content: "";
|
|
1679
|
+
position: absolute;
|
|
1680
|
+
top: 40px; /* 图标 36 + 间距 4 */
|
|
1681
|
+
bottom: 0;
|
|
1682
|
+
left: 101px; /* 时间列 72 + 间距 12 + 图标半径 18 - 线宽一半 1 */
|
|
1683
|
+
width: 2px;
|
|
1684
|
+
background: var(--flow-border-color);
|
|
1685
|
+
}
|
|
1686
|
+
.flow-node__item[data-v-bc5f6c3a]:last-child::before {
|
|
1687
|
+
content: none;
|
|
1688
|
+
}
|
|
1689
|
+
|
|
1690
|
+
/* Developed collaboratively with vscode - 改动代码行数: 8行 */
|
|
1691
|
+
/* 选择/表单模式:无左侧时间列,连接线随之对齐图标中心 */
|
|
1692
|
+
.flow-node__item--select[data-v-bc5f6c3a]::before,
|
|
1693
|
+
.flow-node__item--form[data-v-bc5f6c3a]::before {
|
|
1694
|
+
left: 17px; /* 图标半径 18 - 线宽一半 1 */
|
|
1695
|
+
}
|
|
1696
|
+
.flow-node__item--select .flow-node__time[data-v-bc5f6c3a] {
|
|
1697
|
+
align-items: flex-end;
|
|
1698
|
+
}
|
|
1699
|
+
|
|
1700
|
+
/* 状态 → 节点名称配色:已完成-主文字 / 进行中-橙黄 / 未开始-弱文字 */
|
|
1701
|
+
.flow-node__item--doing .flow-node__name[data-v-bc5f6c3a] {
|
|
1702
|
+
color: #e6a23c;
|
|
1703
|
+
}
|
|
1704
|
+
.flow-node__item--pending .flow-node__name[data-v-bc5f6c3a] {
|
|
1705
|
+
color: var(--flow-text-color-3);
|
|
1706
|
+
}
|
|
1707
|
+
|
|
1708
|
+
/* Developed collaboratively with vscode - 改动代码行数: 1行 */
|
|
1709
|
+
/* 发生时间:日期、时刻两行(选择模式下移至最右侧并右对齐) */
|
|
1710
|
+
.flow-node__time[data-v-bc5f6c3a] {
|
|
1711
|
+
display: flex;
|
|
1712
|
+
flex-direction: column;
|
|
1713
|
+
flex-shrink: 0;
|
|
1714
|
+
width: 72px;
|
|
1715
|
+
font-size: 12px;
|
|
1716
|
+
line-height: 1.5;
|
|
1717
|
+
font-variant-numeric: tabular-nums;
|
|
1718
|
+
color: var(--flow-text-color-3);
|
|
1719
|
+
}
|
|
1720
|
+
|
|
1721
|
+
/* 节点图标:36 圆形头像或类型图标 */
|
|
1722
|
+
.flow-node__badge[data-v-bc5f6c3a] {
|
|
1723
|
+
position: relative;
|
|
1724
|
+
flex-shrink: 0;
|
|
1725
|
+
width: 36px;
|
|
1726
|
+
height: 36px;
|
|
1727
|
+
}
|
|
1728
|
+
|
|
1729
|
+
/* 结束节点:与连接线同色的灰色实心圆点 */
|
|
1730
|
+
.flow-node__badge-dot[data-v-bc5f6c3a] {
|
|
1731
|
+
position: absolute;
|
|
1732
|
+
top: 50%;
|
|
1733
|
+
left: 50%;
|
|
1734
|
+
width: 10px;
|
|
1735
|
+
height: 10px;
|
|
1736
|
+
transform: translate(-50%, -50%);
|
|
1737
|
+
border-radius: 50%;
|
|
1738
|
+
background: var(--flow-border-color);
|
|
1739
|
+
}
|
|
1740
|
+
|
|
1741
|
+
/* Developed collaboratively with vscode - 改动代码行数: 4行 */
|
|
1742
|
+
/* 流程全部完成时结束节点圆点变绿(结束节点不放对勾徽标,圆点颜色即完成标识) */
|
|
1743
|
+
.flow-node__badge--done .flow-node__badge-dot[data-v-bc5f6c3a] {
|
|
1744
|
+
background: var(--flow-success-color);
|
|
1745
|
+
}
|
|
1746
|
+
|
|
1747
|
+
/* Developed collaboratively with vscode - 改动代码行数: 8行 */
|
|
1748
|
+
/* 基础视觉(圆形/居中/白字)由 FlowAvatar 提供,此处控制尺寸与字号;
|
|
1749
|
+
类型图标容器为原生 div(非 FlowAvatar),需在此补齐居中与圆形 */
|
|
1750
|
+
.flow-node__badge-media[data-v-bc5f6c3a] {
|
|
1751
|
+
display: flex;
|
|
1752
|
+
align-items: center;
|
|
1753
|
+
justify-content: center;
|
|
1754
|
+
width: 100%;
|
|
1755
|
+
height: 100%;
|
|
1756
|
+
border-radius: 50%;
|
|
1757
|
+
font-size: 14px;
|
|
1758
|
+
}
|
|
1759
|
+
|
|
1760
|
+
/* Developed collaboratively with vscode - 改动代码行数: 3行改动(doing 图标橙统一为主题变量并补 color-mix 底色:原 #e6a23c/rgba 单写与 doing 胶囊的主题橙 #D25F00 分裂为两种橙,改后同语义同色且跟随主题) */
|
|
1761
|
+
.flow-node__badge--doing .flow-node__badge-media--type[data-v-bc5f6c3a] {
|
|
1762
|
+
color: var(--flow-warning-color);
|
|
1763
|
+
background: color-mix(in srgb, var(--flow-warning-color) 15%, transparent);
|
|
1764
|
+
}
|
|
1765
|
+
|
|
1766
|
+
/* Developed collaboratively with vscode - 改动代码行数: 1行改动(删除 rgba 兜底行仅保留 color-mix:当前主题下渲染不变) */
|
|
1767
|
+
.flow-node__badge--pending .flow-node__badge-media--type[data-v-bc5f6c3a],
|
|
1768
|
+
.flow-node__badge--done .flow-node__badge-media--type[data-v-bc5f6c3a] {
|
|
1769
|
+
color: var(--flow-text-color-3);
|
|
1770
|
+
background: color-mix(in srgb, var(--flow-text-color-3) 14%, transparent);
|
|
1771
|
+
}
|
|
1772
|
+
|
|
1773
|
+
/* Developed collaboratively with vscode - 改动代码行数: 5行新增(驳回节点图标底色:与 doing/pending 同构的圆形淡红底,补齐 rejected 状态缺失的背景规则——此前驳回到发起人时发起人类型图标透明无圆形背景) */
|
|
1774
|
+
.flow-node__badge--rejected .flow-node__badge-media--type[data-v-bc5f6c3a] {
|
|
1775
|
+
color: var(--flow-error-color);
|
|
1776
|
+
background: color-mix(in srgb, var(--flow-error-color) 15%, transparent);
|
|
1777
|
+
}
|
|
1778
|
+
|
|
1779
|
+
/* Developed collaboratively with vscode - 改动代码行数: 15行 */
|
|
1780
|
+
/* 表单模式(发起流程):图标背景色跟随节点类型,与流程配置画布节点配色一致(发起=success 绿 / 审批=primary 蓝 / 抄送=warning 橙;结束节点仍为灰点) */
|
|
1781
|
+
.flow-node__badge--form-start .flow-node__badge-media--type[data-v-bc5f6c3a] {
|
|
1782
|
+
color: #fff;
|
|
1783
|
+
background: var(--flow-success-color);
|
|
1784
|
+
}
|
|
1785
|
+
.flow-node__badge--form-approver .flow-node__badge-media--type[data-v-bc5f6c3a] {
|
|
1786
|
+
color: #fff;
|
|
1787
|
+
background: var(--flow-primary-color);
|
|
1788
|
+
}
|
|
1789
|
+
.flow-node__badge--form-cc .flow-node__badge-media--type[data-v-bc5f6c3a] {
|
|
1790
|
+
color: #fff;
|
|
1791
|
+
background: var(--flow-warning-color);
|
|
1792
|
+
}
|
|
1793
|
+
.flow-node__badge-icon[data-v-bc5f6c3a] {
|
|
1794
|
+
width: 18px;
|
|
1795
|
+
height: 18px;
|
|
1796
|
+
}
|
|
1797
|
+
|
|
1798
|
+
/* Developed collaboratively with vscode - 改动代码行数: 8行改动(完成/时钟角标共享定位与外观:position/偏移/尺寸/圆角/白字/白描边 11 条声明合并为共享选择器,差异仅各自底色与图标尺寸,计算结果不变) */
|
|
1799
|
+
/* 已完成/进行中角标:图标右下角的圆形徽标,白色描边与头像分离(差异仅底色与图标尺寸) */
|
|
1800
|
+
.flow-node__badge-check[data-v-bc5f6c3a],
|
|
1801
|
+
.flow-node__badge-clock[data-v-bc5f6c3a] {
|
|
1802
|
+
position: absolute;
|
|
1803
|
+
right: -3px;
|
|
1804
|
+
bottom: -3px;
|
|
1805
|
+
display: flex;
|
|
1806
|
+
align-items: center;
|
|
1807
|
+
justify-content: center;
|
|
1808
|
+
width: 13px;
|
|
1809
|
+
height: 13px;
|
|
1810
|
+
border-radius: 50%;
|
|
1811
|
+
color: #fff;
|
|
1812
|
+
box-shadow: 0 0 0 2px #fff;
|
|
1813
|
+
}
|
|
1814
|
+
|
|
1815
|
+
/* Developed collaboratively with vscode - 改动代码行数: 1行改动(删除永不生效的变量兜底 #009a29:flowVars 在组件根与弹层均注入,变量必存在) */
|
|
1816
|
+
/* 已完成角标:绿色圆形对勾 */
|
|
1817
|
+
.flow-node__badge-check[data-v-bc5f6c3a] {
|
|
1818
|
+
background: var(--flow-success-color);
|
|
1819
|
+
}
|
|
1820
|
+
.flow-node__badge-check svg[data-v-bc5f6c3a] {
|
|
1821
|
+
width: 8px;
|
|
1822
|
+
height: 8px;
|
|
1823
|
+
}
|
|
1824
|
+
|
|
1825
|
+
/* Developed collaboratively with vscode - 改动代码行数: 1行改动(时钟角标橙统一为主题 warning 变量,与 doing 胶囊/图标同色且跟随主题) */
|
|
1826
|
+
/* 进行中角标:橙色圆形时钟,与完成角标同位呼应 */
|
|
1827
|
+
.flow-node__badge-clock[data-v-bc5f6c3a] {
|
|
1828
|
+
background: var(--flow-warning-color);
|
|
1829
|
+
}
|
|
1830
|
+
.flow-node__badge-clock svg[data-v-bc5f6c3a] {
|
|
1831
|
+
width: 9px;
|
|
1832
|
+
height: 9px;
|
|
1833
|
+
}
|
|
1834
|
+
|
|
1835
|
+
/* 节点内容 */
|
|
1836
|
+
.flow-node__main[data-v-bc5f6c3a] {
|
|
1837
|
+
flex: 1;
|
|
1838
|
+
min-width: 0;
|
|
1839
|
+
}
|
|
1840
|
+
.flow-node__name[data-v-bc5f6c3a] {
|
|
1841
|
+
font-size: 14px;
|
|
1842
|
+
font-weight: 600;
|
|
1843
|
+
line-height: 1.5;
|
|
1844
|
+
color: var(--flow-text-color-1);
|
|
1845
|
+
}
|
|
1846
|
+
|
|
1847
|
+
/* 人员列表:胶囊形式,淡背景 + 边框,与正文区分 */
|
|
1848
|
+
.flow-node__users[data-v-bc5f6c3a] {
|
|
1849
|
+
display: flex;
|
|
1850
|
+
flex-wrap: wrap;
|
|
1851
|
+
gap: 8px;
|
|
1852
|
+
margin-top: 8px;
|
|
1853
|
+
}
|
|
1854
|
+
|
|
1855
|
+
/* Developed collaboratively with vscode - 改动代码行数: 5行 */
|
|
1856
|
+
/* 表单模式自选审批人:选择器占满内容行,与人员列表同间距 */
|
|
1857
|
+
.flow-node__self-select[data-v-bc5f6c3a] {
|
|
1858
|
+
width: 100%;
|
|
1859
|
+
margin-top: 8px;
|
|
1860
|
+
}
|
|
1861
|
+
|
|
1862
|
+
/* Developed collaboratively with vscode - 改动代码行数: 2行改动(删除 rgba 兜底行仅保留 color-mix:当前主题下渲染不变) */
|
|
1863
|
+
.flow-node__user[data-v-bc5f6c3a] {
|
|
1864
|
+
display: flex;
|
|
1865
|
+
align-items: center;
|
|
1866
|
+
gap: 6px;
|
|
1867
|
+
min-width: 0;
|
|
1868
|
+
padding: 2px 10px 2px 2px;
|
|
1869
|
+
border-radius: 999px;
|
|
1870
|
+
border: 1px solid color-mix(in srgb, var(--flow-text-color-3) 20%, transparent);
|
|
1871
|
+
background: color-mix(in srgb, var(--flow-text-color-3) 6%, transparent);
|
|
1872
|
+
}
|
|
1873
|
+
|
|
1874
|
+
/* Developed collaboratively with vscode - 改动代码行数: 4行 */
|
|
1875
|
+
/* 基础视觉由 FlowAvatar 提供,此处仅控制尺寸与字号 */
|
|
1876
|
+
.flow-node__user-avatar[data-v-bc5f6c3a] {
|
|
1877
|
+
width: 20px;
|
|
1878
|
+
height: 20px;
|
|
1879
|
+
font-size: 11px;
|
|
1880
|
+
}
|
|
1881
|
+
.flow-node__user-name[data-v-bc5f6c3a] {
|
|
1882
|
+
font-size: 12px;
|
|
1883
|
+
color: var(--flow-text-color-2);
|
|
1884
|
+
}
|
|
1885
|
+
|
|
1886
|
+
/* Developed collaboratively with vscode - 改动代码行数: 2行改动(删除 rgba 兜底行仅保留 color-mix:项目主题 success 即 #009A29,当前渲染不变) */
|
|
1887
|
+
/* 已审批人员:淡绿胶囊 */
|
|
1888
|
+
.flow-node__user--done[data-v-bc5f6c3a] {
|
|
1889
|
+
border-color: color-mix(in srgb, var(--flow-success-color) 30%, transparent);
|
|
1890
|
+
background: color-mix(in srgb, var(--flow-success-color) 6%, transparent);
|
|
1891
|
+
}
|
|
1892
|
+
|
|
1893
|
+
/* Developed collaboratively with vscode - 改动代码行数: 2行改动(审批中人员胶囊背景与边框同色系:此前仅换边框色、背景仍是基础灰底,补淡橙背景保持一致) */
|
|
1894
|
+
/* Developed collaboratively with vscode - 改动代码行数: 4行改动(删除 rgba 兜底行仅保留 color-mix,并删除永不生效的 #e6a23c 兜底——新旧浏览器此前 rgba 亮橙与 color-mix 主题橙 #D25F00 两色分裂,删后统一为主题橙) */
|
|
1895
|
+
/* 审批中人员:柔和橙黄边框 + 同色淡背景 */
|
|
1896
|
+
.flow-node__user--doing[data-v-bc5f6c3a] {
|
|
1897
|
+
border-color: color-mix(in srgb, var(--flow-warning-color) 40%, transparent);
|
|
1898
|
+
background: color-mix(in srgb, var(--flow-warning-color) 8%, transparent);
|
|
1899
|
+
}
|
|
1900
|
+
|
|
1901
|
+
/* Developed collaboratively with vscode - 改动代码行数: 7行 */
|
|
1902
|
+
/* 驳回人员:淡红色边框 + 淡红背景(节点内该人员最后一条操作记录为驳回) */
|
|
1903
|
+
.flow-node__user--rejected[data-v-bc5f6c3a] {
|
|
1904
|
+
border-color: color-mix(in srgb, var(--flow-error-color) 40%, transparent);
|
|
1905
|
+
background: color-mix(in srgb, var(--flow-error-color) 8%, transparent);
|
|
1906
|
+
}
|
|
1907
|
+
|
|
1908
|
+
/* Developed collaboratively with vscode - 改动代码行数: 1行改动(删除永不生效的变量兜底 #009a29) */
|
|
1909
|
+
.flow-node__user-check[data-v-bc5f6c3a] {
|
|
1910
|
+
width: 11px;
|
|
1911
|
+
height: 11px;
|
|
1912
|
+
flex-shrink: 0;
|
|
1913
|
+
color: var(--flow-success-color);
|
|
1914
|
+
}
|
|
1915
|
+
|
|
1916
|
+
/* Developed collaboratively with vscode - 改动代码行数: 6行改动(--has-record 与 --selectable 互斥类共享可点样式:前者仅 display 模式、后者仅 select 模式出现,cursor 与 hover 主色边框合并为共享选择器;selectable 的背景色过渡保留在其差异块,输出不变) */
|
|
1917
|
+
/* 可点击人员(展示模式有记录可查看 / 选择模式可作为驳回目标):hover 主色提示 */
|
|
1918
|
+
.flow-node__user--has-record[data-v-bc5f6c3a],
|
|
1919
|
+
.flow-node__user--selectable[data-v-bc5f6c3a] {
|
|
1920
|
+
cursor: pointer;
|
|
1921
|
+
transition: border-color 0.2s;
|
|
1922
|
+
}
|
|
1923
|
+
.flow-node__user--has-record[data-v-bc5f6c3a]:hover,
|
|
1924
|
+
.flow-node__user--selectable[data-v-bc5f6c3a]:hover {
|
|
1925
|
+
border-color: var(--flow-primary-color);
|
|
1926
|
+
}
|
|
1927
|
+
|
|
1928
|
+
/* Developed collaboratively with vscode - 改动代码行数: 8行移动(--selectable 差异块上移紧邻共享可点样式块:纯位置调整,声明覆盖顺序不变,输出一致) */
|
|
1929
|
+
/* Developed collaboratively with vscode - 改动代码行数: 22行 */
|
|
1930
|
+
/* Developed collaboratively with vscode - 改动代码行数: 2行改动(cursor 与 hover 边框已并入上方共享选择器,此处仅保留 select 模式差异:背景色同步过渡——同特异性靠后声明生效,与原合并结果一致) */
|
|
1931
|
+
/* select 模式:可作为驳回目标的人员,背景色同步过渡 */
|
|
1932
|
+
.flow-node__user--selectable[data-v-bc5f6c3a] {
|
|
1933
|
+
transition: border-color 0.2s, background-color 0.2s;
|
|
1934
|
+
}
|
|
1935
|
+
.flow-node__user-arrow[data-v-bc5f6c3a] {
|
|
1936
|
+
flex-shrink: 0;
|
|
1937
|
+
width: 10px;
|
|
1938
|
+
height: 10px;
|
|
1939
|
+
color: var(--flow-text-color-3);
|
|
1940
|
+
}
|
|
1941
|
+
|
|
1942
|
+
/* Developed collaboratively with vscode - 改动代码行数: 23行 */
|
|
1943
|
+
/* 人员折叠:展开/收起按钮(跟随人员列表末尾的浅主色胶囊,hover 加深) */
|
|
1944
|
+
.flow-node__more[data-v-bc5f6c3a] {
|
|
1945
|
+
display: inline-flex;
|
|
1946
|
+
align-items: center;
|
|
1947
|
+
gap: 4px;
|
|
1948
|
+
padding: 2px 10px;
|
|
1949
|
+
border-radius: 999px;
|
|
1950
|
+
font-size: 12px;
|
|
1951
|
+
line-height: 1.5;
|
|
1952
|
+
color: var(--flow-primary-color);
|
|
1953
|
+
background: color-mix(in srgb, var(--flow-primary-color) 8%, transparent);
|
|
1954
|
+
cursor: pointer;
|
|
1955
|
+
user-select: none;
|
|
1956
|
+
transition: background-color 0.2s;
|
|
1957
|
+
}
|
|
1958
|
+
.flow-node__more[data-v-bc5f6c3a]:hover {
|
|
1959
|
+
background: color-mix(in srgb, var(--flow-primary-color) 16%, transparent);
|
|
1960
|
+
}
|
|
1961
|
+
|
|
1962
|
+
/* 箭头图标:展开时旋转朝上 */
|
|
1963
|
+
.flow-node__more-icon[data-v-bc5f6c3a] {
|
|
1964
|
+
width: 12px;
|
|
1965
|
+
height: 12px;
|
|
1966
|
+
transition: transform 0.2s;
|
|
1967
|
+
}
|
|
1968
|
+
.flow-node__more-icon--expanded[data-v-bc5f6c3a] {
|
|
1969
|
+
transform: rotate(180deg);
|
|
1970
|
+
}
|
|
1971
|
+
|
|
1972
|
+
/* Developed collaboratively with vscode - 改动代码行数: 删除6行(移除 .flow-node__user--selectable 的重复样式块:与上方上移后的正主块逐字相同,系移动后未删的残留,编译产物不变) */
|
|
1973
|
+
/* Developed collaboratively with vscode - 改动代码行数: 4行(移至 .flow-node__user-check 基础规则之后:同特异性靠后者覆盖,修复驳回 X 被基础绿色 color 覆盖的问题) */
|
|
1974
|
+
/* 驳回人员的 X 图标:红色 */
|
|
1975
|
+
.flow-node__user-check--reject[data-v-bc5f6c3a] {
|
|
1976
|
+
color: var(--flow-error-color);
|
|
1977
|
+
}
|
|
1978
|
+
|
|
1979
|
+
/* select 模式:当前选中的驳回目标,主色高亮 */
|
|
1980
|
+
.flow-node__user--selected[data-v-bc5f6c3a] {
|
|
1981
|
+
border-color: var(--flow-primary-color);
|
|
1982
|
+
background: color-mix(in srgb, var(--flow-primary-color) 10%, transparent);
|
|
1983
|
+
}
|
|
1984
|
+
.flow-node__user--selected .flow-node__user-name[data-v-bc5f6c3a] {
|
|
1985
|
+
color: var(--flow-primary-color);
|
|
1986
|
+
font-weight: 600;
|
|
1987
|
+
}
|
|
1988
|
+
.flow-node__user-check--selected[data-v-bc5f6c3a] {
|
|
1989
|
+
color: var(--flow-primary-color);
|
|
1990
|
+
}
|
|
1991
|
+
.flow-node__desc[data-v-bc5f6c3a] {
|
|
1992
|
+
margin: 4px 0 0;
|
|
1993
|
+
font-size: 12px;
|
|
1994
|
+
line-height: 1.5;
|
|
1995
|
+
color: var(--flow-text-color-2);
|
|
1996
|
+
}
|
|
1997
|
+
|
|
1998
|
+
/* Developed collaboratively with vscode - 改动代码行数: 2行改动(删除 rgba 兜底行仅保留 color-mix;删除永不生效的 --flow-card-color 兜底 #fff——弹层 style 上同样注入 flowVars) */
|
|
1999
|
+
/* 审批意见卡片:渲染在 teleport 弹层内,需置于节点结构之外才能命中 scoped 样式 */
|
|
2000
|
+
.flow-node__record[data-v-bc5f6c3a] {
|
|
2001
|
+
width: 320px;
|
|
2002
|
+
padding: 10px 12px;
|
|
2003
|
+
border: 1px solid color-mix(in srgb, var(--flow-text-color-3) 18%, transparent);
|
|
2004
|
+
border-left-width: 3px;
|
|
2005
|
+
border-left-color: var(--flow-border-color);
|
|
2006
|
+
border-radius: 8px;
|
|
2007
|
+
background: var(--flow-card-color);
|
|
2008
|
+
box-shadow: 0 3px 6px -4px rgba(0, 0, 0, 0.12), 0 6px 16px 0 rgba(0, 0, 0, 0.08), 0 9px 28px 8px rgba(0, 0, 0, 0.05);
|
|
2009
|
+
}
|
|
2010
|
+
|
|
2011
|
+
/* Developed collaboratively with vscode - 改动代码行数: 31行+删除6行(删除按人员 status 染色的卡片级 --done/--doing 左边框;新增记录项样式:左边框按记录类型染色——同意=绿/驳回=红,头部类型文案与时间两端对齐) */
|
|
2012
|
+
/* 记录项:按记录类型左侧染色(同意=绿 / 驳回=红),多条纵向排列 */
|
|
2013
|
+
.flow-node__record-item[data-v-bc5f6c3a] {
|
|
2014
|
+
margin-top: 8px;
|
|
2015
|
+
padding: 6px 8px;
|
|
2016
|
+
border: 1px solid color-mix(in srgb, var(--flow-text-color-3) 12%, transparent);
|
|
2017
|
+
border-left-width: 3px;
|
|
2018
|
+
border-left-color: var(--flow-success-color);
|
|
2019
|
+
border-radius: 6px;
|
|
2020
|
+
}
|
|
2021
|
+
.flow-node__record-item--reject[data-v-bc5f6c3a] {
|
|
2022
|
+
border-left-color: var(--flow-error-color);
|
|
2023
|
+
}
|
|
2024
|
+
.flow-node__record-item-head[data-v-bc5f6c3a] {
|
|
2025
|
+
display: flex;
|
|
2026
|
+
align-items: center;
|
|
2027
|
+
justify-content: space-between;
|
|
2028
|
+
gap: 6px;
|
|
2029
|
+
}
|
|
2030
|
+
.flow-node__record-item-type[data-v-bc5f6c3a] {
|
|
2031
|
+
font-size: 12px;
|
|
2032
|
+
font-weight: 600;
|
|
2033
|
+
color: var(--flow-success-color);
|
|
2034
|
+
}
|
|
2035
|
+
.flow-node__record-item--reject .flow-node__record-item-type[data-v-bc5f6c3a] {
|
|
2036
|
+
color: var(--flow-error-color);
|
|
2037
|
+
}
|
|
2038
|
+
.flow-node__record-item-time[data-v-bc5f6c3a] {
|
|
2039
|
+
flex-shrink: 0;
|
|
2040
|
+
font-size: 11px;
|
|
2041
|
+
font-variant-numeric: tabular-nums;
|
|
2042
|
+
color: var(--flow-text-color-3);
|
|
2043
|
+
}
|
|
2044
|
+
.flow-node__record-head[data-v-bc5f6c3a] {
|
|
2045
|
+
display: flex;
|
|
2046
|
+
align-items: center;
|
|
2047
|
+
gap: 6px;
|
|
2048
|
+
}
|
|
2049
|
+
|
|
2050
|
+
/* Developed collaboratively with vscode - 改动代码行数: 5行 */
|
|
2051
|
+
/* 基础视觉由 FlowAvatar 提供,此处仅控制尺寸与字号 */
|
|
2052
|
+
.flow-node__record-avatar[data-v-bc5f6c3a] {
|
|
2053
|
+
flex-shrink: 0;
|
|
2054
|
+
width: 18px;
|
|
2055
|
+
height: 18px;
|
|
2056
|
+
font-size: 10px;
|
|
2057
|
+
}
|
|
2058
|
+
.flow-node__record-name[data-v-bc5f6c3a] {
|
|
2059
|
+
flex: 1;
|
|
2060
|
+
min-width: 0;
|
|
2061
|
+
overflow: hidden;
|
|
2062
|
+
font-size: 12px;
|
|
2063
|
+
font-weight: 600;
|
|
2064
|
+
color: var(--flow-text-color-1);
|
|
2065
|
+
}
|
|
2066
|
+
|
|
2067
|
+
/* Developed collaboratively with vscode - 改动代码行数: 0行+删除5行(删除卡片头部旧操作时间样式:时间移入每条记录项头部展示) */
|
|
2068
|
+
/* Developed collaboratively with vscode - 改动代码行数: 9行改动(意见正文与空占位共享基础排版:边距/字号/行高/pre-wrap/word-break 合并为共享选择器,差异仅文字颜色;空占位并入 pre-wrap 对固定短文案「未填写审批意见」无视觉影响) */
|
|
2069
|
+
/* 记录意见正文与无意见占位:共享基础排版,正文弱二级色、占位弱三级色 */
|
|
2070
|
+
.flow-node__record-opinion[data-v-bc5f6c3a],
|
|
2071
|
+
.flow-node__record-empty[data-v-bc5f6c3a] {
|
|
2072
|
+
margin: 2px 0 0;
|
|
2073
|
+
font-size: 12px;
|
|
2074
|
+
line-height: 1.6;
|
|
2075
|
+
color: var(--flow-text-color-2);
|
|
2076
|
+
white-space: pre-wrap;
|
|
2077
|
+
word-break: break-word;
|
|
2078
|
+
}
|
|
2079
|
+
|
|
2080
|
+
/* 无审批意见占位文案:三级弱色 */
|
|
2081
|
+
.flow-node__record-empty[data-v-bc5f6c3a] {
|
|
2082
|
+
color: var(--flow-text-color-3);
|
|
2083
|
+
}
|
|
2084
|
+
|
|
2085
|
+
/* Developed collaboratively with vscode - 改动代码行数: 1行改动(删除 rgba 兜底行仅保留 color-mix:当前主题下渲染不变) */
|
|
2086
|
+
/* 附件:回形针 + 文件名的小卡片,可点击下载 */
|
|
2087
|
+
.flow-node__record-files[data-v-bc5f6c3a] {
|
|
2088
|
+
display: flex;
|
|
2089
|
+
flex-wrap: wrap;
|
|
2090
|
+
gap: 6px;
|
|
2091
|
+
margin-top: 6px;
|
|
2092
|
+
}
|
|
2093
|
+
.flow-node__record-file[data-v-bc5f6c3a] {
|
|
2094
|
+
display: flex;
|
|
2095
|
+
align-items: center;
|
|
2096
|
+
gap: 4px;
|
|
2097
|
+
max-width: 100%;
|
|
2098
|
+
padding: 2px 8px;
|
|
2099
|
+
border-radius: 4px;
|
|
2100
|
+
font-size: 12px;
|
|
2101
|
+
color: var(--flow-text-color-2);
|
|
2102
|
+
background: color-mix(in srgb, var(--flow-text-color-3) 8%, transparent);
|
|
2103
|
+
transition: color 0.2s;
|
|
2104
|
+
}
|
|
2105
|
+
.flow-node__record-file svg[data-v-bc5f6c3a] {
|
|
2106
|
+
width: 12px;
|
|
2107
|
+
height: 12px;
|
|
2108
|
+
flex-shrink: 0;
|
|
2109
|
+
}
|
|
2110
|
+
.flow-node__record-file span[data-v-bc5f6c3a] {
|
|
2111
|
+
overflow: hidden;
|
|
2112
|
+
text-overflow: ellipsis;
|
|
2113
|
+
white-space: nowrap;
|
|
2114
|
+
}
|
|
2115
|
+
.flow-node__record-file[data-v-bc5f6c3a]:hover {
|
|
2116
|
+
color: var(--flow-primary-color);
|
|
2117
|
+
}
|
|
2118
|
+
/* Developed collaboratively with vscode - 改动代码行数: 3行 */
|
|
2119
|
+
.reject-node-list[data-v-fb3bd9c6] {
|
|
2120
|
+
width: 100%;
|
|
2121
|
+
}
|
|
2122
|
+
|
|
2123
|
+
/* Developed collaboratively with vscode - 改动代码行数: 3行 */
|
|
2124
|
+
.yg-confirm[data-v-a65cb6d5] {
|
|
2125
|
+
display: inline-block;
|
|
2126
|
+
}
|
|
2127
|
+
|
|
2128
|
+
/* Developed collaboratively with vscode - 改动代码行数: 7行 */
|
|
2129
|
+
.base-card-wrapper[data-v-956107d8] {
|
|
2130
|
+
height: 100%;
|
|
2131
|
+
background: #f0f2f5;
|
|
2132
|
+
display: flex;
|
|
2133
|
+
flex-direction: column;
|
|
2134
|
+
}
|
|
2135
|
+
.dark .base-card-wrapper[data-v-956107d8] {
|
|
2136
|
+
background: #141414;
|
|
2137
|
+
}
|
|
2138
|
+
|
|
2139
|
+
/* Developed collaboratively with vscode - 改动代码行数: 6行 */
|
|
2140
|
+
.base-card-content[data-v-956107d8] {
|
|
2141
|
+
flex: 1;
|
|
2142
|
+
overflow: auto;
|
|
2143
|
+
padding: 16px;
|
|
2144
|
+
}
|
|
2145
|
+
/* NSpin 容器需继承 flex:1 撑满剩余空间 */
|
|
2146
|
+
.base-card-content[data-v-956107d8] .n-spin-container {
|
|
2147
|
+
height: 100%;
|
|
2148
|
+
}
|
|
2149
|
+
|
|
2150
|
+
/* Developed collaboratively with vscode - 改动代码行数: 10行 */
|
|
2151
|
+
/* BaseCardItem 之间的间距 */
|
|
2152
|
+
.base-card-content[data-v-956107d8] .base-card-item-spacing {
|
|
2153
|
+
margin-bottom: 16px !important;
|
|
2154
|
+
}
|
|
2155
|
+
.base-card-content[data-v-956107d8] .base-card-item-spacing:last-child {
|
|
2156
|
+
margin-bottom: 0 !important;
|
|
2157
|
+
}
|
|
2158
|
+
|
|
2159
|
+
/* Developed collaboratively with vscode - 改动代码行数: 20行 */
|
|
2160
|
+
.base-card-footer[data-v-956107d8] {
|
|
2161
|
+
flex-shrink: 0;
|
|
2162
|
+
height: 56px;
|
|
2163
|
+
background: #ffffff;
|
|
2164
|
+
box-shadow: 0 -8px 12px 0 rgba(0, 0, 0, 0.04);
|
|
2165
|
+
display: flex;
|
|
2166
|
+
align-items: center;
|
|
2167
|
+
justify-content: flex-end;
|
|
2168
|
+
padding: 0 24px;
|
|
2169
|
+
}
|
|
2170
|
+
.dark .base-card-footer[data-v-956107d8] {
|
|
2171
|
+
background: #1e1e1e;
|
|
2172
|
+
box-shadow: 0 -8px 12px 0 rgba(255, 255, 255, 0.04);
|
|
2173
|
+
}
|
|
2174
|
+
|
|
2175
|
+
.base-card-item[data-v-e9115957] {
|
|
2176
|
+
background: var(--n-color) !important;
|
|
2177
|
+
padding: 0 !important;
|
|
2178
|
+
}
|
|
2179
|
+
.base-card-item-content[data-v-e9115957] {
|
|
2180
|
+
overflow: auto;
|
|
2181
|
+
}
|
|
2182
|
+
.base-card-item-header[data-v-e9115957] {
|
|
2183
|
+
border-bottom: 1px solid var(--n-border-color) !important;
|
|
2184
|
+
padding: 0 !important;
|
|
2185
|
+
margin: 0 !important;
|
|
2186
|
+
}
|
|
2187
|
+
|
|
2188
|
+
/* Developed collaboratively with vscode - 改动代码行数: 3行 */
|
|
2189
|
+
.base-card-item[data-v-e9115957] .n-card-header {
|
|
2190
|
+
padding: 0 !important;
|
|
2191
|
+
margin: 0 !important;
|
|
2192
|
+
}
|
|
2193
|
+
|
|
2194
|
+
/* Developed collaboratively with vscode - 改动代码行数: 8行 */
|
|
2195
|
+
.header[data-v-e9115957] {
|
|
2196
|
+
display: flex;
|
|
2197
|
+
align-items: center;
|
|
2198
|
+
justify-content: space-between;
|
|
2199
|
+
border-bottom: 1px solid #e8e8e8;
|
|
2200
|
+
height: 56px;
|
|
2201
|
+
padding: 0 16px;
|
|
2202
|
+
}
|
|
2203
|
+
.dark .header[data-v-e9115957] {
|
|
2204
|
+
border-bottom-color: #303030;
|
|
2205
|
+
}
|
|
2206
|
+
.header-left[data-v-e9115957] {
|
|
2207
|
+
display: flex;
|
|
2208
|
+
align-items: center;
|
|
2209
|
+
gap: 12px;
|
|
2210
|
+
}
|
|
2211
|
+
|
|
2212
|
+
/* Developed collaboratively with vscode - 改动代码行数: 5行 */
|
|
2213
|
+
.title[data-v-e9115957] {
|
|
2214
|
+
font-size: 16px;
|
|
2215
|
+
font-weight: 600;
|
|
2216
|
+
color: #333333;
|
|
2217
|
+
}
|
|
2218
|
+
.dark .title[data-v-e9115957] {
|
|
2219
|
+
color: #ffffff;
|
|
2220
|
+
}
|
|
2221
|
+
.subtitle[data-v-e9115957] {
|
|
2222
|
+
font-size: 12px;
|
|
2223
|
+
color: var(--n-text-color-3);
|
|
2224
|
+
}
|
|
2225
|
+
.header-right[data-v-e9115957] {
|
|
2226
|
+
display: flex;
|
|
2227
|
+
align-items: center;
|
|
2228
|
+
gap: 12px;
|
|
2229
|
+
}
|
|
2230
|
+
|
|
2231
|
+
.flow-node[data-v-1ed133b8] {
|
|
2232
|
+
/* 单个折叠项:去掉默认上外边距,上下间距统一由 header 内边距控制 */
|
|
2233
|
+
}
|
|
2234
|
+
.flow-node[data-v-1ed133b8] .n-collapse-item {
|
|
2235
|
+
margin: 0;
|
|
2236
|
+
}
|
|
2237
|
+
.flow-node[data-v-1ed133b8] {
|
|
2238
|
+
/* 标题行:文字左对齐、箭头右对齐;左右留白放在 header-main 上,保证 header 底边框顶满两侧 */
|
|
2239
|
+
}
|
|
2240
|
+
.flow-node[data-v-1ed133b8] .n-collapse-item__header-main {
|
|
2241
|
+
justify-content: space-between;
|
|
2242
|
+
padding: 0 16px;
|
|
2243
|
+
}
|
|
2244
|
+
.flow-node[data-v-1ed133b8] {
|
|
2245
|
+
/* Developed collaboratively with vscode - 改动代码行数: 5行(标题插槽包装:标题文案与状态标签横向排列、垂直居中;自身为 header-main 单一 flex 项,不参与 space-between 分离) */
|
|
2246
|
+
}
|
|
2247
|
+
.flow-node .flow-node__title[data-v-1ed133b8] {
|
|
2248
|
+
display: inline-flex;
|
|
2249
|
+
align-items: center;
|
|
2250
|
+
gap: 8px;
|
|
2251
|
+
}
|
|
2252
|
+
.flow-node[data-v-1ed133b8] {
|
|
2253
|
+
/* 标题字号增大,上下等距内边距 + 底部分隔边框;用 first-child 提高优先级,覆盖 naive-ui 对首个折叠项 header 强制的 padding-top: 0 */
|
|
2254
|
+
}
|
|
2255
|
+
.flow-node[data-v-1ed133b8] .n-collapse-item:first-child > .n-collapse-item__header {
|
|
2256
|
+
padding: 16px 0;
|
|
2257
|
+
font-size: 16px;
|
|
2258
|
+
border-bottom: 1px solid var(--n-divider-color, rgba(0, 0, 0, 0.09));
|
|
2259
|
+
}
|
|
2260
|
+
.flow-node[data-v-1ed133b8] {
|
|
2261
|
+
/* 内容区留白与标题行对齐 */
|
|
2262
|
+
}
|
|
2263
|
+
.flow-node[data-v-1ed133b8] .n-collapse-item__content-wrapper {
|
|
2264
|
+
padding: 0 16px 16px;
|
|
2265
|
+
}
|
|
2266
|
+
.flow-item[data-v-aa89ccbf] {
|
|
2267
|
+
display: flex;
|
|
2268
|
+
align-items: center;
|
|
2269
|
+
gap: 12px;
|
|
2270
|
+
height: 80px;
|
|
2271
|
+
padding: 10px 12px 10px 16px;
|
|
2272
|
+
background: var(--fl-card-color);
|
|
2273
|
+
border-radius: 8px;
|
|
2274
|
+
/* Developed collaboratively with vscode - 改动代码行数: 1行(阴影色改用全局文本色变量,适配暗黑模式) */
|
|
2275
|
+
box-shadow: rgb(var(--base-text-color)/0.2) 0 8px 24px;
|
|
2276
|
+
/* Developed collaboratively with vscode - 改动代码行数: 1行(卡片不再可点击,移除 pointer 光标避免误导用户) */
|
|
2277
|
+
user-select: none;
|
|
2278
|
+
transition: transform 0.2s ease, box-shadow 0.2s ease;
|
|
2279
|
+
}
|
|
2280
|
+
.flow-item[data-v-aa89ccbf]:hover {
|
|
2281
|
+
transform: translateY(-2px);
|
|
2282
|
+
/* Developed collaboratively with vscode - 改动代码行数: 1行(阴影色改用全局文本色变量) */
|
|
2283
|
+
box-shadow: rgb(var(--base-text-color)/0.25) 0 12px 28px;
|
|
2284
|
+
}
|
|
2285
|
+
.flow-item[data-v-aa89ccbf]:active {
|
|
2286
|
+
transform: translateY(0);
|
|
2287
|
+
/* Developed collaboratively with vscode - 改动代码行数: 1行(阴影色改用全局文本色变量) */
|
|
2288
|
+
box-shadow: rgb(var(--base-text-color)/0.15) 0 4px 12px;
|
|
2289
|
+
transition-duration: 0.08s;
|
|
2290
|
+
}
|
|
2291
|
+
.flow-item[data-v-aa89ccbf] {
|
|
2292
|
+
/* Developed collaboratively with vscode - 改动代码行数: 1行(clickable 卡片:pointer 光标明示可点击,hover 上浮动效沿用通用样式) */
|
|
2293
|
+
}
|
|
2294
|
+
.flow-item--clickable[data-v-aa89ccbf] {
|
|
2295
|
+
cursor: pointer;
|
|
2296
|
+
}
|
|
2297
|
+
.flow-item__avatar[data-v-aa89ccbf] {
|
|
2298
|
+
flex-shrink: 0;
|
|
2299
|
+
}
|
|
2300
|
+
.flow-item__avatar-text[data-v-aa89ccbf] {
|
|
2301
|
+
font-size: 15px;
|
|
2302
|
+
font-weight: 600;
|
|
2303
|
+
color: var(--fl-primary);
|
|
2304
|
+
}
|
|
2305
|
+
.flow-item__label[data-v-aa89ccbf] {
|
|
2306
|
+
display: -webkit-box;
|
|
2307
|
+
flex-grow: 1;
|
|
2308
|
+
/* Developed collaboratively with vscode - 改动代码行数: 3行(中英混排按字符接排换行:不整体掉词填满行宽,防止收缩被内容撑破) */
|
|
2309
|
+
min-width: 0;
|
|
2310
|
+
overflow: hidden;
|
|
2311
|
+
font-size: 15px;
|
|
2312
|
+
font-weight: 500;
|
|
2313
|
+
line-height: 1.35;
|
|
2314
|
+
color: var(--fl-text-1);
|
|
2315
|
+
word-break: break-all;
|
|
2316
|
+
-webkit-box-orient: vertical;
|
|
2317
|
+
-webkit-line-clamp: 2;
|
|
2318
|
+
}
|
|
2319
|
+
.flow-item__actions[data-v-aa89ccbf] {
|
|
2320
|
+
display: flex;
|
|
2321
|
+
flex-shrink: 0;
|
|
2322
|
+
gap: 6px;
|
|
2323
|
+
}
|
|
2324
|
+
.flow-group[data-v-5a44409e] {
|
|
2325
|
+
padding: 0 20px;
|
|
2326
|
+
background: var(--fl-card-color);
|
|
2327
|
+
border: 1px solid var(--fl-border-color);
|
|
2328
|
+
border-radius: 12px;
|
|
2329
|
+
/* Developed collaboratively with vscode - 改动代码行数: 20行(面板头修复:负 margin 让分隔线通到卡片两端、仅展开时显示;补回首项 padding-top;锁定箭头容器旋转,方向由自定义 chevron 控制) */
|
|
2330
|
+
}
|
|
2331
|
+
.flow-group[data-v-5a44409e] .n-collapse-item__header {
|
|
2332
|
+
padding: 16px 20px 12px;
|
|
2333
|
+
margin: 0 -20px;
|
|
2334
|
+
border-bottom: 1px solid transparent;
|
|
2335
|
+
}
|
|
2336
|
+
.flow-group[data-v-5a44409e] .n-collapse-item--active .n-collapse-item__header {
|
|
2337
|
+
border-bottom-color: var(--fl-divider-color);
|
|
2338
|
+
}
|
|
2339
|
+
.flow-group[data-v-5a44409e] .n-collapse-item:first-child > .n-collapse-item__header {
|
|
2340
|
+
padding-top: 16px;
|
|
2341
|
+
}
|
|
2342
|
+
.flow-group[data-v-5a44409e] .n-collapse-item__content-inner {
|
|
2343
|
+
padding: 16px 0 20px;
|
|
2344
|
+
}
|
|
2345
|
+
.flow-group[data-v-5a44409e] {
|
|
2346
|
+
/* Developed collaboratively with vscode - 改动代码行数: 11行(header-main 设 flex;箭头 margin-left:auto 提权,压过 naive 运行时注入的 4px 间距,推到最右侧) */
|
|
2347
|
+
}
|
|
2348
|
+
.flow-group[data-v-5a44409e] .n-collapse-item__header-main {
|
|
2349
|
+
display: flex;
|
|
2350
|
+
align-items: center;
|
|
2351
|
+
}
|
|
2352
|
+
.flow-group[data-v-5a44409e] .n-collapse-item__header-main .n-collapse-item-arrow {
|
|
2353
|
+
margin-left: auto !important;
|
|
2354
|
+
transform: none !important;
|
|
2355
|
+
}
|
|
2356
|
+
.flow-group__title[data-v-5a44409e] {
|
|
2357
|
+
font-size: 17px;
|
|
2358
|
+
font-weight: 600;
|
|
2359
|
+
color: var(--fl-text-1);
|
|
2360
|
+
letter-spacing: 0.2px;
|
|
2361
|
+
transition: color 0.2s ease;
|
|
2362
|
+
}
|
|
2363
|
+
.flow-group[data-v-5a44409e] {
|
|
2364
|
+
/* Developed collaboratively with vscode - 改动代码行数: 4行(数量徽标改胶囊形,紧跟标题同侧排列) */
|
|
2365
|
+
}
|
|
2366
|
+
.flow-group__count[data-v-5a44409e] {
|
|
2367
|
+
display: flex;
|
|
2368
|
+
align-items: center;
|
|
2369
|
+
height: 20px;
|
|
2370
|
+
margin-left: 10px;
|
|
2371
|
+
padding: 0 7px;
|
|
2372
|
+
font-size: 11px;
|
|
2373
|
+
font-weight: 500;
|
|
2374
|
+
line-height: 1;
|
|
2375
|
+
color: var(--fl-primary);
|
|
2376
|
+
border: 1px solid var(--fl-primary);
|
|
2377
|
+
border-radius: 999px;
|
|
2378
|
+
background: color-mix(in srgb, var(--fl-primary) 12%, transparent);
|
|
2379
|
+
}
|
|
2380
|
+
.flow-group[data-v-5a44409e] {
|
|
2381
|
+
/* Developed collaboratively with vscode - 改动代码行数: 15行(自定义箭头+旋转动画;头部悬停时标题/箭头高亮主题色) */
|
|
2382
|
+
}
|
|
2383
|
+
.flow-group__chevron[data-v-5a44409e] {
|
|
2384
|
+
width: 16px;
|
|
2385
|
+
height: 16px;
|
|
2386
|
+
color: var(--fl-text-3);
|
|
2387
|
+
transition: transform 0.2s ease;
|
|
2388
|
+
transform: rotate(-180deg);
|
|
2389
|
+
}
|
|
2390
|
+
.flow-group__chevron--collapsed[data-v-5a44409e] {
|
|
2391
|
+
transform: rotate(0deg);
|
|
2392
|
+
}
|
|
2393
|
+
[data-v-5a44409e] .n-collapse-item__header:hover .flow-group__title,[data-v-5a44409e] .n-collapse-item__header:hover .flow-group__chevron {
|
|
2394
|
+
color: var(--fl-primary);
|
|
2395
|
+
}
|
|
2396
|
+
.flow-group__grid[data-v-5a44409e] {
|
|
2397
|
+
display: grid;
|
|
2398
|
+
grid-template-columns: repeat(1, 1fr);
|
|
2399
|
+
gap: 12px;
|
|
2400
|
+
}
|
|
2401
|
+
@media (min-width: 576px) {
|
|
2402
|
+
.flow-group__grid[data-v-5a44409e] {
|
|
2403
|
+
grid-template-columns: repeat(2, 1fr);
|
|
2404
|
+
}
|
|
2405
|
+
}
|
|
2406
|
+
@media (min-width: 992px) {
|
|
2407
|
+
.flow-group__grid[data-v-5a44409e] {
|
|
2408
|
+
grid-template-columns: repeat(3, 1fr);
|
|
2409
|
+
}
|
|
2410
|
+
}
|
|
2411
|
+
@media (min-width: 1200px) {
|
|
2412
|
+
.flow-group__grid[data-v-5a44409e] {
|
|
2413
|
+
grid-template-columns: repeat(4, 1fr);
|
|
2414
|
+
}
|
|
2415
|
+
}
|
|
2416
|
+
@media (min-width: 1600px) {
|
|
2417
|
+
.flow-group__grid[data-v-5a44409e] {
|
|
2418
|
+
grid-template-columns: repeat(5, 1fr);
|
|
2419
|
+
}
|
|
2420
|
+
}
|
|
2421
|
+
.flow-group[data-v-5a44409e] {
|
|
2422
|
+
/* Developed collaboratively with vscode - 改动代码行数: 3行(空态样式:仅保留上下留白,无外框) */
|
|
2423
|
+
}
|
|
2424
|
+
.flow-group__empty[data-v-5a44409e] {
|
|
2425
|
+
padding: 8px 0;
|
|
2426
|
+
}.flow-list[data-v-3484a8df] {
|
|
2427
|
+
display: flex;
|
|
2428
|
+
flex-direction: column;
|
|
2429
|
+
gap: 20px;
|
|
2430
|
+
}/*$vite$:1*/
|