@agile-team/wl-skills-kit 2.11.1 → 2.11.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (85) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/README.md +1 -1
  3. package/bin/wl-skills.js +27 -3
  4. package/files/.wl-skills/docs/jh-pagination.md +505 -505
  5. package/files/.wl-skills/docs/request.md +940 -940
  6. package/files/.wl-skills/guides/architecture.md +1 -1
  7. package/files/.wl-skills/skills/core/convention-audit/SKILL.md +3 -3
  8. package/files/.wl-skills/skills/core/spec-doc-parse/SKILL.md +332 -332
  9. package/files/.wl-skills/skills/core/spec-doc-parse/USAGE.md +97 -97
  10. package/files/.wl-skills/skills/sync/permission-sync/USAGE.md +107 -107
  11. package/files/.wl-skills/src/components/global/C_ParentView/index.vue +3 -3
  12. package/files/.wl-skills/src/components/global/C_RightToolbar/index.vue +157 -157
  13. package/files/.wl-skills/src/components/global/C_SvgIcon/index.vue +31 -31
  14. package/files/.wl-skills/src/components/global/C_SvgIcon/svgicon.js +10 -10
  15. package/files/.wl-skills/src/components/global/C_TagStatus/README.md +264 -264
  16. package/files/.wl-skills/src/components/global/C_TagStatus/config.ts +192 -192
  17. package/files/.wl-skills/src/components/global/C_TagStatus/index.vue +106 -106
  18. package/files/.wl-skills/src/components/global/C_TagStatus/types.ts +64 -64
  19. package/files/.wl-skills/src/components/global/C_Tree/README.md +153 -153
  20. package/files/.wl-skills/src/components/global/C_Tree/index.scss +42 -42
  21. package/files/.wl-skills/src/components/global/C_Tree/index.vue +78 -78
  22. package/files/.wl-skills/src/components/global/C_Tree/types.ts +59 -59
  23. package/files/.wl-skills/src/components/local/c_formModal/README.md +235 -235
  24. package/files/.wl-skills/src/components/local/c_formModal/data.ts +95 -95
  25. package/files/.wl-skills/src/components/local/c_formModal/index.scss +8 -8
  26. package/files/.wl-skills/src/components/local/c_formModal/index.vue +107 -107
  27. package/files/.wl-skills/src/components/local/c_formSections/data.ts +175 -175
  28. package/files/.wl-skills/src/components/local/c_formSections/index.scss +280 -280
  29. package/files/.wl-skills/src/components/local/c_formSections/index.vue +429 -429
  30. package/files/.wl-skills/src/components/local/c_listModal/data.ts +41 -41
  31. package/files/.wl-skills/src/components/local/c_listModal/index.vue +136 -136
  32. package/files/.wl-skills/src/components/local/c_spliterTitle/index.scss +25 -25
  33. package/files/.wl-skills/src/components/local/c_spliterTitle/index.vue +21 -21
  34. package/files/.wl-skills/src/components/remote/AGGrid/README.md +530 -530
  35. package/files/.wl-skills/src/components/remote/BaseForm/README.md +508 -508
  36. package/files/.wl-skills/src/components/remote/BaseQuery/README.md +865 -865
  37. package/files/.wl-skills/src/components/remote/BaseTable/README.md +941 -941
  38. package/files/.wl-skills/src/components/remote/BaseToolbar/README.md +496 -496
  39. package/files/.wl-skills/src/types/page.ts +24 -24
  40. package/files/.wl-skills/standards/04-coding-basics.md +39 -1
  41. package/files/.wl-skills/standards/09-typescript.md +26 -3
  42. package/files/.wl-skills/standards/index.md +2 -2
  43. package/files/.wl-skills/templates/README.md +44 -44
  44. package/files/.wl-skills/templates/produce/aiflow/mmwr-customer-apply-add/api.md +54 -54
  45. package/files/.wl-skills/templates/produce/aiflow/mmwr-customer-apply-add/data.ts +346 -346
  46. package/files/.wl-skills/templates/produce/aiflow/mmwr-customer-apply-add/index.scss +1 -1
  47. package/files/.wl-skills/templates/produce/aiflow/mmwr-customer-apply-add/index.vue +28 -28
  48. package/files/.wl-skills/templates/produce/aiflow/mmwr-customer-apply-add-form/data.ts +115 -115
  49. package/files/.wl-skills/templates/produce/aiflow/mmwr-customer-apply-add-form/index.scss +44 -44
  50. package/files/.wl-skills/templates/produce/aiflow/mmwr-customer-apply-add-form/index.vue +43 -43
  51. package/files/.wl-skills/templates/produce/aiflow/mmwr-customer-apply-change/data.ts +338 -338
  52. package/files/.wl-skills/templates/produce/aiflow/mmwr-customer-apply-change/index.scss +1 -1
  53. package/files/.wl-skills/templates/produce/aiflow/mmwr-customer-apply-change/index.vue +28 -28
  54. package/files/.wl-skills/templates/produce/aiflow/mmwr-customer-apply-change-form/data.ts +115 -115
  55. package/files/.wl-skills/templates/produce/aiflow/mmwr-customer-apply-change-form/index.scss +44 -44
  56. package/files/.wl-skills/templates/produce/aiflow/mmwr-customer-apply-change-form/index.vue +43 -43
  57. package/files/.wl-skills/templates/produce/aiflow/mmwr-customer-archive/api.md +88 -88
  58. package/files/.wl-skills/templates/produce/aiflow/mmwr-customer-archive/data.ts +601 -601
  59. package/files/.wl-skills/templates/produce/aiflow/mmwr-customer-archive/index.scss +1 -1
  60. package/files/.wl-skills/templates/produce/aiflow/mmwr-customer-archive/index.vue +64 -64
  61. package/files/.wl-skills/templates/produce/aiflow/mmwr-customer-detail/api.md +67 -67
  62. package/files/.wl-skills/templates/produce/aiflow/mmwr-customer-detail/data.ts +286 -286
  63. package/files/.wl-skills/templates/produce/aiflow/mmwr-customer-detail/index.scss +139 -139
  64. package/files/.wl-skills/templates/produce/aiflow/mmwr-customer-detail/index.vue +318 -318
  65. package/files/.wl-skills/templates/produce/aiflow/mmwr-temp-customer-archive/api.md +98 -98
  66. package/files/.wl-skills/templates/produce/aiflow/mmwr-temp-customer-archive/data.ts +543 -543
  67. package/files/.wl-skills/templates/produce/aiflow/mmwr-temp-customer-archive/index.scss +1 -1
  68. package/files/.wl-skills/templates/produce/aiflow/mmwr-temp-customer-archive/index.vue +52 -52
  69. package/files/.wl-skills/templates/sale/demo/add-demo/data.ts +518 -518
  70. package/files/.wl-skills/templates/sale/demo/billet-flame-cut-plan/data.ts +524 -524
  71. package/files/.wl-skills/templates/sale/demo/billet-flame-cut-plan/index.scss +154 -154
  72. package/files/.wl-skills/templates/sale/demo/billet-flame-cut-plan/index.vue +117 -117
  73. package/files/.wl-skills/templates/sale/demo/domestic-trade-order/data.ts +308 -308
  74. package/files/.wl-skills/templates/sale/demo/domestic-trade-order/index.scss +99 -99
  75. package/files/.wl-skills/templates/sale/demo/domestic-trade-order/index.vue +77 -77
  76. package/files/.wl-skills/templates/sale/demo/heat-batch-return/data.ts +367 -367
  77. package/files/.wl-skills/templates/sale/demo/heat-batch-return/index.scss +100 -100
  78. package/files/.wl-skills/templates/sale/demo/heat-batch-return/index.vue +170 -170
  79. package/files/.wl-skills/templates/sale/demo/heat-batch-return/meltDialog.vue +320 -320
  80. package/files/.wl-skills/templates/sale/demo/metallurgical-spec/data.ts +824 -824
  81. package/lib/ast-rules.js +304 -9
  82. package/mcp/config.js +46 -46
  83. package/mcp/registry.js +6 -1
  84. package/mcp/tools/projectTools.js +9 -1
  85. package/package.json +2 -2
@@ -1,280 +1,280 @@
1
- /*
2
- * @Author: ChenYu ycyplus@gmail.com
3
- * @Date: 2026-01-01 13:30:00
4
- * @LastEditors: ChenYu ycyplus@gmail.com
5
- * @LastEditTime: 2026-01-01 16:30:00
6
- * @FilePath: \cx-ui-sale\src\components\local\c_formSections\index.scss
7
- * @Description: 表单区块组件 - 样式
8
- * Copyright (c) 2026 by CHENY, All Rights Reserved 😎.
9
- */
10
-
11
- // ===== 组件包裹容器 =====
12
- .c-form-sections-wrapper {
13
- display: flex;
14
- flex-direction: column;
15
- height: 100%;
16
- background: #fff;
17
- }
18
-
19
- // ===== 顶部标题栏 =====
20
- .c-form-header {
21
- display: flex;
22
- justify-content: space-between;
23
- align-items: center;
24
- padding: 10px 16px;
25
- background: #fff;
26
- border-bottom: 1px solid #e4e7ed;
27
- flex-shrink: 0;
28
-
29
- .header-title {
30
- font-size: 14px;
31
- font-weight: 600;
32
- color: #303133;
33
- }
34
-
35
- .header-right {
36
- display: flex;
37
- align-items: center;
38
- gap: 8px;
39
- // 按钮样式优化
40
- .el-button {
41
- font-size: 13px;
42
-
43
- .el-icon {
44
- margin-right: 4px;
45
- }
46
- }
47
- }
48
- }
49
-
50
- // ===== 布局切换器 =====
51
- .layout-switcher {
52
- display: flex;
53
- align-items: center;
54
- gap: 6px;
55
- border: 1px dashed #dcdfe6;
56
- padding: 4px 8px;
57
- border-radius: 2px;
58
-
59
- .layout-icon {
60
- font-size: 11px;
61
- color: #c0c4cc;
62
- cursor: pointer;
63
- padding: 2px 6px;
64
- border-radius: 2px;
65
- font-family: Arial, sans-serif;
66
- letter-spacing: -1px;
67
- user-select: none;
68
- transition: color 0.2s;
69
-
70
- &:hover {
71
- color: #409eff;
72
- }
73
-
74
- &.active {
75
- color: #409eff;
76
- }
77
- }
78
- }
79
-
80
- // ===== 工具栏 =====
81
- .c-form-toolbar {
82
- display: flex;
83
- justify-content: space-between;
84
- align-items: center;
85
- padding: 10px 20px;
86
- background: #fafafa;
87
- border-bottom: 1px solid #e4e7ed;
88
-
89
- .toolbar-left,
90
- .toolbar-right {
91
- display: flex;
92
- align-items: center;
93
- gap: 16px;
94
- }
95
-
96
- .required-toggle {
97
- display: flex;
98
- align-items: center;
99
- gap: 8px;
100
-
101
- .label {
102
- font-size: 13px;
103
- color: #606266;
104
- user-select: none;
105
- }
106
- }
107
- }
108
-
109
- // ===== 主体内容区域 =====
110
- .c-form-content {
111
- display: flex;
112
- flex: 1;
113
- overflow: hidden;
114
-
115
- // 左侧导航
116
- .nav-tabs {
117
- flex-shrink: 0;
118
- width: 140px;
119
- border-right: 1px solid #e4e7ed;
120
-
121
- :deep(.el-tabs__header) {
122
- margin: 0;
123
- }
124
-
125
- :deep(.el-tabs__nav-wrap) {
126
- &::after {
127
- display: none;
128
- }
129
- }
130
-
131
- // 隐藏 Element Plus 默认的激活指示器竖线
132
- :deep(.el-tabs__active-bar) {
133
- display: none;
134
- }
135
-
136
- :deep(.el-tabs__item) {
137
- padding: 0 16px;
138
- height: 36px;
139
- line-height: 36px;
140
- font-size: 13px;
141
- color: #606266;
142
- text-align: left;
143
-
144
- &:hover {
145
- background-color: #f5f7fa !important;
146
- }
147
-
148
- &.is-active {
149
- color: #409eff !important;
150
- background-color: rgba(64, 158, 255, 0.1) !important;
151
- font-weight: 500;
152
- }
153
- }
154
- }
155
-
156
- // 表单容器
157
- .form-container {
158
- flex: 1;
159
- overflow-y: auto;
160
- padding: 16px 20px;
161
- }
162
- }
163
-
164
- // ===== 折叠面板标题样式 =====
165
- .section-title {
166
- font-size: 14px;
167
- font-weight: 600;
168
- color: #303133;
169
- margin-right: 12px;
170
- padding-left: 12px;
171
- position: relative;
172
-
173
- // 左侧短竖线装饰
174
- &::before {
175
- content: "";
176
- position: absolute;
177
- left: 0;
178
- top: 50%;
179
- transform: translateY(-50%);
180
- width: 3px;
181
- height: 14px;
182
- background-color: #409eff;
183
- border-radius: 2px;
184
- }
185
- }
186
-
187
- // ===== 折叠面板内容样式 =====
188
- :deep(.el-collapse-item__content) {
189
- padding-top: 10px;
190
- padding-bottom: 10px;
191
- }
192
-
193
- // ===== 表单项样式优化 =====
194
- :deep(.el-form-item) {
195
- margin-bottom: 14px;
196
-
197
- // 标签样式
198
- .el-form-item__label {
199
- font-size: 13px;
200
- color: #606266;
201
-
202
- // 必填标记样式
203
- &::before {
204
- margin-right: 2px;
205
- }
206
- }
207
-
208
- // 输入框样式
209
- .el-input__inner,
210
- .el-textarea__inner {
211
- font-size: 13px;
212
- }
213
-
214
- // 选择框样式
215
- .el-select {
216
- width: 100%;
217
- }
218
- }
219
-
220
- // ===== 分割线样式 =====
221
- :deep(.el-divider) {
222
- margin: 0;
223
- flex: 1;
224
- }
225
-
226
- // ===== 折叠面板标题容器 =====
227
- :deep(.el-collapse) {
228
- border-top: 0;
229
- border-bottom: 0;
230
- }
231
- :deep(.el-collapse-item__header) {
232
- display: flex;
233
- align-items: center;
234
- padding: 0 16px;
235
- height: 48px;
236
- font-weight: normal;
237
- border-bottom: 0;
238
- border-top: 0;
239
- // hover 效果
240
- &:hover {
241
- background-color: #f5f7fa;
242
- }
243
-
244
- // 展开箭头
245
- .el-collapse-item__arrow {
246
- margin-right: 8px;
247
- }
248
- }
249
- :deep(.el-collapse-item__wrap) {
250
- border-bottom: 0;
251
- }
252
-
253
- // ===== 空状态样式 =====
254
- :deep(.el-empty) {
255
- padding: 24px 0;
256
-
257
- .el-empty__description {
258
- font-size: 13px;
259
- color: #909399;
260
- }
261
- }
262
-
263
- // ===== 响应式适配 =====
264
- @media screen and (max-width: 1440px) {
265
- :deep(.el-form-item) {
266
- margin-bottom: 16px;
267
- }
268
-
269
- .section-title {
270
- font-size: 13px;
271
- }
272
-
273
- .c-form-header .header-title {
274
- font-size: 15px;
275
- }
276
-
277
- .nav-tabs {
278
- width: 120px;
279
- }
280
- }
1
+ /*
2
+ * @Author: ChenYu ycyplus@gmail.com
3
+ * @Date: 2026-01-01 13:30:00
4
+ * @LastEditors: ChenYu ycyplus@gmail.com
5
+ * @LastEditTime: 2026-01-01 16:30:00
6
+ * @FilePath: \cx-ui-sale\src\components\local\c_formSections\index.scss
7
+ * @Description: 表单区块组件 - 样式
8
+ * Copyright (c) 2026 by CHENY, All Rights Reserved 😎.
9
+ */
10
+
11
+ // ===== 组件包裹容器 =====
12
+ .c-form-sections-wrapper {
13
+ display: flex;
14
+ flex-direction: column;
15
+ height: 100%;
16
+ background: #fff;
17
+ }
18
+
19
+ // ===== 顶部标题栏 =====
20
+ .c-form-header {
21
+ display: flex;
22
+ justify-content: space-between;
23
+ align-items: center;
24
+ padding: 10px 16px;
25
+ background: #fff;
26
+ border-bottom: 1px solid #e4e7ed;
27
+ flex-shrink: 0;
28
+
29
+ .header-title {
30
+ font-size: 14px;
31
+ font-weight: 600;
32
+ color: #303133;
33
+ }
34
+
35
+ .header-right {
36
+ display: flex;
37
+ align-items: center;
38
+ gap: 8px;
39
+ // 按钮样式优化
40
+ .el-button {
41
+ font-size: 13px;
42
+
43
+ .el-icon {
44
+ margin-right: 4px;
45
+ }
46
+ }
47
+ }
48
+ }
49
+
50
+ // ===== 布局切换器 =====
51
+ .layout-switcher {
52
+ display: flex;
53
+ align-items: center;
54
+ gap: 6px;
55
+ border: 1px dashed #dcdfe6;
56
+ padding: 4px 8px;
57
+ border-radius: 2px;
58
+
59
+ .layout-icon {
60
+ font-size: 11px;
61
+ color: #c0c4cc;
62
+ cursor: pointer;
63
+ padding: 2px 6px;
64
+ border-radius: 2px;
65
+ font-family: Arial, sans-serif;
66
+ letter-spacing: -1px;
67
+ user-select: none;
68
+ transition: color 0.2s;
69
+
70
+ &:hover {
71
+ color: #409eff;
72
+ }
73
+
74
+ &.active {
75
+ color: #409eff;
76
+ }
77
+ }
78
+ }
79
+
80
+ // ===== 工具栏 =====
81
+ .c-form-toolbar {
82
+ display: flex;
83
+ justify-content: space-between;
84
+ align-items: center;
85
+ padding: 10px 20px;
86
+ background: #fafafa;
87
+ border-bottom: 1px solid #e4e7ed;
88
+
89
+ .toolbar-left,
90
+ .toolbar-right {
91
+ display: flex;
92
+ align-items: center;
93
+ gap: 16px;
94
+ }
95
+
96
+ .required-toggle {
97
+ display: flex;
98
+ align-items: center;
99
+ gap: 8px;
100
+
101
+ .label {
102
+ font-size: 13px;
103
+ color: #606266;
104
+ user-select: none;
105
+ }
106
+ }
107
+ }
108
+
109
+ // ===== 主体内容区域 =====
110
+ .c-form-content {
111
+ display: flex;
112
+ flex: 1;
113
+ overflow: hidden;
114
+
115
+ // 左侧导航
116
+ .nav-tabs {
117
+ flex-shrink: 0;
118
+ width: 140px;
119
+ border-right: 1px solid #e4e7ed;
120
+
121
+ :deep(.el-tabs__header) {
122
+ margin: 0;
123
+ }
124
+
125
+ :deep(.el-tabs__nav-wrap) {
126
+ &::after {
127
+ display: none;
128
+ }
129
+ }
130
+
131
+ // 隐藏 Element Plus 默认的激活指示器竖线
132
+ :deep(.el-tabs__active-bar) {
133
+ display: none;
134
+ }
135
+
136
+ :deep(.el-tabs__item) {
137
+ padding: 0 16px;
138
+ height: 36px;
139
+ line-height: 36px;
140
+ font-size: 13px;
141
+ color: #606266;
142
+ text-align: left;
143
+
144
+ &:hover {
145
+ background-color: #f5f7fa !important;
146
+ }
147
+
148
+ &.is-active {
149
+ color: #409eff !important;
150
+ background-color: rgba(64, 158, 255, 0.1) !important;
151
+ font-weight: 500;
152
+ }
153
+ }
154
+ }
155
+
156
+ // 表单容器
157
+ .form-container {
158
+ flex: 1;
159
+ overflow-y: auto;
160
+ padding: 16px 20px;
161
+ }
162
+ }
163
+
164
+ // ===== 折叠面板标题样式 =====
165
+ .section-title {
166
+ font-size: 14px;
167
+ font-weight: 600;
168
+ color: #303133;
169
+ margin-right: 12px;
170
+ padding-left: 12px;
171
+ position: relative;
172
+
173
+ // 左侧短竖线装饰
174
+ &::before {
175
+ content: "";
176
+ position: absolute;
177
+ left: 0;
178
+ top: 50%;
179
+ transform: translateY(-50%);
180
+ width: 3px;
181
+ height: 14px;
182
+ background-color: #409eff;
183
+ border-radius: 2px;
184
+ }
185
+ }
186
+
187
+ // ===== 折叠面板内容样式 =====
188
+ :deep(.el-collapse-item__content) {
189
+ padding-top: 10px;
190
+ padding-bottom: 10px;
191
+ }
192
+
193
+ // ===== 表单项样式优化 =====
194
+ :deep(.el-form-item) {
195
+ margin-bottom: 14px;
196
+
197
+ // 标签样式
198
+ .el-form-item__label {
199
+ font-size: 13px;
200
+ color: #606266;
201
+
202
+ // 必填标记样式
203
+ &::before {
204
+ margin-right: 2px;
205
+ }
206
+ }
207
+
208
+ // 输入框样式
209
+ .el-input__inner,
210
+ .el-textarea__inner {
211
+ font-size: 13px;
212
+ }
213
+
214
+ // 选择框样式
215
+ .el-select {
216
+ width: 100%;
217
+ }
218
+ }
219
+
220
+ // ===== 分割线样式 =====
221
+ :deep(.el-divider) {
222
+ margin: 0;
223
+ flex: 1;
224
+ }
225
+
226
+ // ===== 折叠面板标题容器 =====
227
+ :deep(.el-collapse) {
228
+ border-top: 0;
229
+ border-bottom: 0;
230
+ }
231
+ :deep(.el-collapse-item__header) {
232
+ display: flex;
233
+ align-items: center;
234
+ padding: 0 16px;
235
+ height: 48px;
236
+ font-weight: normal;
237
+ border-bottom: 0;
238
+ border-top: 0;
239
+ // hover 效果
240
+ &:hover {
241
+ background-color: #f5f7fa;
242
+ }
243
+
244
+ // 展开箭头
245
+ .el-collapse-item__arrow {
246
+ margin-right: 8px;
247
+ }
248
+ }
249
+ :deep(.el-collapse-item__wrap) {
250
+ border-bottom: 0;
251
+ }
252
+
253
+ // ===== 空状态样式 =====
254
+ :deep(.el-empty) {
255
+ padding: 24px 0;
256
+
257
+ .el-empty__description {
258
+ font-size: 13px;
259
+ color: #909399;
260
+ }
261
+ }
262
+
263
+ // ===== 响应式适配 =====
264
+ @media screen and (max-width: 1440px) {
265
+ :deep(.el-form-item) {
266
+ margin-bottom: 16px;
267
+ }
268
+
269
+ .section-title {
270
+ font-size: 13px;
271
+ }
272
+
273
+ .c-form-header .header-title {
274
+ font-size: 15px;
275
+ }
276
+
277
+ .nav-tabs {
278
+ width: 120px;
279
+ }
280
+ }