@robot-admin/naive-ui-components 0.13.9 → 0.14.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.
Files changed (160) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/README.md +42 -1
  3. package/README_EN.md +42 -1
  4. package/dist/C_ActionBar.css +11 -10
  5. package/dist/C_AntV.css +247 -246
  6. package/dist/C_AudioPlayer.css +11 -10
  7. package/dist/C_AvatarGroup.css +7 -5
  8. package/dist/C_Barcode.css +3 -1
  9. package/dist/C_Breadcrumb.css +17 -16
  10. package/dist/C_Captcha.css +14 -13
  11. package/dist/C_Cascade.css +7 -5
  12. package/dist/C_Chat.css +9 -8
  13. package/dist/C_City.css +2 -1
  14. package/dist/C_Code.css +15 -14
  15. package/dist/C_CollapsePanel.css +12 -11
  16. package/dist/C_ContextMenu.css +29 -29
  17. package/dist/C_Cron.cjs +1 -1
  18. package/dist/C_Cron.css +475 -253
  19. package/dist/C_Cron.d.cts +2 -2
  20. package/dist/C_Cron.d.ts +2 -2
  21. package/dist/C_Cron.js +1 -1
  22. package/dist/C_Cron2.cjs +1 -1
  23. package/dist/C_Cron2.js +1 -1
  24. package/dist/C_Date.css +2 -1
  25. package/dist/C_Draggable.css +12 -10
  26. package/dist/C_Editor.css +2 -1
  27. package/dist/C_FilePreview.css +216 -214
  28. package/dist/C_Form.base.css +207 -205
  29. package/dist/C_Form.css +206 -205
  30. package/dist/C_FormModal.css +13 -11
  31. package/dist/C_FormSearch.css +2 -1
  32. package/dist/C_FormulaEditor.cjs +1 -1
  33. package/dist/C_FormulaEditor.css +428 -271
  34. package/dist/C_FormulaEditor.d.cts +2 -2
  35. package/dist/C_FormulaEditor.d.ts +2 -2
  36. package/dist/C_FormulaEditor.js +1 -1
  37. package/dist/C_FullCalendar.css +12 -11
  38. package/dist/C_GlobalSearch.css +13 -11
  39. package/dist/C_Guide.css +8 -8
  40. package/dist/C_Icon.css +9 -7
  41. package/dist/C_ImageCropper.css +69 -67
  42. package/dist/C_Language.css +8 -8
  43. package/dist/C_Loading.css +10 -8
  44. package/dist/C_Login.css +20 -21
  45. package/dist/C_Map.css +24 -22
  46. package/dist/C_Markdown.css +8 -6
  47. package/dist/C_Menu.css +2 -1
  48. package/dist/C_NotificationCenter.css +272 -270
  49. package/dist/C_OrgChart.css +6 -5
  50. package/dist/C_PageLoading.css +8 -6
  51. package/dist/C_Progress.css +1 -1
  52. package/dist/C_QRCode.css +7 -5
  53. package/dist/C_Signature.css +7 -5
  54. package/dist/C_Skeleton.css +8 -6
  55. package/dist/C_SplitPane.css +2 -1
  56. package/dist/C_Steps.css +7 -5
  57. package/dist/C_Table.base.css +409 -410
  58. package/dist/C_Table.css +367 -369
  59. package/dist/C_Tabs.css +78 -1
  60. package/dist/C_TagsView.css +8 -8
  61. package/dist/C_Theme.css +9 -7
  62. package/dist/C_Time.css +3 -1
  63. package/dist/C_Timeline.css +9 -8
  64. package/dist/C_Transfer.css +10 -9
  65. package/dist/C_Tree.css +18 -16
  66. package/dist/C_Upload.css +152 -150
  67. package/dist/C_VideoPlayer.css +223 -221
  68. package/dist/C_VtableGantt.css +2 -1
  69. package/dist/C_WaterFall.css +19 -17
  70. package/dist/C_WorkFlow.css +1047 -1047
  71. package/dist/constants.d.cts +15 -20
  72. package/dist/constants.d.ts +15 -20
  73. package/dist/constants2.d.cts +44 -19
  74. package/dist/constants2.d.ts +44 -19
  75. package/dist/constants4.d.cts +5 -5
  76. package/dist/constants4.d.ts +5 -5
  77. package/dist/constants5.d.cts +2 -2
  78. package/dist/constants5.d.ts +2 -2
  79. package/dist/data.d.cts +6 -6
  80. package/dist/data.d.ts +6 -6
  81. package/dist/index.cjs +1 -1
  82. package/dist/index.d.cts +3 -3
  83. package/dist/index.d.ts +3 -3
  84. package/dist/index.js +1 -1
  85. package/dist/index.vue.d.cts +1 -1
  86. package/dist/index.vue.d.ts +1 -1
  87. package/dist/index10.vue.d.cts +6 -6
  88. package/dist/index10.vue.d.ts +3 -3
  89. package/dist/index11.vue.d.cts +3 -3
  90. package/dist/index11.vue.d.ts +5 -5
  91. package/dist/index12.vue.d.cts +5 -5
  92. package/dist/index12.vue.d.ts +2 -2
  93. package/dist/index13.vue.d.cts +2 -2
  94. package/dist/index13.vue.d.ts +5 -5
  95. package/dist/index14.vue.d.cts +5 -5
  96. package/dist/index14.vue.d.ts +5 -5
  97. package/dist/index15.vue.d.cts +5 -5
  98. package/dist/index15.vue.d.ts +1 -1
  99. package/dist/index16.vue.d.cts +1 -1
  100. package/dist/index17.vue.d.ts +1 -1
  101. package/dist/index18.vue.d.cts +1 -1
  102. package/dist/index18.vue.d.ts +4 -4
  103. package/dist/index19.vue.d.cts +4 -4
  104. package/dist/index19.vue.d.ts +3 -3
  105. package/dist/index2.vue.d.cts +2 -2
  106. package/dist/index2.vue.d.ts +2 -2
  107. package/dist/index21.vue.d.cts +2 -2
  108. package/dist/index21.vue.d.ts +2 -2
  109. package/dist/index22.vue.d.cts +2 -2
  110. package/dist/index22.vue.d.ts +2 -2
  111. package/dist/index23.vue.d.cts +2 -2
  112. package/dist/index23.vue.d.ts +2 -2
  113. package/dist/index25.vue.d.cts +4 -4
  114. package/dist/index25.vue.d.ts +4 -4
  115. package/dist/index27.vue.d.cts +3 -3
  116. package/dist/index27.vue.d.ts +3 -3
  117. package/dist/index28.vue.d.cts +3 -3
  118. package/dist/index28.vue.d.ts +3 -3
  119. package/dist/index3.vue.d.cts +3 -3
  120. package/dist/index3.vue.d.ts +3 -3
  121. package/dist/index4.vue.d.cts +3 -3
  122. package/dist/index6.vue.d.ts +2 -2
  123. package/dist/index7.vue.d.cts +2 -2
  124. package/dist/index8.vue.d.ts +3 -3
  125. package/dist/index9.vue.d.cts +3 -3
  126. package/dist/index9.vue.d.ts +6 -6
  127. package/dist/mapUtils.d.cts +4 -4
  128. package/dist/mapUtils.d.ts +4 -4
  129. package/dist/presets.d.cts +1 -1
  130. package/dist/presets.d.ts +1 -1
  131. package/dist/style.css +9875 -9705
  132. package/dist/useCalendarEvents.d.cts +1 -1
  133. package/dist/useCalendarEvents.d.ts +1 -1
  134. package/dist/useCollapsePanel.d.cts +2 -2
  135. package/dist/useCollapsePanel.d.ts +2 -2
  136. package/dist/useCropperCore.d.cts +10 -10
  137. package/dist/useCropperCore.d.ts +10 -10
  138. package/dist/useDraggableLayout.d.cts +6 -6
  139. package/dist/useDraggableLayout.d.ts +6 -6
  140. package/dist/useEdgeInteraction.d.cts +3 -3
  141. package/dist/useEdgeInteraction.d.ts +3 -3
  142. package/dist/useFormulaEvaluator.cjs +2 -0
  143. package/dist/useFormulaEvaluator.js +2 -0
  144. package/dist/useSearchState.d.cts +13 -13
  145. package/dist/useSearchState.d.ts +13 -13
  146. package/dist/useSignatureHistory.d.cts +5 -5
  147. package/dist/useSignatureHistory.d.ts +5 -5
  148. package/dist/useSplitResize.d.cts +3 -3
  149. package/dist/useSplitResize.d.ts +3 -3
  150. package/dist/useTableQuery.d.cts +1 -1
  151. package/dist/useTableQuery.d.ts +1 -1
  152. package/dist/useTimeSelection.d.cts +2 -2
  153. package/dist/useTimeSelection.d.ts +2 -2
  154. package/dist/useTreeOperations.d.cts +6 -6
  155. package/dist/useTreeOperations.d.ts +6 -6
  156. package/dist/useWorkflowValidation.d.cts +3 -3
  157. package/dist/useWorkflowValidation.d.ts +3 -3
  158. package/package.json +1 -1
  159. package/dist/C_FormulaEditor2.cjs +0 -2
  160. package/dist/C_FormulaEditor2.js +0 -2
@@ -1,188 +1,470 @@
1
- /* unplugin-vue-components disabled *//* FormulaInput 组件样式 */
2
- .formula-input[data-v-154f1a9b] {
3
- background: var(--c-bg-card);
4
- transition: background var(--c-transition, 0.2s ease);
5
- border-bottom: 1px solid var(--c-border);
1
+ :root{--c-primary: var(--primary-color, #2080f0);--c-primary-hover: var(--primary-color-hover, #4098fc);--c-primary-pressed: var(--primary-color-pressed, #1060c9);--c-success: var(--success-color, #18a058);--c-warning: var(--warning-color, #f0a020);--c-error: var(--error-color, #d03050);--c-info: var(--info-color, #2080f0);--c-bg-body: var(--body-color, #ffffff);--c-bg-card: var(--card-color, #ffffff);--c-bg-surface: var(--popover-color, #ffffff);--c-text-1: var(--text-color-1, #262626);--c-text-2: var(--text-color-2, #525252);--c-text-3: var(--text-color-3, #a3a3a3);--c-text-4: var(--text-color-4, #c0c0c0);--c-border: var(--border-color, #e5e7eb);--c-radius-sm: var(--border-radius-small, 4px);--c-radius: var(--border-radius, 6px);--c-transition-fast: 0.15s cubic-bezier(0.4, 0, 0.2, 1);--c-transition-base: 0.3s cubic-bezier(0.4, 0, 0.2, 1);--c-shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.08);--c-shadow-md: 0 4px 6px rgba(0, 0, 0, 0.1);--c-shadow-lg: 0 10px 15px rgba(0, 0, 0, 0.1)}
2
+
3
+ /* unplugin-vue-components disabled */
4
+ /* layer: default */
5
+ .inline-flex[data-v-075758a0]{display:inline-flex;}
6
+ .transform[data-v-075758a0]{transform:translateX(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotateZ(var(--un-rotate-z)) skewX(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z));}
7
+ .px[data-v-075758a0]{padding-left:1rem;padding-right:1rem;}
8
+
9
+ /* unplugin-vue-components disabled */.c-icon[data-v-075758a0] {
10
+ display: inline-flex;
11
+ align-items: center;
12
+ justify-content: center;
13
+ position: relative;
14
+ flex-shrink: 0;
15
+ vertical-align: middle;
16
+ user-select: none;
17
+ transition: all 0.2s ease-in-out;
18
+ }
19
+ .c-icon--clickable[data-v-075758a0] {
20
+ cursor: pointer;
21
+ }
22
+ .c-icon--clickable[data-v-075758a0]:hover {
23
+ opacity: 0.8;
24
+ transform: scale(1.05);
6
25
  }
7
- .formula-input--error[data-v-154f1a9b] {
8
- background: color-mix(in srgb, var(--error-color) 3%, var(--c-bg-card));
26
+ .c-icon--clickable[data-v-075758a0]:active {
27
+ transform: scale(0.95);
9
28
  }
10
- .formula-input--disabled[data-v-154f1a9b] {
29
+ .c-icon--clickable[data-v-075758a0]:focus-visible {
30
+ outline: 2px solid currentColor;
31
+ outline-offset: 2px;
32
+ border-radius: 4px;
33
+ }
34
+ .c-icon--loading[data-v-075758a0] {
11
35
  opacity: 0.6;
12
- pointer-events: none;
36
+ cursor: wait;
13
37
  }
14
- .formula-input__header[data-v-154f1a9b] {
38
+ .c-icon__loading[data-v-075758a0] {
39
+ position: absolute;
40
+ inset: 0;
41
+ }
42
+ .c-icon__spinner[data-v-075758a0] {
43
+ width: 100%;
44
+ height: 100%;
45
+ border: 2px solid currentColor;
46
+ border-radius: 50%;
47
+ border-top-color: transparent;
48
+ animation: spin-075758a0 1s linear infinite;
49
+ }
50
+ .c-icon__error[data-v-075758a0] {
51
+ font-size: 0.8em;
52
+ opacity: 0.5;
53
+ }
54
+ .c-icon__rotatable[data-v-075758a0] {
55
+ transition: transform 0.3s ease-in-out;
56
+ }
57
+ .c-icon__flippable[data-v-075758a0] {
58
+ transition: transform 0.3s ease-in-out;
59
+ }
60
+ @keyframes spin-075758a0 {
61
+ 0% {
62
+ transform: rotate(0deg);
63
+ }
64
+ 100% {
65
+ transform: rotate(360deg);
66
+ }
67
+ }
68
+ /* unplugin-vue-components disabled */
69
+ /* layer: default */
70
+ .px[data-v-fdb8dd69]{padding-left:1rem;padding-right:1rem;}
71
+
72
+ /* unplugin-vue-components disabled *//* 公式工作区:变量、原生输入与试算结果共享一个模型。 */
73
+ .c-formula[data-v-fdb8dd69] {
74
+ container: formula-editor/inline-size;
75
+ overflow: auto;
76
+ border: 1px solid var(--c-border);
77
+ border-radius: 16px;
78
+ background: var(--c-bg-card);
79
+ color: var(--c-text-2);
80
+ }
81
+ .c-formula h2[data-v-fdb8dd69],
82
+ .c-formula p[data-v-fdb8dd69] {
83
+ margin: 0;
84
+ }
85
+ .c-formula__title-row[data-v-fdb8dd69] {
15
86
  display: flex;
16
87
  align-items: center;
17
88
  justify-content: space-between;
18
- padding: 10px 16px 0;
89
+ flex-wrap: wrap;
90
+ gap: 16px;
91
+ padding: 24px;
92
+ border-bottom: 1px solid var(--c-border);
93
+ }
94
+ .c-formula__title-row h2[data-v-fdb8dd69] {
95
+ margin-top: 8px;
96
+ color: var(--c-text-1);
97
+ font-size: 22px;
98
+ letter-spacing: -0.4px;
19
99
  }
20
- .formula-input__label[data-v-154f1a9b] {
100
+ .c-formula__title-row p[data-v-fdb8dd69] {
101
+ margin-top: 6px;
21
102
  font-size: 13px;
22
- font-weight: 600;
23
- color: var(--c-text-2);
24
103
  }
25
- .formula-input__clear[data-v-154f1a9b] {
104
+ .c-formula__eyebrow[data-v-fdb8dd69] {
105
+ color: var(--c-primary);
106
+ font: 600 10px ui-monospace, monospace;
107
+ letter-spacing: 2px;
108
+ }
109
+ .c-formula__actions[data-v-fdb8dd69] {
110
+ display: flex;
111
+ align-items: center;
112
+ gap: 12px;
113
+ }
114
+ .c-formula__templates[data-v-fdb8dd69] {
115
+ display: grid;
116
+ grid-template-columns: repeat(auto-fit, minmax(min(100%, 180px), 1fr));
117
+ gap: 8px;
118
+ padding: 16px 24px;
119
+ border-bottom: 1px solid var(--c-border);
120
+ }
121
+ .c-formula__templates button[data-v-fdb8dd69] {
26
122
  appearance: none;
27
- border: 0;
123
+ display: flex;
124
+ flex-direction: column;
125
+ text-align: left;
126
+ gap: 4px;
127
+ border: 1px solid var(--c-border);
128
+ border-radius: 10px;
129
+ padding: 12px 16px;
28
130
  background: transparent;
29
- padding: 0;
131
+ color: var(--c-text-2);
30
132
  font: inherit;
31
- font-size: 12px;
32
- color: var(--c-primary);
33
133
  cursor: pointer;
34
- user-select: none;
35
134
  }
36
- .formula-input__clear[data-v-154f1a9b]:focus-visible {
135
+ .c-formula__templates button strong[data-v-fdb8dd69] {
136
+ color: var(--c-text-1);
137
+ font-size: 12px;
138
+ }
139
+ .c-formula__templates button span[data-v-fdb8dd69] {
140
+ font-size: 11px;
141
+ }
142
+ .c-formula__templates button[aria-pressed=true][data-v-fdb8dd69], .c-formula__templates button[data-v-fdb8dd69]:hover:enabled {
143
+ border-color: var(--c-primary);
144
+ background: color-mix(in srgb, var(--c-primary) 6%, transparent);
145
+ }
146
+ .c-formula__templates button[data-v-fdb8dd69]:disabled {
147
+ opacity: 0.5;
148
+ cursor: not-allowed;
149
+ }
150
+ .c-formula__templates button[data-v-fdb8dd69]:focus-visible {
37
151
  outline: 2px solid var(--c-primary);
38
152
  outline-offset: 2px;
39
153
  }
40
- .formula-input__clear[data-v-154f1a9b]:hover {
41
- opacity: 0.8;
154
+ .c-formula__body[data-v-fdb8dd69] {
155
+ display: grid;
156
+ grid-template-columns: 210px minmax(0, 1fr) 300px;
157
+ align-items: stretch;
42
158
  }
43
- .formula-input__editor[data-v-154f1a9b] {
44
- min-height: 72px;
45
- max-height: 180px;
46
- padding: 8px 16px 12px;
47
- font-size: 14px;
48
- line-height: 2;
159
+ .c-formula__body--no-sidebar[data-v-fdb8dd69] {
160
+ grid-template-columns: minmax(0, 1fr) 300px;
161
+ }
162
+ .c-formula__body--no-preview[data-v-fdb8dd69] {
163
+ grid-template-columns: 210px minmax(0, 1fr);
164
+ }
165
+ .c-formula__body--no-sidebar.c-formula__body--no-preview[data-v-fdb8dd69] {
166
+ grid-template-columns: minmax(0, 1fr);
167
+ }
168
+ .c-formula__sidebar[data-v-fdb8dd69] {
169
+ min-width: 0;
170
+ border-right: 1px solid var(--c-border);
171
+ }
172
+ .c-formula__main[data-v-fdb8dd69] {
173
+ min-width: 0;
174
+ padding: 24px;
175
+ }
176
+ .c-formula__keyboard[data-v-fdb8dd69] {
177
+ margin-top: 20px;
178
+ border: 1px solid var(--c-border);
179
+ border-radius: 10px;
180
+ }
181
+ .c-formula__keyboard summary[data-v-fdb8dd69] {
182
+ padding: 12px 16px;
183
+ font-size: 12px;
184
+ cursor: pointer;
49
185
  color: var(--c-text-1);
50
- outline: none;
51
- overflow-y: auto;
52
- word-break: break-all;
53
- white-space: pre-wrap;
54
186
  }
55
- .formula-input__editor[data-v-154f1a9b]:empty::before {
56
- content: attr(data-placeholder);
57
- color: var(--c-text-4);
58
- pointer-events: none;
187
+ .c-formula__keyboard summary span[data-v-fdb8dd69] {
188
+ margin-left: 8px;
189
+ color: var(--c-text-3);
190
+ font-size: 11px;
59
191
  }
60
- .formula-input__editor[data-v-154f1a9b] {
61
- /* 变量 chip */
192
+ .c-formula__keyboard summary[data-v-fdb8dd69]:focus-visible {
193
+ outline: 2px solid var(--c-primary);
62
194
  }
63
- .formula-input__editor[data-v-154f1a9b] .formula-chip {
64
- display: inline-flex;
65
- align-items: center;
66
- padding: 1px 8px;
67
- margin: 0 2px;
68
- border-radius: 4px;
69
- background: color-mix(in srgb, var(--c-primary) 12%, transparent);
195
+ .c-formula__keyboard[data-v-fdb8dd69] .virtual-keyboard {
196
+ padding: 0 16px 16px;
197
+ }
198
+ .c-formula__guide[data-v-fdb8dd69] {
199
+ display: flex;
200
+ align-items: flex-start;
201
+ gap: 8px;
202
+ margin-top: 20px;
203
+ font-size: 11px;
204
+ color: var(--c-text-3);
205
+ line-height: 1.8;
206
+ }
207
+ .c-formula__guide[data-v-fdb8dd69] > :first-child {
208
+ flex-shrink: 0;
209
+ margin-top: 3px;
210
+ }
211
+ .c-formula__guide code[data-v-fdb8dd69] {
70
212
  color: var(--c-primary);
71
- font-weight: 500;
72
- font-size: 13px;
73
- line-height: 22px;
74
- vertical-align: baseline;
75
- user-select: none;
76
- cursor: default;
77
213
  }
78
- .formula-input__editor[data-v-154f1a9b] {
79
- /* 函数名 */
214
+ @container formula-editor (max-width: 980px) {
215
+ .c-formula__body[data-v-fdb8dd69] {
216
+ grid-template-columns: 190px minmax(0, 1fr);
80
217
  }
81
- .formula-input__editor[data-v-154f1a9b] .formula-func {
82
- color: color-mix(in srgb, var(--c-primary) 80%, #8b5cf6);
83
- font-weight: 600;
218
+ .c-formula__body--no-sidebar[data-v-fdb8dd69] {
219
+ grid-template-columns: minmax(0, 1fr);
84
220
  }
85
- .formula-input__editor[data-v-154f1a9b] {
86
- /* 运算符 */
221
+ .c-formula__body[data-v-fdb8dd69] > .formula-preview {
222
+ grid-column: 1/-1;
223
+ border-left: 0;
224
+ border-top: 1px solid var(--c-border);
87
225
  }
88
- .formula-input__editor[data-v-154f1a9b] .formula-op {
89
- color: var(--warning-color, #f0a020);
90
- font-weight: 600;
91
226
  }
92
- .formula-input__editor[data-v-154f1a9b] {
93
- /* 数字 */
227
+ @container formula-editor (max-width: 580px) {
228
+ .c-formula__body[data-v-fdb8dd69] {
229
+ grid-template-columns: minmax(0, 1fr);
94
230
  }
95
- .formula-input__editor[data-v-154f1a9b] .formula-num {
96
- color: color-mix(in srgb, var(--success-color, #18a058) 90%, transparent);
231
+ .c-formula__sidebar[data-v-fdb8dd69] {
232
+ border-right: 0;
233
+ border-bottom: 1px solid var(--c-border);
97
234
  }
98
- .formula-input__editor[data-v-154f1a9b] {
99
- /* 括号 */
235
+ .c-formula__title-row[data-v-fdb8dd69],
236
+ .c-formula__main[data-v-fdb8dd69] {
237
+ padding: 18px;
100
238
  }
101
- .formula-input__editor[data-v-154f1a9b] .formula-paren {
239
+ }
240
+ /* unplugin-vue-components disabled *//* 隔离试算值与明确结果,组件宽度变化时自然换行。 */
241
+ .formula-preview[data-v-b2656900] {
242
+ min-width: 0;
243
+ padding: 24px;
244
+ border-left: 1px solid var(--c-border);
245
+ background: color-mix(in srgb, var(--c-primary) 3%, var(--c-bg-card));
246
+ }
247
+ .formula-preview header[data-v-b2656900] {
248
+ display: flex;
249
+ gap: 12px;
250
+ align-items: center;
251
+ }
252
+ .formula-preview h3[data-v-b2656900],
253
+ .formula-preview p[data-v-b2656900] {
254
+ margin: 0;
255
+ }
256
+ .formula-preview h3[data-v-b2656900] {
257
+ font-size: 15px;
258
+ color: var(--c-text-1);
259
+ }
260
+ .formula-preview header p[data-v-b2656900] {
261
+ margin-top: 4px;
262
+ font-size: 12px;
263
+ line-height: 1.7;
102
264
  color: var(--c-text-2);
265
+ }
266
+ .formula-preview__step[data-v-b2656900] {
267
+ font: 600 12px ui-monospace, monospace;
268
+ color: var(--c-primary);
269
+ }
270
+ .formula-preview__result[data-v-b2656900] {
271
+ display: flex;
272
+ flex-direction: column;
273
+ gap: 12px;
274
+ margin: 24px 0;
275
+ padding: 20px;
276
+ border-radius: 12px;
277
+ background: color-mix(in srgb, var(--c-primary) 7%, var(--c-bg-card));
278
+ border: 1px solid color-mix(in srgb, var(--c-primary) 20%, var(--c-border));
279
+ min-height: 120px;
280
+ }
281
+ .formula-preview__result--error[data-v-b2656900] {
282
+ border-color: color-mix(in srgb, var(--c-error) 30%, var(--c-border));
283
+ background: color-mix(in srgb, var(--c-error) 4%, var(--c-bg-card));
284
+ }
285
+ .formula-preview__result-label[data-v-b2656900] {
286
+ color: var(--c-primary);
287
+ font-size: 12px;
288
+ }
289
+ .formula-preview__result-value[data-v-b2656900] {
290
+ color: var(--c-text-1);
291
+ font: 600 32px/1.5 ui-monospace, monospace;
292
+ overflow-wrap: anywhere;
293
+ }
294
+ .formula-preview__result-empty[data-v-b2656900] {
295
+ color: var(--c-text-2);
296
+ font-size: 12px;
297
+ line-height: 1.7;
298
+ }
299
+ .formula-preview__vars-title[data-v-b2656900] {
300
+ display: flex;
301
+ justify-content: space-between;
302
+ font-size: 12px;
103
303
  font-weight: 600;
104
304
  }
105
- .formula-input__error[data-v-154f1a9b] {
305
+ .formula-preview__vars-title span[data-v-b2656900] {
306
+ color: var(--c-text-3);
307
+ font-weight: 400;
308
+ }
309
+ .formula-preview__var-row[data-v-b2656900] {
310
+ padding-top: 16px;
311
+ }
312
+ .formula-preview__var-row p[data-v-b2656900] {
313
+ color: var(--c-text-3);
314
+ font-size: 11px;
315
+ margin-top: 5px;
316
+ }
317
+ .formula-preview__var-heading[data-v-b2656900] {
106
318
  display: flex;
107
- align-items: center;
108
- gap: 4px;
109
- padding: 4px 16px 8px;
319
+ justify-content: space-between;
320
+ gap: 8px;
321
+ margin-bottom: 7px;
322
+ }
323
+ .formula-preview__var-heading label[data-v-b2656900] {
110
324
  font-size: 12px;
111
- color: var(--error-color);
325
+ color: var(--c-text-1);
112
326
  }
113
- .formula-input[data-v-154f1a9b] {
114
- /* ─── 校验信息区 ────────────── */
327
+ .formula-preview__var-heading code[data-v-b2656900] {
328
+ color: var(--c-text-3);
329
+ font-size: 10px;
330
+ overflow-wrap: anywhere;
115
331
  }
116
- .formula-input__validation[data-v-154f1a9b] {
117
- padding: 10px 16px 12px;
332
+ .formula-preview__var-value[data-v-b2656900] {
333
+ font-family: ui-monospace, monospace;
334
+ }
335
+ .formula-preview__empty[data-v-b2656900], .formula-preview__note[data-v-b2656900] {
336
+ font-size: 11px;
337
+ color: var(--c-text-3);
338
+ line-height: 1.8;
339
+ margin-top: 16px !important;
340
+ }
341
+ .formula-preview__note[data-v-b2656900] {
342
+ margin-top: 24px !important;
343
+ padding-top: 16px;
118
344
  border-top: 1px solid var(--c-border);
119
- min-height: 40px;
345
+ }
346
+ /* unplugin-vue-components disabled *//* 原生文本输入与转义后的结构预览,避免 contenteditable 光标和样式副作用。 */
347
+ .formula-input__header[data-v-6bf933c2] {
120
348
  display: flex;
349
+ justify-content: space-between;
121
350
  align-items: center;
122
351
  gap: 12px;
352
+ margin-bottom: 16px;
123
353
  }
124
- .formula-input__validation-label[data-v-154f1a9b] {
354
+ .formula-input__label[data-v-6bf933c2] {
355
+ color: var(--c-text-1);
125
356
  font-size: 13px;
126
357
  font-weight: 600;
127
- color: var(--c-text-2);
128
- flex-shrink: 0;
129
- min-width: 28px;
130
358
  }
131
- .formula-input__validation-hint[data-v-154f1a9b] {
132
- display: inline-flex;
133
- align-items: center;
134
- gap: 4px;
359
+ .formula-input__clear[data-v-6bf933c2] {
360
+ appearance: none;
361
+ border: 0;
362
+ background: transparent;
363
+ color: var(--c-primary);
364
+ font: inherit;
135
365
  font-size: 12px;
136
- color: var(--c-text-4);
366
+ cursor: pointer;
137
367
  }
138
- .formula-input__validation-success[data-v-154f1a9b] {
139
- display: inline-flex;
140
- align-items: center;
141
- gap: 4px;
142
- font-size: 12px;
143
- color: var(--success-color, #18a058);
368
+ .formula-input__editor[data-v-6bf933c2] {
369
+ display: block;
370
+ width: 100%;
371
+ box-sizing: border-box;
372
+ min-height: 168px;
373
+ resize: vertical;
374
+ padding: 18px;
375
+ border: 1px solid var(--c-border);
376
+ border-radius: 12px;
377
+ background: color-mix(in srgb, var(--c-primary) 2%, var(--c-bg-card));
378
+ color: var(--c-text-1);
379
+ font: 15px/1.9 ui-monospace, "SFMono-Regular", Consolas, monospace;
380
+ outline: none;
381
+ overflow-wrap: anywhere;
144
382
  }
145
- .formula-input__validation-error[data-v-154f1a9b] {
146
- display: inline-flex;
383
+ .formula-input__editor[data-v-6bf933c2]:focus {
384
+ border-color: var(--c-primary);
385
+ box-shadow: 0 0 0 3px color-mix(in srgb, var(--c-primary) 12%, transparent);
386
+ }
387
+ .formula-input__editor[data-v-6bf933c2]::placeholder {
388
+ font-size: 13px;
389
+ color: var(--c-text-3);
390
+ }
391
+ .formula-input__editor[data-v-6bf933c2]:read-only {
392
+ background: color-mix(in srgb, var(--c-border) 25%, var(--c-bg-card));
393
+ }
394
+ .formula-input--error .formula-input__editor[data-v-6bf933c2] {
395
+ border-color: var(--c-error);
396
+ }
397
+ .formula-input__tokens[data-v-6bf933c2] {
398
+ margin-top: 16px;
399
+ padding: 14px 16px;
400
+ border: 1px dashed var(--c-border);
401
+ border-radius: 10px;
402
+ font: 12px/2 ui-monospace, monospace;
403
+ white-space: pre-wrap;
404
+ overflow-wrap: anywhere;
405
+ }
406
+ .formula-input__tokens > span[data-v-6bf933c2]:first-child {
407
+ display: block;
408
+ font: 11px/1.5 sans-serif;
409
+ margin-bottom: 8px;
410
+ color: var(--c-text-3);
411
+ }
412
+ .formula-input__validation[data-v-6bf933c2] {
413
+ display: flex;
147
414
  align-items: center;
148
- gap: 4px;
415
+ justify-content: space-between;
416
+ gap: 10px;
417
+ margin-top: 12px;
149
418
  font-size: 12px;
150
- color: var(--error-color);
419
+ color: var(--c-text-3);
420
+ line-height: 1.7;
151
421
  }
152
- /* unplugin-vue-components disabled */
153
- /* layer: shortcuts */
154
- .container[data-v-154f1a9b]{width:100%;}
155
- @media (min-width: 640px){
156
- .container[data-v-154f1a9b]{max-width:640px;}
422
+ .formula-input__validation button[data-v-6bf933c2] {
423
+ appearance: none;
424
+ flex-shrink: 0;
425
+ border: 0;
426
+ padding: 2px 0;
427
+ color: var(--c-primary);
428
+ background: transparent;
429
+ cursor: pointer;
430
+ font: inherit;
157
431
  }
158
- @media (min-width: 768px){
159
- .container[data-v-154f1a9b]{max-width:768px;}
432
+ .formula-input--error .formula-input__validation[data-v-6bf933c2] {
433
+ color: var(--c-error);
160
434
  }
161
- @media (min-width: 1024px){
162
- .container[data-v-154f1a9b]{max-width:1024px;}
435
+ .formula-input button[data-v-6bf933c2]:focus-visible {
436
+ outline: 2px solid var(--c-primary);
437
+ outline-offset: 3px;
163
438
  }
164
- @media (min-width: 1280px){
165
- .container[data-v-154f1a9b]{max-width:1280px;}
439
+ .formula-input .formula-token--variable[data-v-6bf933c2] {
440
+ color: var(--c-primary);
441
+ padding: 2px 5px;
442
+ border-radius: 4px;
443
+ background: color-mix(in srgb, var(--c-primary) 9%, transparent);
166
444
  }
167
- @media (min-width: 1536px){
168
- .container[data-v-154f1a9b]{max-width:1536px;}
445
+ .formula-input .formula-token--function[data-v-6bf933c2] {
446
+ color: var(--c-success);
447
+ font-weight: 600;
448
+ }
449
+ .formula-input .formula-token--operator[data-v-6bf933c2] {
450
+ color: var(--c-primary);
451
+ }
452
+ .formula-input .formula-token--number[data-v-6bf933c2] {
453
+ color: var(--c-warning);
169
454
  }
170
- /* layer: default */
171
- .blur[data-v-154f1a9b]{--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);}
172
-
173
455
  /* unplugin-vue-components disabled *//* VariablePanel 组件样式 */
174
- .variable-panel[data-v-001647c9] {
456
+ .variable-panel[data-v-2d73fec7] {
175
457
  display: flex;
176
458
  flex-direction: column;
177
459
  background: var(--c-bg-card);
178
460
  overflow: hidden;
179
461
  height: 100%;
180
462
  }
181
- .variable-panel__tabs[data-v-001647c9] {
463
+ .variable-panel__tabs[data-v-2d73fec7] {
182
464
  display: flex;
183
465
  border-bottom: 1px solid var(--c-border);
184
466
  }
185
- .variable-panel__tab[data-v-001647c9] {
467
+ .variable-panel__tab[data-v-2d73fec7] {
186
468
  appearance: none;
187
469
  border: 0;
188
470
  background: transparent;
@@ -197,23 +479,23 @@
197
479
  transition: all var(--c-transition, 0.2s ease);
198
480
  user-select: none;
199
481
  }
200
- .variable-panel__tab[data-v-001647c9]:hover {
482
+ .variable-panel__tab[data-v-2d73fec7]:hover {
201
483
  color: var(--c-primary);
202
484
  }
203
- .variable-panel__tab--active[data-v-001647c9] {
485
+ .variable-panel__tab--active[data-v-2d73fec7] {
204
486
  color: var(--c-primary);
205
487
  border-bottom: 2px solid var(--c-primary);
206
488
  }
207
- .variable-panel__search[data-v-001647c9] {
489
+ .variable-panel__search[data-v-2d73fec7] {
208
490
  padding: 8px 10px;
209
491
  border-bottom: 1px solid var(--c-border);
210
492
  }
211
- .variable-panel__list[data-v-001647c9] {
493
+ .variable-panel__list[data-v-2d73fec7] {
212
494
  flex: 1;
213
495
  max-height: 360px;
214
496
  padding: 4px 0;
215
497
  }
216
- .variable-panel__group-title[data-v-001647c9] {
498
+ .variable-panel__group-title[data-v-2d73fec7] {
217
499
  appearance: none;
218
500
  width: 100%;
219
501
  border: 0;
@@ -230,13 +512,13 @@
230
512
  cursor: pointer;
231
513
  user-select: none;
232
514
  }
233
- .variable-panel__group-title[data-v-001647c9]:hover {
515
+ .variable-panel__group-title[data-v-2d73fec7]:hover {
234
516
  color: var(--c-text-1);
235
517
  }
236
- .variable-panel__items[data-v-001647c9] {
518
+ .variable-panel__items[data-v-2d73fec7] {
237
519
  padding: 0 4px;
238
520
  }
239
- .variable-panel__item[data-v-001647c9] {
521
+ .variable-panel__item[data-v-2d73fec7] {
240
522
  appearance: none;
241
523
  width: 100%;
242
524
  border: 0;
@@ -253,15 +535,15 @@
253
535
  border-radius: 4px;
254
536
  transition: background 0.15s;
255
537
  }
256
- .variable-panel__item[data-v-001647c9]:hover {
538
+ .variable-panel__item[data-v-2d73fec7]:hover {
257
539
  background: var(--hover-color);
258
540
  }
259
- .variable-panel__item-icon[data-v-001647c9] {
541
+ .variable-panel__item-icon[data-v-2d73fec7] {
260
542
  font-size: 15px;
261
543
  color: var(--c-primary);
262
544
  flex-shrink: 0;
263
545
  }
264
- .variable-panel__func[data-v-001647c9] {
546
+ .variable-panel__func[data-v-2d73fec7] {
265
547
  appearance: none;
266
548
  width: calc(100% - 8px);
267
549
  border: 0;
@@ -274,10 +556,10 @@
274
556
  margin: 2px 4px;
275
557
  transition: background 0.15s;
276
558
  }
277
- .variable-panel__func[data-v-001647c9]:hover {
559
+ .variable-panel__func[data-v-2d73fec7]:hover {
278
560
  background: var(--hover-color);
279
561
  }
280
- .variable-panel__func-name[data-v-001647c9] {
562
+ .variable-panel__func-name[data-v-2d73fec7] {
281
563
  display: flex;
282
564
  align-items: center;
283
565
  gap: 6px;
@@ -285,7 +567,7 @@
285
567
  font-weight: 500;
286
568
  color: var(--c-text-1);
287
569
  }
288
- .variable-panel__func-badge[data-v-001647c9] {
570
+ .variable-panel__func-badge[data-v-2d73fec7] {
289
571
  display: inline-flex;
290
572
  align-items: center;
291
573
  justify-content: center;
@@ -298,13 +580,13 @@
298
580
  font-weight: 700;
299
581
  font-style: italic;
300
582
  }
301
- .variable-panel__func-desc[data-v-001647c9] {
583
+ .variable-panel__func-desc[data-v-2d73fec7] {
302
584
  padding-left: 24px;
303
585
  font-size: 12px;
304
586
  color: var(--c-text-4);
305
587
  margin-top: 2px;
306
588
  }
307
- .variable-panel__func-sig[data-v-001647c9] {
589
+ .variable-panel__func-sig[data-v-2d73fec7] {
308
590
  padding-left: 24px;
309
591
  font-size: 11px;
310
592
  font-family: "Courier New", Courier, monospace;
@@ -312,14 +594,24 @@
312
594
  margin-top: 2px;
313
595
  opacity: 0.7;
314
596
  }
315
- .variable-panel button[data-v-001647c9]:focus-visible {
597
+ .variable-panel button[data-v-2d73fec7]:focus-visible {
316
598
  outline: 2px solid var(--c-primary);
317
599
  outline-offset: -2px;
318
600
  }
319
- .variable-panel button[data-v-001647c9]:disabled {
601
+ .variable-panel button[data-v-2d73fec7]:disabled {
320
602
  cursor: not-allowed;
321
603
  opacity: 0.6;
322
604
  }
605
+ .variable-panel__item span[data-v-2d73fec7] {
606
+ text-align: left;
607
+ min-width: 0;
608
+ }
609
+ .variable-panel__item small[data-v-2d73fec7] {
610
+ display: block;
611
+ font-size: 10px;
612
+ color: var(--c-text-3);
613
+ margin-top: 3px;
614
+ }
323
615
  /* unplugin-vue-components disabled *//* VirtualKeyboard 组件样式 */
324
616
  .vk[data-v-8c874c05] {
325
617
  /* ═══════ 标题行 ═══════ */
@@ -454,139 +746,4 @@
454
746
  color: var(--error-color);
455
747
  border-color: color-mix(in srgb, var(--error-color) 40%, transparent);
456
748
  border-bottom-color: color-mix(in srgb, var(--error-color) 55%, transparent);
457
- }
458
- /* unplugin-vue-components disabled *//* FormulaPreview 组件样式 */
459
- .formula-preview[data-v-228604d7] {
460
- padding: 12px 16px 14px;
461
- border-top: 1px solid var(--c-border);
462
- background: color-mix(in srgb, var(--c-text-2) 2%, var(--c-bg-card));
463
- }
464
- .formula-preview__header[data-v-228604d7] {
465
- display: flex;
466
- align-items: center;
467
- gap: 6px;
468
- font-weight: 600;
469
- font-size: 13px;
470
- margin-bottom: 8px;
471
- color: var(--c-text-2);
472
- }
473
- .formula-preview__empty[data-v-228604d7] {
474
- font-size: 12px;
475
- color: var(--c-text-4);
476
- padding: 8px 0;
477
- }
478
- .formula-preview__vars-title[data-v-228604d7] {
479
- font-size: 11px;
480
- color: var(--c-text-4);
481
- margin-bottom: 4px;
482
- }
483
- .formula-preview__var-row[data-v-228604d7] {
484
- display: flex;
485
- align-items: center;
486
- gap: 6px;
487
- padding: 2px 0;
488
- font-size: 12px;
489
- }
490
- .formula-preview__var-name[data-v-228604d7] {
491
- color: var(--c-primary);
492
- font-weight: 500;
493
- }
494
- .formula-preview__var-eq[data-v-228604d7] {
495
- color: var(--c-text-4);
496
- }
497
- .formula-preview__var-value[data-v-228604d7] {
498
- font-family: "Courier New", Courier, monospace;
499
- color: var(--c-text-1);
500
- font-weight: 500;
501
- }
502
- .formula-preview__result[data-v-228604d7] {
503
- display: flex;
504
- align-items: center;
505
- gap: 8px;
506
- }
507
- .formula-preview__result-label[data-v-228604d7] {
508
- font-size: 13px;
509
- font-weight: 600;
510
- color: var(--c-text-2);
511
- }
512
- .formula-preview__result-value[data-v-228604d7] {
513
- font-size: 18px;
514
- font-weight: 700;
515
- font-family: "Courier New", Courier, monospace;
516
- color: var(--c-primary);
517
- }
518
- .formula-preview__result-error[data-v-228604d7] {
519
- display: flex;
520
- align-items: center;
521
- gap: 4px;
522
- font-size: 12px;
523
- color: var(--error-color);
524
- }
525
- .formula-preview__result-empty[data-v-228604d7] {
526
- font-size: 14px;
527
- color: var(--c-text-4);
528
- }
529
- /* unplugin-vue-components disabled *//* C_FormulaEditor 主组件样式 */
530
- .c-formula[data-v-9cb24cfb] {
531
- display: flex;
532
- flex-direction: column;
533
- border-radius: 12px;
534
- border: 1px solid var(--c-border);
535
- background: var(--c-bg-card);
536
- overflow: hidden;
537
- /* ═══════ 标题行 ═══════ */
538
- }
539
- .c-formula__title-row[data-v-9cb24cfb] {
540
- display: flex;
541
- align-items: center;
542
- justify-content: space-between;
543
- padding: 14px 18px;
544
- border-bottom: 1px solid var(--c-border);
545
- }
546
- .c-formula__title[data-v-9cb24cfb] {
547
- display: flex;
548
- align-items: center;
549
- gap: 8px;
550
- font-weight: 600;
551
- font-size: 15px;
552
- color: var(--c-text-1);
553
- }
554
- .c-formula[data-v-9cb24cfb] {
555
- /* ═══════ 主内容 ═══════ */
556
- }
557
- .c-formula__body[data-v-9cb24cfb] {
558
- display: flex;
559
- flex: 1;
560
- min-height: 0;
561
- }
562
- .c-formula__sidebar[data-v-9cb24cfb] {
563
- width: 210px;
564
- flex-shrink: 0;
565
- border-right: 1px solid var(--c-border);
566
- }
567
- .c-formula__main[data-v-9cb24cfb] {
568
- flex: 1;
569
- display: flex;
570
- flex-direction: column;
571
- min-width: 0;
572
- }
573
- .c-formula__keyboard[data-v-9cb24cfb] {
574
- padding: 14px 18px;
575
- border-top: 1px solid var(--c-border);
576
- }
577
-
578
- /* ═══════ 响应式 ═══════ */
579
- @media (max-width: 768px) {
580
- .c-formula__body[data-v-9cb24cfb] {
581
- flex-direction: column;
582
- }
583
- .c-formula__sidebar[data-v-9cb24cfb] {
584
- width: 100%;
585
- border-right: none;
586
- border-bottom: 1px solid var(--c-border);
587
- }
588
- }
589
- /* unplugin-vue-components disabled */
590
- /* layer: default */
591
- .px[data-v-9cb24cfb]{padding-left:1rem;padding-right:1rem;}
592
-
749
+ }