antd-management-fast-develop 1.1.163 → 1.1.166

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/bin/cli.js CHANGED
@@ -8,6 +8,7 @@ const { Command } = require('commander');
8
8
  const { getArgCollection } = require('easy-soft-develop');
9
9
 
10
10
  const generator = require('../src/cliCollection/generate');
11
+ const generateConfig = require('../src/cliCollection/generateConfig');
11
12
  const templateGenerator = require('../src/cliCollection/generateTemplate');
12
13
 
13
14
  const program = new Command();
@@ -29,6 +30,14 @@ program
29
30
  generator.run(a, o);
30
31
  });
31
32
 
33
+ program
34
+ .command('generateConfig')
35
+ .description('generate config file')
36
+ .option('--dataPath <string>', 'data json source file path')
37
+ .action((a, o) => {
38
+ generateConfig.run(a, o);
39
+ });
40
+
32
41
  program
33
42
  .command('generateByTemplate')
34
43
  .description('generate file by template')
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "antd-management-fast-develop",
3
- "version": "1.1.163",
3
+ "version": "1.1.166",
4
4
  "description": "",
5
5
  "license": "ISC",
6
6
  "author": "",
@@ -22,6 +22,7 @@
22
22
  "publish:npm": "npm publish --registry https://registry.npmjs.org/",
23
23
  "test:ejs:generate": "node ./bin/cli.js generate --dataPath ./src/data.json --dataExtraPath ./src/data.extra.json",
24
24
  "test:ejs:generateByTemplate": "node ./bin/cli.js generateByTemplate --dataPath ./data/generateByTemplate.data.json --templatePath ./data/generateByTemplate.template.ejs --relativeFolder ./temp",
25
+ "test:ejs:generateConfig": "node ./bin/cli.js generateConfig --dataPath ./data/testGenerateConfig.config.json",
25
26
  "z:auto:adjust:file": "echo can exec some file adjust command with here",
26
27
  "z:jsdoc:clear": "npx easy-soft-develop rimraf --path ./docs",
27
28
  "prez:jsdoc:generate": "npm run z:jsdoc:clear",
@@ -55,7 +56,8 @@
55
56
  "commander": "^14.0.2",
56
57
  "ejs": "^3.1.10",
57
58
  "rimraf": "^6.1.0",
58
- "umi": "^4.5.3"
59
+ "umi": "^4.5.3",
60
+ "uuid": "^13.0.0"
59
61
  },
60
62
  "devDependencies": {
61
63
  "@babel/core": "^7.28.5",
@@ -0,0 +1,65 @@
1
+ /* eslint-disable no-undef */
2
+ /* eslint-disable unicorn/prefer-module */
3
+ /* eslint-disable no-useless-escape */
4
+ const {
5
+ promptWarn,
6
+ checkStringIsEmpty,
7
+ readJsonFileSync,
8
+ isObject,
9
+ exit,
10
+ promptInfo,
11
+ exec,
12
+ resolvePath,
13
+ promptLine,
14
+ promptEmptyLine,
15
+ promptError,
16
+ } = require('easy-soft-develop');
17
+ const { generateConfig } = require('../tools/generateConfig');
18
+
19
+ exports.run = function (s, o) {
20
+ const {
21
+ _optionValues: { dataPath = '' },
22
+ } = o;
23
+
24
+ if (checkStringIsEmpty(dataPath)) {
25
+ promptWarn(
26
+ 'please input data json file path or data extra json file path, use --help to get help info',
27
+ );
28
+
29
+ exit();
30
+ }
31
+
32
+ promptEmptyLine();
33
+
34
+ let crateFileSuccess = false;
35
+
36
+ if (!checkStringIsEmpty(dataPath)) {
37
+ const dataPathAbsolute = resolvePath(dataPath);
38
+
39
+ const data = readJsonFileSync(dataPath);
40
+
41
+ if (isObject(data) && Array.isArray(data.list)) {
42
+ promptInfo('Config file will generate, please wait a moment.');
43
+
44
+ if (checkStringIsEmpty(data.mainFolder ?? '')) {
45
+ promptError('mainFolder disallow empty!');
46
+ } else {
47
+ generateConfig(data.list, data.mainFolder, dataPathAbsolute);
48
+
49
+ crateFileSuccess = true;
50
+ }
51
+ }
52
+ }
53
+
54
+ if (crateFileSuccess) {
55
+ promptLine();
56
+
57
+ const cmdFormat = `npx prettier --cache --write ./`;
58
+
59
+ promptInfo(`Format generated file: "${cmdFormat}".`);
60
+
61
+ exec(cmdFormat);
62
+ }
63
+
64
+ exit();
65
+ };
@@ -62,13 +62,13 @@ exports.run = function (s, o) {
62
62
  }
63
63
 
64
64
  if (crateFileSuccess) {
65
- promptLine();
65
+ // promptLine();
66
66
 
67
- const cmdEslint = `npx eslint --fix --cache --ext .js,.jsx,.ts,.tsx ${relativeFolder}/`;
67
+ // const cmdEslint = `npx eslint --fix --cache --ext .js,.jsx,.ts,.tsx ${relativeFolder}/`;
68
68
 
69
- promptInfo(`Eslint generated file: "${cmdEslint}".`);
69
+ // promptInfo(`Eslint generated file: "${cmdEslint}".`);
70
70
 
71
- exec(cmdEslint);
71
+ // exec(cmdEslint);
72
72
 
73
73
  promptLine();
74
74
 
@@ -0,0 +1,623 @@
1
+ /* eslint-disable no-undef */
2
+ /* eslint-disable unicorn/prefer-module */
3
+ /* eslint-disable no-useless-escape */
4
+
5
+ const uuid = require('uuid');
6
+ const {
7
+ promptSuccess,
8
+ promptWarn,
9
+ promptEmptyLine,
10
+ writeJsonFileSync,
11
+ } = require('easy-soft-develop');
12
+
13
+ const configDefined = {
14
+ model: '',
15
+ key: '',
16
+ action: false,
17
+ config: false,
18
+ tools: false,
19
+ data: false,
20
+ addBasicInfoDrawer: false,
21
+ changeImageModal: false,
22
+ changeSortModal: false,
23
+ tabPageBase: false,
24
+ edit: false,
25
+ basicInfo: false,
26
+ operateLogDrawer: false,
27
+ operateLogInnerPageList: false,
28
+ pageList: false,
29
+ pageListDrawer: false,
30
+ baseInnerPageList: false,
31
+ pageListSelectDrawer: false,
32
+ pageListSelectModal: false,
33
+ pageListSelectActionDrawer: false,
34
+ selectDrawerField: false,
35
+ selectModalField: false,
36
+ updateBasicInfoDrawer: false,
37
+ };
38
+
39
+ function generateConfig(list, mainFolder, path) {
40
+ const listAdjust = list.map((o) => adjustSource(o));
41
+
42
+ generateAddBasicInfoDrawerConfig(listAdjust, mainFolder, path);
43
+ }
44
+
45
+ function generateAddBasicInfoDrawerConfig(list, mainFolder, path) {
46
+ generateConfigCore({
47
+ list,
48
+ mainFolder,
49
+ path,
50
+ fileName: 'addBasicInfoDrawer.config.json',
51
+ judgeCallback: (one) => {
52
+ const { addBasicInfoDrawer } = {
53
+ ...configDefined,
54
+ ...one,
55
+ };
56
+
57
+ return addBasicInfoDrawer || false;
58
+ },
59
+ buildCallback: ({ mainFolder, folder, model, key }) => {
60
+ return {
61
+ folder: `${mainFolder}/${folder}/AddBasicInfoDrawer`,
62
+ model: model,
63
+ key: key,
64
+ visibleFlag: uuid.v4().replaceAll('-', ''),
65
+ fileName: 'index.jsx',
66
+ coverFile: false,
67
+ };
68
+ },
69
+ });
70
+
71
+ generateConfigCore({
72
+ list,
73
+ mainFolder,
74
+ path,
75
+ fileName: 'assist.action.config.json',
76
+ judgeCallback: (one) => {
77
+ const { action } = {
78
+ ...configDefined,
79
+ ...one,
80
+ };
81
+
82
+ return action || false;
83
+ },
84
+ buildCallback: ({ mainFolder, folder, model, key }) => {
85
+ return {
86
+ folder: `${mainFolder}/${folder}/Assist`,
87
+ model: model,
88
+ key: key,
89
+ fileName: 'action.js',
90
+ coverFile: false,
91
+ };
92
+ },
93
+ });
94
+
95
+ generateConfigCore({
96
+ list,
97
+ mainFolder,
98
+ path,
99
+ fileName: 'assist.config.config.json',
100
+ judgeCallback: (one) => {
101
+ const { config } = {
102
+ ...configDefined,
103
+ ...one,
104
+ };
105
+
106
+ return config || false;
107
+ },
108
+ buildCallback: ({ mainFolder, folder, model, key }) => {
109
+ return {
110
+ folder: `${mainFolder}/${folder}/Assist`,
111
+ model: model,
112
+ key: key,
113
+ fileName: 'config.js',
114
+ coverFile: false,
115
+ };
116
+ },
117
+ });
118
+
119
+ generateConfigCore({
120
+ list,
121
+ mainFolder,
122
+ path,
123
+ fileName: 'assist.tools.config.json',
124
+ judgeCallback: (one) => {
125
+ const { tools } = {
126
+ ...configDefined,
127
+ ...one,
128
+ };
129
+
130
+ return tools || false;
131
+ },
132
+ buildCallback: ({ mainFolder, folder, model, key }) => {
133
+ return {
134
+ folder: `${mainFolder}/${folder}/Assist`,
135
+ model: model,
136
+ key: key,
137
+ fileName: 'tools.js',
138
+ coverFile: false,
139
+ };
140
+ },
141
+ });
142
+
143
+ generateConfigCore({
144
+ list,
145
+ mainFolder,
146
+ path,
147
+ fileName: 'common.data.config.json',
148
+ judgeCallback: (one) => {
149
+ const { data } = {
150
+ ...configDefined,
151
+ ...one,
152
+ };
153
+
154
+ return data || false;
155
+ },
156
+ buildCallback: ({ mainFolder, folder, model, key }) => {
157
+ return {
158
+ folder: `${mainFolder}/${folder}/Common`,
159
+ model: model,
160
+ key: key,
161
+ fileName: 'data.js',
162
+ coverFile: false,
163
+ };
164
+ },
165
+ });
166
+
167
+ generateConfigCore({
168
+ list,
169
+ mainFolder,
170
+ path,
171
+ fileName: 'changeImageModal.config.json',
172
+ judgeCallback: (one) => {
173
+ const { changeImageModal } = {
174
+ ...configDefined,
175
+ ...one,
176
+ };
177
+
178
+ return changeImageModal || false;
179
+ },
180
+ buildCallback: ({ mainFolder, folder, model, key }) => {
181
+ return {
182
+ folder: `${mainFolder}/${folder}/ChangeImageModal`,
183
+ model: model,
184
+ key: key,
185
+ visibleFlag: uuid.v4().replaceAll('-', ''),
186
+ fileName: 'index.jsx',
187
+ coverFile: false,
188
+ };
189
+ },
190
+ });
191
+
192
+ generateConfigCore({
193
+ list,
194
+ mainFolder,
195
+ path,
196
+ fileName: 'changeSortModal.config.json',
197
+ judgeCallback: (one) => {
198
+ const { changeSortModal } = {
199
+ ...configDefined,
200
+ ...one,
201
+ };
202
+
203
+ return changeSortModal || false;
204
+ },
205
+ buildCallback: ({ mainFolder, folder, model, key }) => {
206
+ return {
207
+ folder: `${mainFolder}/${folder}/ChangeSortModal`,
208
+ model: model,
209
+ key: key,
210
+ visibleFlag: uuid.v4().replaceAll('-', ''),
211
+ fileName: 'index.jsx',
212
+ coverFile: false,
213
+ };
214
+ },
215
+ });
216
+
217
+ generateConfigCore({
218
+ list,
219
+ mainFolder,
220
+ path,
221
+ fileName: 'edit.basicInfo.config.json',
222
+ judgeCallback: (one) => {
223
+ const { basicInfo } = {
224
+ ...configDefined,
225
+ ...one,
226
+ };
227
+
228
+ return basicInfo || false;
229
+ },
230
+ buildCallback: ({ mainFolder, folder, model, key }) => {
231
+ return {
232
+ folder: `${mainFolder}/${folder}/Edit/BasicInfo`,
233
+ model: model,
234
+ key: key,
235
+ fileName: 'index.jsx',
236
+ coverFile: false,
237
+ };
238
+ },
239
+ });
240
+
241
+ generateConfigCore({
242
+ list,
243
+ mainFolder,
244
+ path,
245
+ fileName: 'edit.config.json',
246
+ judgeCallback: (one) => {
247
+ const { edit } = {
248
+ ...configDefined,
249
+ ...one,
250
+ };
251
+
252
+ return edit || false;
253
+ },
254
+ buildCallback: ({ mainFolder, folder, model, key }) => {
255
+ return {
256
+ folder: `${mainFolder}/${folder}/Edit`,
257
+ name: folder,
258
+ model: model,
259
+ key: key,
260
+ fileName: 'index.jsx',
261
+ coverFile: false,
262
+ };
263
+ },
264
+ });
265
+
266
+ generateConfigCore({
267
+ list,
268
+ mainFolder,
269
+ path,
270
+ fileName: 'operateLog.drawer.config.json',
271
+ judgeCallback: (one) => {
272
+ const { operateLogDrawer } = {
273
+ ...configDefined,
274
+ ...one,
275
+ };
276
+
277
+ return operateLogDrawer || false;
278
+ },
279
+ buildCallback: ({ mainFolder, folder, model, key }) => {
280
+ return {
281
+ folder: `${mainFolder}/${folder}/OperateLogDrawer`,
282
+ model: model,
283
+ key: key,
284
+ visibleFlag: uuid.v4().replaceAll('-', ''),
285
+ fileName: 'index.jsx',
286
+ coverFile: true,
287
+ };
288
+ },
289
+ });
290
+
291
+ generateConfigCore({
292
+ list,
293
+ mainFolder,
294
+ path,
295
+ fileName: 'operateLog.edit.pageList.config.json',
296
+ judgeCallback: (one) => {
297
+ const { operateLogInnerPageList } = {
298
+ ...configDefined,
299
+ ...one,
300
+ };
301
+
302
+ return operateLogInnerPageList || false;
303
+ },
304
+ buildCallback: ({ mainFolder, folder, model, key }) => {
305
+ return {
306
+ folder: `${mainFolder}/${folder}/Edit/OperateLog/PageList`,
307
+ model: model,
308
+ key: key,
309
+ fileName: 'index.jsx',
310
+ coverFile: true,
311
+ };
312
+ },
313
+ });
314
+
315
+ generateConfigCore({
316
+ list,
317
+ mainFolder,
318
+ path,
319
+ fileName: 'pageList.config.json',
320
+ judgeCallback: (one) => {
321
+ const { pageList } = {
322
+ ...configDefined,
323
+ ...one,
324
+ };
325
+
326
+ return pageList || false;
327
+ },
328
+ buildCallback: ({ mainFolder, folder, model, key }) => {
329
+ return {
330
+ folder: `${mainFolder}/${folder}/PageList`,
331
+ model: model,
332
+ key: key,
333
+ fileName: 'index.jsx',
334
+ coverFile: false,
335
+ };
336
+ },
337
+ });
338
+
339
+ generateConfigCore({
340
+ list,
341
+ mainFolder,
342
+ path,
343
+ fileName: 'pageListDrawer.config.json',
344
+ judgeCallback: (one) => {
345
+ const { pageListDrawer } = {
346
+ ...configDefined,
347
+ ...one,
348
+ };
349
+
350
+ return pageListDrawer || false;
351
+ },
352
+ buildCallback: ({ mainFolder, folder, model, key }) => {
353
+ return {
354
+ folder: `${mainFolder}/${folder}/PageListDrawer`,
355
+ model: model,
356
+ key: key,
357
+ visibleFlag: uuid.v4().replaceAll('-', ''),
358
+ fileName: 'index.jsx',
359
+ coverFile: false,
360
+ };
361
+ },
362
+ });
363
+
364
+ generateConfigCore({
365
+ list,
366
+ mainFolder,
367
+ path,
368
+ fileName: 'baseInnerPageList.config.json',
369
+ judgeCallback: (one) => {
370
+ const { baseInnerPageList } = {
371
+ ...configDefined,
372
+ ...one,
373
+ };
374
+
375
+ return baseInnerPageList || false;
376
+ },
377
+ buildCallback: ({ mainFolder, folder, model, key }) => {
378
+ return {
379
+ folder: `${mainFolder}/${folder}/BaseInnerPageList`,
380
+ model: model,
381
+ key: key,
382
+ fileName: 'index.jsx',
383
+ coverFile: false,
384
+ };
385
+ },
386
+ });
387
+
388
+ generateConfigCore({
389
+ list,
390
+ mainFolder,
391
+ path,
392
+ fileName: 'pageListSelectDrawer.config.json',
393
+ judgeCallback: (one) => {
394
+ const { pageListSelectDrawer } = {
395
+ ...configDefined,
396
+ ...one,
397
+ };
398
+
399
+ return pageListSelectDrawer || false;
400
+ },
401
+ buildCallback: ({ mainFolder, folder, model, key }) => {
402
+ return {
403
+ folder: `${mainFolder}/${folder}/PageListSelectDrawer`,
404
+ model: model,
405
+ key: key,
406
+ visibleFlag: uuid.v4().replaceAll('-', ''),
407
+ fileName: 'index.jsx',
408
+ coverFile: false,
409
+ };
410
+ },
411
+ });
412
+
413
+ generateConfigCore({
414
+ list,
415
+ mainFolder,
416
+ path,
417
+ fileName: 'pageListSelectModal.config.json',
418
+ judgeCallback: (one) => {
419
+ const { pageListSelectModal } = {
420
+ ...configDefined,
421
+ ...one,
422
+ };
423
+
424
+ return pageListSelectModal || false;
425
+ },
426
+ buildCallback: ({ mainFolder, folder, model, key }) => {
427
+ return {
428
+ folder: `${mainFolder}/${folder}/PageListSelectModal`,
429
+ model: model,
430
+ key: key,
431
+ visibleFlag: uuid.v4().replaceAll('-', ''),
432
+ fileName: 'index.jsx',
433
+ coverFile: false,
434
+ };
435
+ },
436
+ });
437
+
438
+ generateConfigCore({
439
+ list,
440
+ mainFolder,
441
+ path,
442
+ fileName: 'pageListSelectActionDrawer.config.json',
443
+ judgeCallback: (one) => {
444
+ const { pageListSelectActionDrawer } = {
445
+ ...configDefined,
446
+ ...one,
447
+ };
448
+
449
+ return pageListSelectActionDrawer || false;
450
+ },
451
+ buildCallback: ({ mainFolder, folder, model, key }) => {
452
+ return {
453
+ folder: `${mainFolder}/${folder}/PageListSelectActionDrawer`,
454
+ model: model,
455
+ key: key,
456
+ visibleFlag: uuid.v4().replaceAll('-', ''),
457
+ fileName: 'index.jsx',
458
+ coverFile: false,
459
+ };
460
+ },
461
+ });
462
+
463
+ generateConfigCore({
464
+ list,
465
+ mainFolder,
466
+ path,
467
+ fileName: 'selectDrawerField.config.json',
468
+ judgeCallback: (one) => {
469
+ const { selectDrawerField } = {
470
+ ...configDefined,
471
+ ...one,
472
+ };
473
+
474
+ return selectDrawerField || false;
475
+ },
476
+ buildCallback: ({ mainFolder, folder, model, key }) => {
477
+ return {
478
+ folder: `${mainFolder}/${folder}/SelectDrawerField`,
479
+ model: model,
480
+ key: key,
481
+ fileName: 'index.jsx',
482
+ coverFile: false,
483
+ };
484
+ },
485
+ });
486
+
487
+ generateConfigCore({
488
+ list,
489
+ mainFolder,
490
+ path,
491
+ fileName: 'selectModalField.config.json',
492
+ judgeCallback: (one) => {
493
+ const { selectModalField } = {
494
+ ...configDefined,
495
+ ...one,
496
+ };
497
+
498
+ return selectModalField || false;
499
+ },
500
+ buildCallback: ({ mainFolder, folder, model, key }) => {
501
+ return {
502
+ folder: `${mainFolder}/${folder}/SelectModalField`,
503
+ model: model,
504
+ key: key,
505
+ fileName: 'index.jsx',
506
+ coverFile: false,
507
+ };
508
+ },
509
+ });
510
+
511
+ generateConfigCore({
512
+ list,
513
+ mainFolder,
514
+ path,
515
+ fileName: 'tabPageBase.config.json',
516
+ judgeCallback: (one) => {
517
+ const { tabPageBase } = {
518
+ ...configDefined,
519
+ ...one,
520
+ };
521
+
522
+ return tabPageBase || false;
523
+ },
524
+ buildCallback: ({ mainFolder, folder, model, key }) => {
525
+ return {
526
+ folder: `${mainFolder}/${folder}/TabPageBase`,
527
+ model: model,
528
+ key: key,
529
+ fileName: 'index.jsx',
530
+ coverFile: false,
531
+ };
532
+ },
533
+ });
534
+
535
+ generateConfigCore({
536
+ list,
537
+ mainFolder,
538
+ path,
539
+ fileName: 'updateBasicInfoDrawer.config.json',
540
+ judgeCallback: (one) => {
541
+ const { updateBasicInfoDrawer } = {
542
+ ...configDefined,
543
+ ...one,
544
+ };
545
+
546
+ return updateBasicInfoDrawer || false;
547
+ },
548
+ buildCallback: ({ mainFolder, folder, model, key }) => {
549
+ return {
550
+ folder: `${mainFolder}/${folder}/UpdateBasicInfoDrawer`,
551
+ model: model,
552
+ key: key,
553
+ visibleFlag: uuid.v4().replaceAll('-', ''),
554
+ fileName: 'index.jsx',
555
+ coverFile: false,
556
+ };
557
+ },
558
+ });
559
+ }
560
+
561
+ function generateConfigCore({
562
+ list,
563
+ mainFolder,
564
+ path,
565
+ fileName,
566
+ // eslint-disable-next-line no-unused-vars
567
+ judgeCallback = (one) => false,
568
+ // eslint-disable-next-line no-unused-vars
569
+ buildCallback = ({ mainFolder, folder, model, key }) => null,
570
+ }) {
571
+ const listResult = [];
572
+
573
+ for (const o of list) {
574
+ const judgeResult = judgeCallback(o);
575
+
576
+ if (!judgeResult) {
577
+ continue;
578
+ }
579
+
580
+ const { folder, model, key } = o;
581
+
582
+ listResult.push(
583
+ buildCallback({
584
+ mainFolder,
585
+ folder,
586
+ model,
587
+ key,
588
+ }),
589
+ );
590
+ }
591
+
592
+ const result = {};
593
+
594
+ result.list = listResult;
595
+
596
+ writeJsonFileSync(`${path}/../${fileName}`, result, {
597
+ coverFile: true,
598
+ });
599
+
600
+ promptSuccess(`Generate complete[${mainFolder}]: "./${fileName}".`);
601
+ }
602
+
603
+ function adjustSource(o) {
604
+ const d = { ...o };
605
+
606
+ const folder = d.folder;
607
+
608
+ if (folder === undefined) {
609
+ promptWarn('data has error, check item: ');
610
+
611
+ console.log(d);
612
+
613
+ promptEmptyLine();
614
+
615
+ throw new Error('data has not key "folder"');
616
+ }
617
+
618
+ return d;
619
+ }
620
+
621
+ module.exports = {
622
+ generateConfig,
623
+ };
@@ -51,7 +51,7 @@ function adjustSource(o) {
51
51
 
52
52
  promptEmptyLine();
53
53
 
54
- throw new Error('data has not key "functionSegment"');
54
+ throw new Error('data has not key "folder"');
55
55
  }
56
56
 
57
57
  return d;