neo-cmp-cli 1.13.11 → 1.13.13

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 (100) hide show
  1. package/dist/neo/neoService.js +1 -1
  2. package/dist/package.json.js +1 -1
  3. package/package.json +1 -1
  4. package/template/antd-custom-cmp-template/package.json +1 -1
  5. package/template/asset-manage-template/package.json +1 -1
  6. package/template/echarts-custom-cmp-template/package.json +1 -1
  7. package/template/empty-custom-cmp-template/package.json +1 -1
  8. package/template/map-custom-cmp-template/package.json +1 -1
  9. package/template/neo-bi-cmps/docs/gartner-pipeline-apis.md +279 -0
  10. package/template/neo-bi-cmps/docs/gartner-pipeline-prd.md +389 -0
  11. package/template/neo-bi-cmps/docs/neo-backend-dev/SKILL.md +188 -0
  12. package/template/neo-bi-cmps/docs/neo-backend-dev/references/01-Trigger/345/274/200/345/217/221.md +183 -0
  13. package/template/neo-bi-cmps/docs/neo-backend-dev/references/02-/350/207/252/345/256/232/344/271/211API/345/274/200/345/217/221.md +196 -0
  14. package/template/neo-bi-cmps/docs/neo-backend-dev/references/03-SDK/345/267/245/345/205/267/347/261/273/346/216/245/345/217/243.md +346 -0
  15. package/template/neo-bi-cmps/docs/neo-backend-dev/references/04-/350/256/241/345/210/222/344/275/234/344/270/232/345/274/200/345/217/221.md +188 -0
  16. package/template/neo-bi-cmps/docs/neo-backend-dev/references/05-/351/241/265/351/235/242/345/274/200/345/217/221.md +293 -0
  17. package/template/neo-bi-cmps/docs/neo-backend-dev/references/06-/346/265/201/347/250/213/346/211/251/345/261/225/345/274/200/345/217/221.md +175 -0
  18. package/template/neo-bi-cmps/docs/neo-backend-dev/references/PaaS/345/271/263/345/217/260/345/274/200/345/217/221/346/211/213/345/206/214/350/247/243/350/257/273.md +313 -0
  19. package/template/neo-bi-cmps/docs/neo-backend-dev/references/auth-config.md +77 -0
  20. package/template/neo-bi-cmps/docs/neo-backend-dev/scripts/deploy_server_script.py +118 -0
  21. package/template/neo-bi-cmps/docs/neo-backend-dev/scripts/download_server_script.py +74 -0
  22. package/template/neo-bi-cmps/docs/neo-backend-dev/scripts/gen_entity_desc.py +69 -0
  23. package/template/neo-bi-cmps/docs/neo-backend-dev/scripts/gen_entitylist.py +87 -0
  24. package/template/neo-bi-cmps/docs/neo-backend-dev/scripts/query_crm.py +65 -0
  25. package/template/neo-bi-cmps/docs/neo-backend-dev/scripts/uninstall_server_script.py +48 -0
  26. package/template/neo-bi-cmps/docs/neo-backend-dev/scripts/update_model_jar.py +49 -0
  27. package/template/neo-bi-cmps/docs/neo-frontend-dev/SKILL.md +138 -0
  28. package/template/neo-bi-cmps/docs/neo-frontend-dev/references/auth-config.md +77 -0
  29. package/template/neo-bi-cmps/docs/neo-frontend-dev/references/component-dev.md +205 -0
  30. package/template/neo-bi-cmps/docs/neo-frontend-dev/references/entityTable-example.md +167 -0
  31. package/template/neo-bi-cmps/docs/neo-frontend-dev/references/templates.md +38 -0
  32. package/template/neo-bi-cmps/docs/neo-frontend-dev/scripts/gen_entity_desc.py +69 -0
  33. package/template/neo-bi-cmps/docs/neo-frontend-dev/scripts/gen_entitylist.py +87 -0
  34. package/template/neo-bi-cmps/docs/neo-frontend-dev/scripts/query_crm.py +65 -0
  35. package/template/neo-bi-cmps/docs/prototype-pipeline-forecasting.html +2453 -0
  36. package/template/neo-bi-cmps/docs//350/264/246/345/217/267/347/233/270/345/205/263/344/277/241/346/201/257.md +10 -0
  37. package/template/neo-bi-cmps/package.json +1 -1
  38. package/template/neo-bi-cmps/src/components/aiCommitDrawer__c/README.md +52 -0
  39. package/template/neo-bi-cmps/src/components/aiCommitDrawer__c/index.tsx +176 -0
  40. package/template/neo-bi-cmps/src/components/aiCommitDrawer__c/model.ts +49 -0
  41. package/template/neo-bi-cmps/src/components/aiCommitDrawer__c/style.scss +218 -0
  42. package/template/neo-bi-cmps/src/components/filterBar__c/README.md +35 -0
  43. package/template/neo-bi-cmps/src/components/filterBar__c/index.tsx +186 -0
  44. package/template/neo-bi-cmps/src/components/filterBar__c/model.ts +72 -0
  45. package/template/neo-bi-cmps/src/components/filterBar__c/style.scss +212 -0
  46. package/template/neo-bi-cmps/src/components/forecastChart__c/README.md +31 -0
  47. package/template/neo-bi-cmps/src/components/forecastChart__c/index.tsx +161 -0
  48. package/template/neo-bi-cmps/src/components/forecastChart__c/model.ts +39 -0
  49. package/template/neo-bi-cmps/src/components/forecastChart__c/style.scss +154 -0
  50. package/template/neo-bi-cmps/src/components/forecastGrid__c/README.md +36 -0
  51. package/template/neo-bi-cmps/src/components/forecastGrid__c/index.tsx +86 -0
  52. package/template/neo-bi-cmps/src/components/forecastGrid__c/model.ts +34 -0
  53. package/template/neo-bi-cmps/src/components/forecastGrid__c/style.scss +48 -0
  54. package/template/neo-bi-cmps/src/components/gapCloser__c/README.md +24 -0
  55. package/template/neo-bi-cmps/src/components/gapCloser__c/index.tsx +95 -0
  56. package/template/neo-bi-cmps/src/components/gapCloser__c/model.ts +43 -0
  57. package/template/neo-bi-cmps/src/components/gapCloser__c/style.scss +60 -0
  58. package/template/neo-bi-cmps/src/components/kpiCards__c/README.md +35 -0
  59. package/template/neo-bi-cmps/src/components/kpiCards__c/index.tsx +70 -0
  60. package/template/neo-bi-cmps/src/components/kpiCards__c/model.ts +35 -0
  61. package/template/neo-bi-cmps/src/components/kpiCards__c/style.scss +33 -0
  62. package/template/neo-bi-cmps/src/components/oppList__c/README.md +52 -0
  63. package/template/neo-bi-cmps/src/components/oppList__c/index.tsx +228 -0
  64. package/template/neo-bi-cmps/src/components/oppList__c/model.ts +40 -0
  65. package/template/neo-bi-cmps/src/components/oppList__c/style.scss +133 -0
  66. package/template/neo-bi-cmps/src/components/pipelineFunnel__c/README.md +39 -0
  67. package/template/neo-bi-cmps/src/components/pipelineFunnel__c/index.tsx +128 -0
  68. package/template/neo-bi-cmps/src/components/pipelineFunnel__c/model.ts +42 -0
  69. package/template/neo-bi-cmps/src/components/pipelineFunnel__c/style.scss +133 -0
  70. package/template/neo-bi-cmps/src/components/stageSwitch__c/README.md +36 -0
  71. package/template/neo-bi-cmps/src/components/stageSwitch__c/index.tsx +103 -0
  72. package/template/neo-bi-cmps/src/components/stageSwitch__c/model.ts +37 -0
  73. package/template/neo-bi-cmps/src/components/stageSwitch__c/style.scss +89 -0
  74. package/template/neo-bi-cmps/src/components/stageTimeChart__c/README.md +37 -0
  75. package/template/neo-bi-cmps/src/components/stageTimeChart__c/index.tsx +126 -0
  76. package/template/neo-bi-cmps/src/components/stageTimeChart__c/model.ts +35 -0
  77. package/template/neo-bi-cmps/src/components/stageTimeChart__c/style.scss +140 -0
  78. package/template/neo-bi-cmps/src/components/tabSwitch__c/README.md +37 -0
  79. package/template/neo-bi-cmps/src/components/tabSwitch__c/index.tsx +80 -0
  80. package/template/neo-bi-cmps/src/components/tabSwitch__c/model.ts +45 -0
  81. package/template/neo-bi-cmps/src/components/tabSwitch__c/style.scss +37 -0
  82. package/template/neo-custom-cmp-template/package.json +1 -1
  83. package/template/neo-custom-cmp-template/src/components/entityForm__c/index.tsx +48 -54
  84. package/template/neo-custom-cmp-template/src/components/entityForm__c/model.ts +1 -1
  85. package/template/neo-custom-cmp-template/src/components/entityForm__c/style.scss +80 -77
  86. package/template/neo-h5-cmps/package.json +1 -1
  87. package/template/neo-order-cmps/package.json +1 -1
  88. package/template/neo-web-entity-grid/package.json +1 -1
  89. package/template/neo-web-entity-grid/src/components/createForm__c/index.tsx +46 -54
  90. package/template/neo-web-entity-grid/src/components/createForm__c/resetAntd.scss +74 -0
  91. package/template/neo-web-entity-grid/src/components/createForm__c/style.scss +81 -152
  92. package/template/neo-web-entity-grid/src/components/searchForm__c/index.tsx +47 -52
  93. package/template/neo-web-entity-grid/src/components/searchForm__c/style.scss +60 -74
  94. package/template/neo-web-form/package.json +1 -1
  95. package/template/neo-web-form/src/components/batchAddTable__c/index.tsx +16 -7
  96. package/template/neo-web-form/src/components/batchAddTable__c/style.scss +14 -0
  97. package/template/neo-web-form/src/components/batchAddTable__c/tableModal.scss +60 -13
  98. package/template/react-custom-cmp-template/package.json +1 -1
  99. package/template/react-ts-custom-cmp-template/package.json +1 -1
  100. package/template/vue2-custom-cmp-template/package.json +1 -1
@@ -1,14 +1,24 @@
1
1
  .entityForm__c {
2
+ padding: 24px;
3
+ box-sizing: border-box;
4
+ background-color: #fff;
5
+
2
6
  .form-header {
3
- margin-bottom: 24px;
4
- padding-bottom: 16px;
5
- border-bottom: 1px solid #f0f0f0;
7
+ display: flex;
8
+ align-items: center;
9
+ height: 38px;
10
+ padding: 0 12px;
11
+ margin-bottom: 20px;
12
+ box-sizing: border-box;
13
+ background: #f5f5f5;
14
+ border-radius: 8px;
6
15
 
7
16
  .form-title {
8
17
  margin: 0;
9
- font-size: 18px;
10
- font-weight: 600;
18
+ font-size: 14px;
19
+ font-weight: 500;
11
20
  color: #262626;
21
+ line-height: 1.2;
12
22
  }
13
23
  }
14
24
 
@@ -21,7 +31,7 @@
21
31
  padding-bottom: 6px;
22
32
 
23
33
  label {
24
- font-weight: 500;
34
+ font-weight: 400;
25
35
  color: #262626;
26
36
  font-size: 14px;
27
37
 
@@ -113,59 +123,66 @@
113
123
  }
114
124
 
115
125
  .form-actions {
126
+ display: flex;
127
+ justify-content: flex-end;
128
+ align-items: center;
129
+ flex-wrap: wrap;
116
130
  margin-top: 32px;
117
- padding-top: 24px;
118
- border-top: 1px solid #f0f0f0;
119
- text-align: center;
131
+ padding-top: 16px;
132
+ border-top: 1px solid rgba(0, 0, 0, 0.06);
120
133
 
121
- .ant-space {
122
- .ant-btn {
123
- min-width: 100px;
124
- height: 40px;
125
- font-size: 15px;
126
- border-radius: 4px;
127
- font-weight: 500;
128
- transition: all 0.3s;
134
+ .ant-btn {
135
+ height: 32px;
136
+ padding: 0 14px;
137
+ font-size: 14px;
138
+ border-radius: 16px;
139
+ font-weight: 400;
140
+ min-width: auto;
141
+ margin-left: 10px;
142
+ transition: all 0.3s;
143
+
144
+ &:first-child {
145
+ margin-left: 0;
146
+ }
129
147
 
130
- &.ant-btn-primary {
131
- background: #1890ff;
132
- border-color: #1890ff;
148
+ &.ant-btn-primary {
149
+ background: #1890ff;
150
+ border-color: #1890ff;
133
151
 
134
- &:hover {
135
- background: #40a9ff;
136
- border-color: #40a9ff;
137
- transform: translateY(-2px);
138
- box-shadow: 0 4px 12px rgba(24, 144, 255, 0.3);
139
- }
152
+ &:hover {
153
+ background: #40a9ff;
154
+ border-color: #40a9ff;
155
+ transform: translateY(-1px);
156
+ box-shadow: 0 4px 12px rgba(24, 144, 255, 0.3);
157
+ }
140
158
 
141
- &:active {
142
- background: #096dd9;
143
- border-color: #096dd9;
144
- transform: translateY(0);
145
- }
159
+ &:active {
160
+ background: #096dd9;
161
+ border-color: #096dd9;
162
+ transform: translateY(0);
163
+ }
146
164
 
147
- &:disabled {
148
- background: #f5f5f5;
149
- border-color: #d9d9d9;
150
- color: rgba(0, 0, 0, 0.25);
151
- transform: none;
152
- box-shadow: none;
153
- }
165
+ &:disabled {
166
+ background: #f5f5f5;
167
+ border-color: #d9d9d9;
168
+ color: rgba(0, 0, 0, 0.25);
169
+ transform: none;
170
+ box-shadow: none;
154
171
  }
172
+ }
155
173
 
156
- &:not(.ant-btn-primary) {
157
- &:hover {
158
- color: #40a9ff;
159
- border-color: #40a9ff;
160
- transform: translateY(-2px);
161
- box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
162
- }
174
+ &:not(.ant-btn-primary) {
175
+ &:hover {
176
+ color: #40a9ff;
177
+ border-color: #40a9ff;
178
+ transform: translateY(-1px);
179
+ box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
180
+ }
163
181
 
164
- &:active {
165
- color: #096dd9;
166
- border-color: #096dd9;
167
- transform: translateY(0);
168
- }
182
+ &:active {
183
+ color: #096dd9;
184
+ border-color: #096dd9;
185
+ transform: translateY(0);
169
186
  }
170
187
  }
171
188
  }
@@ -197,10 +214,9 @@
197
214
  @media (max-width: 768px) {
198
215
  .form-header {
199
216
  margin-bottom: 16px;
200
- padding-bottom: 12px;
201
217
 
202
218
  .form-title {
203
- font-size: 16px;
219
+ font-size: 13px;
204
220
  }
205
221
  }
206
222
 
@@ -228,12 +244,9 @@
228
244
  margin-top: 24px;
229
245
  padding-top: 16px;
230
246
 
231
- .ant-space {
232
- .ant-btn {
233
- min-width: 80px;
234
- height: 36px;
235
- font-size: 14px;
236
- }
247
+ .ant-btn {
248
+ height: 32px;
249
+ font-size: 13px;
237
250
  }
238
251
  }
239
252
  }
@@ -242,7 +255,7 @@
242
255
  @media (max-width: 576px) {
243
256
  .form-header {
244
257
  .form-title {
245
- font-size: 15px;
258
+ font-size: 13px;
246
259
  }
247
260
  }
248
261
 
@@ -268,16 +281,16 @@
268
281
  }
269
282
 
270
283
  .form-actions {
271
- .ant-space {
272
- width: 100%;
284
+ flex-direction: column;
285
+ align-items: stretch;
273
286
 
274
- .ant-space-item {
275
- flex: 1;
276
- }
287
+ .ant-btn {
288
+ width: 100%;
289
+ margin-left: 0;
290
+ margin-top: 10px;
277
291
 
278
- .ant-btn {
279
- width: 100%;
280
- min-width: auto;
292
+ &:first-child {
293
+ margin-top: 0;
281
294
  }
282
295
  }
283
296
  }
@@ -285,16 +298,6 @@
285
298
  }
286
299
  }
287
300
 
288
- // 全局样式覆盖
289
- .ant-card {
290
- border-radius: 6px;
291
- box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
292
-
293
- .ant-card-body {
294
- padding: 24px;
295
- }
296
- }
297
-
298
301
  // Spin 加载样式
299
302
  .ant-spin {
300
303
  .ant-spin-dot {
@@ -49,7 +49,7 @@
49
49
  "@types/react": "^16.9.11",
50
50
  "@types/react-dom": "^16.9.15",
51
51
  "@types/axios": "^0.14.0",
52
- "neo-cmp-cli": "^1.13.11",
52
+ "neo-cmp-cli": "^1.13.13",
53
53
  "husky": "^4.2.5",
54
54
  "lint-staged": "^10.2.9",
55
55
  "prettier": "^2.0.5"
@@ -47,7 +47,7 @@
47
47
  "@types/react": "^16.9.11",
48
48
  "@types/react-dom": "^16.9.15",
49
49
  "@types/axios": "^0.14.0",
50
- "neo-cmp-cli": "^1.13.11",
50
+ "neo-cmp-cli": "^1.13.13",
51
51
  "husky": "^4.2.5",
52
52
  "lint-staged": "^10.2.9",
53
53
  "prettier": "^2.0.5"
@@ -52,7 +52,7 @@
52
52
  "@types/react-dom": "^16.9.15",
53
53
  "husky": "^4.2.5",
54
54
  "lint-staged": "^10.2.9",
55
- "neo-cmp-cli": "^1.13.11",
55
+ "neo-cmp-cli": "^1.13.13",
56
56
  "prettier": "^2.0.5"
57
57
  },
58
58
  "overrides": {
@@ -9,10 +9,8 @@ import {
9
9
  Select,
10
10
  Button,
11
11
  message,
12
- Card,
13
12
  DatePicker,
14
13
  InputNumber,
15
- Space,
16
14
  Spin,
17
15
  Empty,
18
16
  Row,
@@ -176,7 +174,7 @@ export default class CreateEntityForm extends React.PureComponent<
176
174
  * 组件更新后执行
177
175
  * 当 xObjectApiKey 发生变化时重新加载字段列表
178
176
  */
179
- async componentDidUpdate(prevProps: EntityFormProps) {
177
+ async componentDidUpdate(prevProps: CreateFormProps) {
180
178
  const { xObjectApiKey, fields } = this.props.xObjectDataApi || {};
181
179
  const { xObjectApiKey: prevXObjectApiKey, fields: prevFields } =
182
180
  prevProps.xObjectDataApi || {};
@@ -732,59 +730,53 @@ export default class CreateEntityForm extends React.PureComponent<
732
730
 
733
731
  return (
734
732
  <div className={`createForm__c ${className}`}>
735
- <Card>
736
- <div className="form-header">
737
- <h3 className="form-title">
738
- {displayTitle}
739
- </h3>
740
- </div>
741
-
742
- <div className="form-content">
743
- <Spin spinning={loading} tip="加载字段信息...">
744
- {error ? (
745
- <Empty
746
- image={Empty.PRESENTED_IMAGE_SIMPLE}
747
- description={
748
- <div>
749
- <div style={{ color: '#ff4d4f', marginBottom: 8 }}>
750
- {error}
751
- </div>
752
- <Button type="primary" onClick={this.loadFieldList}>
753
- 重新加载
754
- </Button>
733
+ <div className="form-header">
734
+ <h3 className="form-title">{displayTitle}</h3>
735
+ </div>
736
+
737
+ <div className="form-content">
738
+ <Spin spinning={loading} tip="加载字段信息...">
739
+ {error ? (
740
+ <Empty
741
+ image={Empty.PRESENTED_IMAGE_SIMPLE}
742
+ description={
743
+ <div>
744
+ <div style={{ color: '#ff4d4f', marginBottom: 8 }}>
745
+ {error}
755
746
  </div>
756
- }
757
- />
758
- ) : (
759
- <>
760
- {this.renderForm()}
761
- <div className="form-actions">
762
- <Space size="middle">
763
- <Button
764
- type="primary"
765
- icon={<SaveOutlined />}
766
- onClick={this.handleSubmit}
767
- loading={submitting}
768
- disabled={!xObjectApiKey}
769
- >
770
- {submitting ? '提交中...' : '提交'}
771
- </Button>
772
- {showResetButton && (
773
- <Button
774
- icon={<ReloadOutlined />}
775
- onClick={this.handleReset}
776
- disabled={submitting}
777
- >
778
- 重置
779
- </Button>
780
- )}
781
- </Space>
747
+ <Button type="primary" onClick={this.loadFieldList}>
748
+ 重新加载
749
+ </Button>
782
750
  </div>
783
- </>
784
- )}
785
- </Spin>
786
- </div>
787
- </Card>
751
+ }
752
+ />
753
+ ) : (
754
+ <>
755
+ {this.renderForm()}
756
+ <div className="form-actions">
757
+ {showResetButton && (
758
+ <Button
759
+ icon={<ReloadOutlined />}
760
+ onClick={this.handleReset}
761
+ disabled={submitting}
762
+ >
763
+ 重置
764
+ </Button>
765
+ )}
766
+ <Button
767
+ type="primary"
768
+ icon={<SaveOutlined />}
769
+ onClick={this.handleSubmit}
770
+ loading={submitting}
771
+ disabled={!xObjectApiKey}
772
+ >
773
+ {submitting ? '提交中...' : '提交'}
774
+ </Button>
775
+ </div>
776
+ </>
777
+ )}
778
+ </Spin>
779
+ </div>
788
780
  </div>
789
781
  );
790
782
  }
@@ -0,0 +1,74 @@
1
+
2
+ // Spin 加载样式
3
+ .ant-spin {
4
+ .ant-spin-dot {
5
+ font-size: 20px;
6
+ }
7
+
8
+ .ant-spin-text {
9
+ color: #8c8c8c;
10
+ font-size: 14px;
11
+ }
12
+ }
13
+
14
+ // Select 下拉样式优化
15
+ .ant-select-dropdown {
16
+ border-radius: 4px;
17
+ box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
18
+
19
+ .ant-select-item {
20
+ padding: 8px 12px;
21
+
22
+ &:hover {
23
+ background-color: #f5f5f5;
24
+ }
25
+
26
+ &.ant-select-item-option-selected {
27
+ background-color: #e6f7ff;
28
+ color: #1890ff;
29
+ font-weight: 500;
30
+ }
31
+ }
32
+ }
33
+
34
+ // DatePicker 日期选择器样式优化
35
+ .ant-picker-dropdown {
36
+ .ant-picker-panel-container {
37
+ border-radius: 4px;
38
+ box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
39
+ }
40
+
41
+ .ant-picker-cell-selected {
42
+ .ant-picker-cell-inner {
43
+ background-color: #1890ff;
44
+ }
45
+ }
46
+
47
+ .ant-picker-cell:hover:not(.ant-picker-cell-selected) {
48
+ .ant-picker-cell-inner {
49
+ background-color: #f5f5f5;
50
+ }
51
+ }
52
+ }
53
+
54
+ // InputNumber 数字输入框样式优化
55
+ .ant-input-number {
56
+ .ant-input-number-handler-wrap {
57
+ opacity: 0;
58
+ transition: opacity 0.3s;
59
+ }
60
+
61
+ &:hover {
62
+ .ant-input-number-handler-wrap {
63
+ opacity: 1;
64
+ }
65
+ }
66
+
67
+ .ant-input-number-handler {
68
+ border-left: 1px solid #d9d9d9;
69
+
70
+ &:hover {
71
+ background-color: #f5f5f5;
72
+ }
73
+ }
74
+ }