zmp-cli 3.15.5 → 3.15.6-beta.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/README.md +1 -0
  2. package/build/index.js +1 -184
  3. package/config/index.js +1 -44
  4. package/create/index.js +1 -230
  5. package/create/init-zmp-ui.js +1 -216
  6. package/create/templates/app-parameters.js +9 -25
  7. package/create/templates/common/webpack/build.js +2 -40
  8. package/create/templates/copy-assets.js +1 -158
  9. package/create/templates/core/copy-assets.js +14 -82
  10. package/create/templates/core/generate-home-page.js +16 -38
  11. package/create/templates/core/generate-root.js +28 -63
  12. package/create/templates/core/generate-routes.js +12 -38
  13. package/create/templates/core/generate-scripts.js +16 -65
  14. package/create/templates/create-folders.js +1 -30
  15. package/create/templates/generate-config-xml.js +2 -9
  16. package/create/templates/generate-index.js +10 -35
  17. package/create/templates/generate-manifest.js +1 -49
  18. package/create/templates/generate-recoil.js +4 -16
  19. package/create/templates/generate-routes.js +1 -16
  20. package/create/templates/generate-scripts.js +1 -16
  21. package/create/templates/generate-service-worker.js +4 -10
  22. package/create/templates/generate-store.js +4 -15
  23. package/create/templates/generate-styles.js +10 -64
  24. package/create/templates/generate-webpack-config.js +43 -125
  25. package/create/templates/generate-zmp-custom.js +14 -72
  26. package/create/templates/react/copy-assets.js +1 -85
  27. package/create/templates/react/generate-home-page.js +20 -50
  28. package/create/templates/react/generate-root.js +15 -44
  29. package/create/templates/react/generate-routes.js +1 -16
  30. package/create/templates/react/generate-scripts.js +12 -38
  31. package/create/templates/react/pages/404.js +2 -10
  32. package/create/templates/react/pages/about.js +2 -10
  33. package/create/templates/react/pages/catalog.js +3 -17
  34. package/create/templates/react/pages/dynamic-route.js +2 -10
  35. package/create/templates/react/pages/form.js +6 -26
  36. package/create/templates/react/pages/index copy.js +1 -17
  37. package/create/templates/react/pages/index.js +1 -17
  38. package/create/templates/react/pages/settings.js +3 -17
  39. package/create/templates/react/pages/user.js +8 -27
  40. package/create/templates/react-typescript/components/app-items.js +2 -9
  41. package/create/templates/react-typescript/components/index.js +1 -9
  42. package/create/templates/react-typescript/components/navbar-back.js +2 -9
  43. package/create/templates/react-typescript/components/user-card.js +2 -9
  44. package/create/templates/react-typescript/copy-assets.js +1 -94
  45. package/create/templates/react-typescript/generate-home-page.js +20 -52
  46. package/create/templates/react-typescript/generate-root.js +14 -45
  47. package/create/templates/react-typescript/generate-routes.js +1 -12
  48. package/create/templates/react-typescript/generate-scripts.js +12 -37
  49. package/create/templates/react-typescript/pages/404.js +2 -10
  50. package/create/templates/react-typescript/pages/about.js +2 -10
  51. package/create/templates/react-typescript/pages/catalog.js +3 -17
  52. package/create/templates/react-typescript/pages/dynamic-route.js +2 -10
  53. package/create/templates/react-typescript/pages/form.js +6 -26
  54. package/create/templates/react-typescript/pages/index.js +1 -17
  55. package/create/templates/react-typescript/pages/settings.js +3 -17
  56. package/create/templates/react-typescript/pages/user.js +8 -27
  57. package/create/templates/svelte/copy-assets.js +1 -47
  58. package/create/templates/svelte/generate-home-page.js +20 -56
  59. package/create/templates/svelte/generate-root.js +22 -80
  60. package/create/templates/svelte/generate-routes.js +7 -22
  61. package/create/templates/svelte/generate-scripts.js +7 -23
  62. package/create/templates/vue/copy-assets.js +1 -67
  63. package/create/templates/vue/generate-home-page.js +2 -8
  64. package/create/templates/vue/generate-root.js +3 -13
  65. package/create/templates/vue/generate-routes.js +1 -7
  66. package/create/templates/vue/generate-scripts.js +9 -26
  67. package/create/templates/vue/global-components.d.js +1 -0
  68. package/create/templates/zaui/copy-assets.js +1 -90
  69. package/create/templates/zaui/generate-home-page.js +27 -53
  70. package/create/templates/zaui/generate-root.js +14 -34
  71. package/create/templates/zaui/generate-routes.js +1 -10
  72. package/create/templates/zaui/generate-scripts.js +6 -20
  73. package/create/templates/zaui/generate-user-card.js +3 -18
  74. package/create/templates/zaui/pages/about.js +3 -20
  75. package/create/templates/zaui/pages/form.js +3 -20
  76. package/create/templates/zaui/pages/index.js +1 -9
  77. package/create/templates/zaui/pages/user.js +3 -20
  78. package/create/utils/colors.js +1 -94
  79. package/create/utils/generate-app-config.js +1 -34
  80. package/create/utils/generate-gitignore.js +1 -43
  81. package/create/utils/generate-npm-scripts.js +1 -26
  82. package/create/utils/generate-package-json.js +1 -132
  83. package/create/utils/generate-readme.js +1 -28
  84. package/create/utils/get-options.js +1 -204
  85. package/create/utils/indent.js +1 -31
  86. package/create/utils/npm-scripts.js +1 -62
  87. package/create/utils/string.js +1 -13
  88. package/create/utils/styles-extension.js +1 -9
  89. package/create/utils/template-if.js +1 -9
  90. package/deploy/index.js +1 -148
  91. package/deploy/utils/get-options.js +1 -69
  92. package/deploy/utils/request-upload.js +1 -34
  93. package/deploy/utils/upload-app.js +1 -82
  94. package/index.js +1 -319
  95. package/login/index.js +1 -169
  96. package/login/utils/get-options.js +1 -58
  97. package/login/utils/zalo-login.js +1 -32
  98. package/migrate/icons/update-icon-v3.js +1 -19
  99. package/migrate/index.js +1 -60
  100. package/migrate/utils/get-options.js +1 -46
  101. package/migrate/utils/migrate-react.js +1 -33
  102. package/package.json +11 -39
  103. package/start/generate-hr-config.js +1 -59
  104. package/start/index.js +1 -382
  105. package/sync/index-to-app-config.js +1 -146
  106. package/sync/index.js +1 -55
  107. package/utils/axios.js +1 -15
  108. package/utils/check-update.js +1 -53
  109. package/utils/constants.js +1 -20
  110. package/utils/env.js +1 -39
  111. package/utils/error.js +1 -16
  112. package/utils/find-files-by-ext.js +1 -27
  113. package/utils/find-free-port.js +1 -11
  114. package/utils/fs-extra.js +1 -90
  115. package/utils/generate-pages-map.js +1 -17
  116. package/utils/get-app-info.js +1 -22
  117. package/utils/get-current-project.js +1 -25
  118. package/utils/get-ip.js +1 -19
  119. package/utils/log.js +1 -19
  120. package/utils/node-blob.js +1 -106
  121. package/utils/resumable.d.js +1 -0
  122. package/utils/resumable.js +1 -1204
  123. package/utils/spinner.js +1 -25
  124. package/utils/tunnel.js +1 -36
  125. package/.editorconfig +0 -15
  126. package/.eslintignore +0 -8
  127. package/.eslintrc.js +0 -10
  128. package/.vscode/launch.json +0 -23
  129. package/LICENSE +0 -21
  130. package/README.git.md +0 -37
  131. package/assets/index.js +0 -147
  132. package/build/dist/index.dev.js +0 -217
  133. package/config/dist/index.dev.js +0 -48
  134. package/create/templates/dist/generate-styles.dev.js +0 -46
  135. package/create/utils/dist/get-options.dev.js +0 -277
  136. package/deploy/dist/index.dev.js +0 -227
  137. package/dist/index.dev.js +0 -352
  138. package/jsconfig.json +0 -8
  139. package/login/dist/index.dev.js +0 -223
  140. package/screenshots/wellcome.jpg +0 -0
  141. package/show-qr-app/assets/css/style.css +0 -87
  142. package/show-qr-app/assets/js/qrcode.min.js +0 -1
  143. package/show-qr-app/index.html +0 -57
  144. package/show-qr-app/package.json +0 -14
  145. package/start/dist/index.dev.js +0 -312
  146. package/ui/server.js +0 -194
  147. package/ui/www/css/app.css +0 -1
  148. package/ui/www/css/app.css.map +0 -1
  149. package/ui/www/fonts/ZMPIcons-Regular.eot +0 -0
  150. package/ui/www/fonts/ZMPIcons-Regular.ttf +0 -0
  151. package/ui/www/fonts/ZMPIcons-Regular.woff +0 -0
  152. package/ui/www/fonts/ZMPIcons-Regular.woff2 +0 -0
  153. package/ui/www/images/logo.png +0 -0
  154. package/ui/www/index.html +0 -1
  155. package/ui/www/js/app.js +0 -3
  156. package/ui/www/js/app.js.LICENSE.txt +0 -20
  157. package/ui/www/js/app.js.map +0 -1
  158. package/ui/www/static/icons/apple-touch-icon.png +0 -0
  159. package/ui/www/static/icons/favicon.png +0 -0
  160. package/utils/dist/get-app-info.dev.js +0 -54
@@ -1,9 +1 @@
1
- const copyUser = require('./user');
2
- const copyForm = require('./form');
3
- const copyAbout = require('./about');
4
-
5
- module.exports = {
6
- copyUser,
7
- copyForm,
8
- copyAbout,
9
- };
1
+ "use strict";const e=require("./user"),r=require("./form"),u=require("./about");module.exports={copyUser:e,copyForm:r,copyAbout:u};
@@ -1,13 +1,4 @@
1
- const indent = require('../../../utils/indent');
2
- const { projectFramework } = require('../../../../utils/constants')
3
-
4
- module.exports = (options) => {
5
- const { framework } = options;
6
-
7
- if(framework === projectFramework.REACT_TYPESCRIPT){
8
- return indent(
9
- 0,
10
- `
1
+ "use strict";const e=require("../../../utils/indent"),{projectFramework:t}=require("../../../../utils/constants");module.exports=a=>{let{framework:i}=a;return i===t.REACT_TYPESCRIPT?e(0,`
11
2
  import React from "react";
12
3
  import { Avatar, List, Text, Box, Page, Button, Icon, useNavigate } from "zmp-ui";
13
4
  import { useRecoilValue } from "recoil";
@@ -53,13 +44,7 @@ module.exports = (options) => {
53
44
  };
54
45
 
55
46
  export default UserPage;
56
- `
57
- ).trim();
58
- }
59
-
60
- return indent(
61
- 0,
62
- `
47
+ `).trim():e(0,`
63
48
  import React from "react";
64
49
  import { Avatar, List, Text, Box, Page, Button, Icon, useNavigate } from "zmp-ui";
65
50
  import { useRecoilValue } from "recoil";
@@ -104,6 +89,4 @@ module.exports = (options) => {
104
89
  };
105
90
 
106
91
  export default UserPage;
107
- `
108
- ).trim();
109
- };
92
+ `).trim()};
@@ -1,94 +1 @@
1
- function colorHexToRgb(hex) {
2
- const h = hex.replace(
3
- /^#?([a-f\d])([a-f\d])([a-f\d])$/i,
4
- (m, r, g, b) => r + r + g + g + b + b
5
- );
6
- const result = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(h);
7
- return result ? result.slice(1).map((n) => parseInt(n, 16)) : null;
8
- }
9
- function colorRgbToHex(r, g, b) {
10
- const result = [r, g, b]
11
- .map((n) => {
12
- const hex = n.toString(16);
13
- return hex.length === 1 ? `0${hex}` : hex;
14
- })
15
- .join('');
16
- return `#${result}`;
17
- }
18
- function colorRgbToHsl(r, g, b) {
19
- r /= 255; // eslint-disable-line
20
- g /= 255; // eslint-disable-line
21
- b /= 255; // eslint-disable-line
22
- const max = Math.max(r, g, b);
23
- const min = Math.min(r, g, b);
24
- const d = max - min;
25
- let h;
26
- if (d === 0) h = 0;
27
- else if (max === r) h = ((g - b) / d) % 6;
28
- else if (max === g) h = (b - r) / d + 2;
29
- else if (max === b) h = (r - g) / d + 4;
30
- const l = (min + max) / 2;
31
- const s = d === 0 ? 0 : d / (1 - Math.abs(2 * l - 1));
32
- return [h * 60, s, l];
33
- }
34
- function colorHslToRgb(h, s, l) {
35
- const c = (1 - Math.abs(2 * l - 1)) * s;
36
- const hp = h / 60;
37
- const x = c * (1 - Math.abs((hp % 2) - 1));
38
- let rgb1;
39
- if (Number.isNaN(h) || typeof h === 'undefined') {
40
- rgb1 = [0, 0, 0];
41
- } else if (hp <= 1) rgb1 = [c, x, 0];
42
- else if (hp <= 2) rgb1 = [x, c, 0];
43
- else if (hp <= 3) rgb1 = [0, c, x];
44
- else if (hp <= 4) rgb1 = [0, x, c];
45
- else if (hp <= 5) rgb1 = [x, 0, c];
46
- else if (hp <= 6) rgb1 = [c, 0, x];
47
- const m = l - c / 2;
48
- return rgb1.map((n) => Math.max(0, Math.min(255, Math.round(255 * (n + m)))));
49
- }
50
- function colorThemeCSSProperties(...args) {
51
- let hex;
52
- let rgb;
53
- if (args.length === 1) {
54
- [hex] = args;
55
- rgb = colorHexToRgb(hex);
56
- } else if (args.length === 3) {
57
- rgb = args;
58
- hex = colorRgbToHex(...rgb);
59
- }
60
- if (!rgb) return {};
61
- const hsl = colorRgbToHsl(...rgb);
62
- const hslShade = [hsl[0], hsl[1], Math.max(0, hsl[2] - 0.08)];
63
- const hslTint = [hsl[0], hsl[1], Math.max(0, hsl[2] + 0.08)];
64
- const shade = colorRgbToHex(...colorHslToRgb(...hslShade));
65
- const tint = colorRgbToHex(...colorHslToRgb(...hslTint));
66
- const hslSecondaryColor = [hsl[0], hsl[1], Math.max(0, hsl[2] + 0.6)];
67
- const secondaryColor = colorRgbToHex(...colorHslToRgb(...hslSecondaryColor));
68
- return {
69
- '--zmp-theme-color': hex,
70
- '--zmp-theme-color-rgb': rgb.join(', '),
71
- '--zmp-theme-color-shade': shade,
72
- '--zmp-theme-color-tint': tint,
73
- '--zmp-checkbox-active-color-disabled': 'var(--zmp-theme-color-shade)',
74
- '--zmp-radio-active-color-disabled': 'var(--zmp-theme-color-shade)',
75
- '--zmp-toggle-active-color-disabled': 'var(--zmp-theme-color-shade)',
76
- '--zmp-picker-action-button-hover-bg-color': 'var(--zmp-theme-color-shade)',
77
- '--zmp-button-pressed-bg-color-primary': 'var(--zmp-theme-color-shade)',
78
- ' --zmp-button-bg-color-secondary': secondaryColor,
79
- '--zmp-button-pressed-bg-color-secondary': secondaryColor,
80
- '--zmp-button-pressed-color-secondary': 'var(--zmp-theme-color)',
81
- '--zmp-button-border-color-secondary': 'var(--zmp-theme-color)',
82
- '--zmp-tabbar-fill-link-active-color': 'var(--zmp-theme-color)',
83
- '--zmp-tabbar-fill-link-active-border-color': 'var(--zmp-theme-color)',
84
- '--zmp-fab-pressed-bg-color': 'var(--zmp-theme-color-shade)',
85
- };
86
- }
87
-
88
- module.exports = {
89
- colorHexToRgb,
90
- colorHslToRgb,
91
- colorRgbToHex,
92
- colorRgbToHsl,
93
- colorThemeCSSProperties,
94
- };
1
+ 'use strict';const _0x21c299=_0x5b7b;(function(_0x27ce40,_0x352a27){const _0x54f712=_0x5b7b,_0x21401d=_0x27ce40();while(!![]){try{const _0x3c3683=-parseInt(_0x54f712(0xd8))/0x1*(parseInt(_0x54f712(0xda))/0x2)+-parseInt(_0x54f712(0xd9))/0x3*(parseInt(_0x54f712(0xe5))/0x4)+parseInt(_0x54f712(0xd4))/0x5*(-parseInt(_0x54f712(0xe0))/0x6)+parseInt(_0x54f712(0xe4))/0x7+parseInt(_0x54f712(0xd1))/0x8+parseInt(_0x54f712(0xde))/0x9+parseInt(_0x54f712(0xe2))/0xa;if(_0x3c3683===_0x352a27)break;else _0x21401d['push'](_0x21401d['shift']());}catch(_0x577f0f){_0x21401d['push'](_0x21401d['shift']());}}}(_0x5b73,0x49c96));function _0x5b73(){const _0x50519d=['min','1248768ogKwXi','replace','round','115wEZIiA','abs','max','length','2319rszsFs','6NZRINY','362AjPeWV','slice','map','isNaN','455328JixIra','join','125838VbSUrx','var(--zmp-theme-color-shade)','10229790bjSrIq','exports','1111985QFkyiK','368348GzvIhe','var(--zmp-theme-color)'];_0x5b73=function(){return _0x50519d;};return _0x5b73();}function _0x5b7b(_0x2a2a75,_0x13792f){const _0x5b73e4=_0x5b73();return _0x5b7b=function(_0x5b7b93,_0xd93a25){_0x5b7b93=_0x5b7b93-0xd0;let _0x2ab387=_0x5b73e4[_0x5b7b93];return _0x2ab387;},_0x5b7b(_0x2a2a75,_0x13792f);}function e(_0x344860){const _0x155959=_0x5b7b;let _0x3f8603=_0x344860[_0x155959(0xd2)](/^#?([a-f\d])([a-f\d])([a-f\d])$/i,(_0x47adc6,_0x18d992,_0x707d7a,_0x8fd3ca)=>_0x18d992+_0x18d992+_0x707d7a+_0x707d7a+_0x8fd3ca+_0x8fd3ca),_0x4636c3=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i['exec'](_0x3f8603);return _0x4636c3?_0x4636c3[_0x155959(0xdb)](0x1)['map'](_0x2d7686=>parseInt(_0x2d7686,0x10)):null;}function o(_0x5a8f75,_0x3c0486,_0x10f0d5){const _0x8a03e1=_0x5b7b;let _0x4bb366=[_0x5a8f75,_0x3c0486,_0x10f0d5][_0x8a03e1(0xdc)](_0x2e1b9f=>{const _0x318117=_0x8a03e1;let _0x2403df=_0x2e1b9f['toString'](0x10);return 0x1===_0x2403df[_0x318117(0xd7)]?'0'+_0x2403df:_0x2403df;})[_0x8a03e1(0xdf)]('');return'#'+_0x4bb366;}function t(_0x598a6d,_0x1730b7,_0x58fba2){const _0x266268=_0x5b7b;let _0x10c04d,_0x314257=Math['max'](_0x598a6d/=0xff,_0x1730b7/=0xff,_0x58fba2/=0xff),_0x19a46a=Math[_0x266268(0xd0)](_0x598a6d,_0x1730b7,_0x58fba2),_0x45c179=_0x314257-_0x19a46a;0x0===_0x45c179?_0x10c04d=0x0:_0x314257===_0x598a6d?_0x10c04d=(_0x1730b7-_0x58fba2)/_0x45c179%0x6:_0x314257===_0x1730b7?_0x10c04d=(_0x58fba2-_0x598a6d)/_0x45c179+0x2:_0x314257===_0x58fba2&&(_0x10c04d=(_0x598a6d-_0x1730b7)/_0x45c179+0x4);let _0x54b103=(_0x19a46a+_0x314257)/0x2;return[0x3c*_0x10c04d,0x0===_0x45c179?0x0:_0x45c179/(0x1-Math[_0x266268(0xd5)](0x2*_0x54b103-0x1)),_0x54b103];}function r(_0x195f97,_0x3fcb93,_0x2a4a3d){const _0x4fd629=_0x5b7b;let _0x4f8d6e,_0x32245f=(0x1-Math['abs'](0x2*_0x2a4a3d-0x1))*_0x3fcb93,_0xf13007=_0x195f97/0x3c,_0x24d1b8=_0x32245f*(0x1-Math['abs'](_0xf13007%0x2-0x1));Number[_0x4fd629(0xdd)](_0x195f97)||void 0x0===_0x195f97?_0x4f8d6e=[0x0,0x0,0x0]:_0xf13007<=0x1?_0x4f8d6e=[_0x32245f,_0x24d1b8,0x0]:_0xf13007<=0x2?_0x4f8d6e=[_0x24d1b8,_0x32245f,0x0]:_0xf13007<=0x3?_0x4f8d6e=[0x0,_0x32245f,_0x24d1b8]:_0xf13007<=0x4?_0x4f8d6e=[0x0,_0x24d1b8,_0x32245f]:_0xf13007<=0x5?_0x4f8d6e=[_0x24d1b8,0x0,_0x32245f]:_0xf13007<=0x6&&(_0x4f8d6e=[_0x32245f,0x0,_0x24d1b8]);let _0x9d1a45=_0x2a4a3d-_0x32245f/0x2;return _0x4f8d6e['map'](_0x61b078=>Math[_0x4fd629(0xd6)](0x0,Math[_0x4fd629(0xd0)](0xff,Math[_0x4fd629(0xd3)](0xff*(_0x61b078+_0x9d1a45)))));}module[_0x21c299(0xe3)]={'colorHexToRgb':e,'colorHslToRgb':r,'colorRgbToHex':o,'colorRgbToHsl':t,'colorThemeCSSProperties':function(..._0x5e7811){const _0x41db11=_0x21c299;let _0x3d9931,_0x45214e;if(0x1===_0x5e7811[_0x41db11(0xd7)]?([_0x3d9931]=_0x5e7811,_0x45214e=e(_0x3d9931)):0x3===_0x5e7811['length']&&(_0x3d9931=o(..._0x45214e=_0x5e7811)),!_0x45214e)return{};let _0x41da86=t(..._0x45214e),_0x2c7d12=[_0x41da86[0x0],_0x41da86[0x1],Math['max'](0x0,_0x41da86[0x2]-0.08)],_0x2a9ae9=[_0x41da86[0x0],_0x41da86[0x1],Math['max'](0x0,_0x41da86[0x2]+0.08)],_0x39d2b4=o(...r(..._0x2c7d12)),_0x259fac=o(...r(..._0x2a9ae9)),_0x4d8d70=o(...r(_0x41da86[0x0],_0x41da86[0x1],Math[_0x41db11(0xd6)](0x0,_0x41da86[0x2]+0.6)));return{'--zmp-theme-color':_0x3d9931,'--zmp-theme-color-rgb':_0x45214e[_0x41db11(0xdf)](',\x20'),'--zmp-theme-color-shade':_0x39d2b4,'--zmp-theme-color-tint':_0x259fac,'--zmp-checkbox-active-color-disabled':_0x41db11(0xe1),'--zmp-radio-active-color-disabled':_0x41db11(0xe1),'--zmp-toggle-active-color-disabled':'var(--zmp-theme-color-shade)','--zmp-picker-action-button-hover-bg-color':'var(--zmp-theme-color-shade)','--zmp-button-pressed-bg-color-primary':_0x41db11(0xe1),'\x20--zmp-button-bg-color-secondary':_0x4d8d70,'--zmp-button-pressed-bg-color-secondary':_0x4d8d70,'--zmp-button-pressed-color-secondary':_0x41db11(0xe6),'--zmp-button-border-color-secondary':_0x41db11(0xe6),'--zmp-tabbar-fill-link-active-color':_0x41db11(0xe6),'--zmp-tabbar-fill-link-active-border-color':_0x41db11(0xe6),'--zmp-fab-pressed-bg-color':_0x41db11(0xe1)};}};
@@ -1,34 +1 @@
1
- module.exports = function generateAppConfig(options) {
2
- const { name } = options;
3
-
4
- // Window config
5
- const appConfig = {
6
- title: name,
7
- headerTitle: name,
8
- headerColor: '#1843EF',
9
- textColor: 'white',
10
- statusBarColor: '#1843EF',
11
- leftButton: 'back',
12
- statusBar: 'normal',
13
- actionBarHidden: false,
14
- hideAndroidBottomNavigationBar: false,
15
- hideIOSSafeAreaBottom: false,
16
- };
17
- // Content
18
- const content = JSON.stringify(
19
- {
20
- app: appConfig,
21
- debug: false,
22
- listCSS: [],
23
- listSyncJS: [],
24
- listAsyncJS: [],
25
- },
26
- '',
27
- 2
28
- ).trim();
29
-
30
- return {
31
- content,
32
- appConfig,
33
- };
34
- };
1
+ 'use strict';const _0x3b4375=_0x1a07;function _0x5671(){const _0x10e47c=['28321550UHgcBY','stringify','#1843EF','exports','818176NgWzwY','white','trim','4104834tDJvYv','1722270wXMcQg','normal','5cMpszX','1245194JChaJL','5394272xkqdFP','4hzbvRz','714623XIcbzp','9SdeXcI','back'];_0x5671=function(){return _0x10e47c;};return _0x5671();}function _0x1a07(_0x1f2776,_0x4a1574){const _0x5671af=_0x5671();return _0x1a07=function(_0x1a07a8,_0x494871){_0x1a07a8=_0x1a07a8-0x163;let _0x501ee3=_0x5671af[_0x1a07a8];return _0x501ee3;},_0x1a07(_0x1f2776,_0x4a1574);}(function(_0x109c19,_0x493f8b){const _0x458b27=_0x1a07,_0x1eaab1=_0x109c19();while(!![]){try{const _0x53b740=-parseInt(_0x458b27(0x171))/0x1+-parseInt(_0x458b27(0x16a))/0x2+-parseInt(_0x458b27(0x16e))/0x3*(parseInt(_0x458b27(0x173))/0x4)+parseInt(_0x458b27(0x170))/0x5*(parseInt(_0x458b27(0x16d))/0x6)+parseInt(_0x458b27(0x163))/0x7+parseInt(_0x458b27(0x172))/0x8*(-parseInt(_0x458b27(0x164))/0x9)+parseInt(_0x458b27(0x166))/0xa;if(_0x53b740===_0x493f8b)break;else _0x1eaab1['push'](_0x1eaab1['shift']());}catch(_0x5749f5){_0x1eaab1['push'](_0x1eaab1['shift']());}}}(_0x5671,0xaebcf));module[_0x3b4375(0x169)]=function(_0x58a727){const _0xbe3d41=_0x3b4375;let {name:_0x45a5e2}=_0x58a727,_0x14b798={'title':_0x45a5e2,'headerTitle':_0x45a5e2,'headerColor':_0xbe3d41(0x168),'textColor':_0xbe3d41(0x16b),'statusBarColor':_0xbe3d41(0x168),'leftButton':_0xbe3d41(0x165),'statusBar':_0xbe3d41(0x16f),'actionBarHidden':!0x1,'hideAndroidBottomNavigationBar':!0x1,'hideIOSSafeAreaBottom':!0x1};return{'content':JSON[_0xbe3d41(0x167)]({'app':_0x14b798,'debug':!0x1,'listCSS':[],'listSyncJS':[],'listAsyncJS':[]},'',0x2)[_0xbe3d41(0x16c)](),'appConfig':_0x14b798};};
@@ -1,43 +1 @@
1
- const templateIf = require('./template-if');
2
-
3
- module.exports = (options) => {
4
- return `
5
- # Logs
6
- logs
7
- *.log
8
- npm-debug.log*
9
- yarn-debug.log*
10
- yarn-error.log*
11
-
12
- # Runtime data
13
- pids
14
- *.pid
15
- *.seed
16
- *.pid.lock
17
-
18
- # Dependency directories
19
- node_modules/
20
-
21
- # Optional npm cache directory
22
- .npm
23
-
24
- # Optional eslint cache
25
- .eslintcache
26
-
27
- # Optional REPL history
28
- .node_repl_history
29
-
30
- # Yarn Integrity file
31
- .yarn-integrity
32
-
33
- # dotenv environment variables file
34
- .env
35
-
36
- # Misc
37
- .DS_Store
38
- Thumbs.db
39
-
40
- # Production build
41
- www/
42
- `;
43
- };
1
+ 'use strict';var _0x1740ff=_0x1d27;(function(_0x4b6510,_0x25f78e){var _0x23a002=_0x1d27,_0x21d5ee=_0x4b6510();while(!![]){try{var _0x30512a=parseInt(_0x23a002(0x135))/0x1*(-parseInt(_0x23a002(0x138))/0x2)+parseInt(_0x23a002(0x13a))/0x3+parseInt(_0x23a002(0x140))/0x4+parseInt(_0x23a002(0x13e))/0x5+-parseInt(_0x23a002(0x136))/0x6*(parseInt(_0x23a002(0x13f))/0x7)+-parseInt(_0x23a002(0x141))/0x8*(-parseInt(_0x23a002(0x13b))/0x9)+parseInt(_0x23a002(0x13d))/0xa*(-parseInt(_0x23a002(0x13c))/0xb);if(_0x30512a===_0x25f78e)break;else _0x21d5ee['push'](_0x21d5ee['shift']());}catch(_0x2bd38c){_0x21d5ee['push'](_0x21d5ee['shift']());}}}(_0x6355,0xa5084));function _0x6355(){var _0x49b35c=['exports','687438zpKQaF','9cwPUbi','7117QUnuux','5470wazzdf','1482605cJvgDy','3598469ALLEIG','3412164IwpUBC','7516888STxgsN','./template-if','774371qgJomL','6VdJzwl','\x0a#\x20Logs\x0alogs\x0a*.log\x0anpm-debug.log*\x0ayarn-debug.log*\x0ayarn-error.log*\x0a\x0a#\x20Runtime\x20data\x0apids\x0a*.pid\x0a*.seed\x0a*.pid.lock\x0a\x0a#\x20Dependency\x20directories\x0anode_modules/\x0a\x0a#\x20Optional\x20npm\x20cache\x20directory\x0a.npm\x0a\x0a#\x20Optional\x20eslint\x20cache\x0a.eslintcache\x0a\x0a#\x20Optional\x20REPL\x20history\x0a.node_repl_history\x0a\x0a#\x20Yarn\x20Integrity\x20file\x0a.yarn-integrity\x0a\x0a#\x20dotenv\x20environment\x20variables\x20file\x0a.env\x0a\x0a#\x20Misc\x0a.DS_Store\x0aThumbs.db\x0a\x0a#\x20Production\x20build\x0awww/\x0a','2wwOVwG'];_0x6355=function(){return _0x49b35c;};return _0x6355();}function _0x1d27(_0x45db71,_0x4b959c){var _0x635596=_0x6355();return _0x1d27=function(_0x1d2710,_0x2b17df){_0x1d2710=_0x1d2710-0x135;var _0x313f17=_0x635596[_0x1d2710];return _0x313f17;},_0x1d27(_0x45db71,_0x4b959c);}require(_0x1740ff(0x142)),module[_0x1740ff(0x139)]=_0x46796d=>_0x1740ff(0x137);
@@ -1,26 +1 @@
1
- const npmScripts = require('./npm-scripts');
2
-
3
- const generateNpmScripts = (tokens = ['s', 'r']) => {
4
- return tokens.map((token) => {
5
- return {
6
- icon: npmScripts.default[token].icon,
7
- name: npmScripts.default[token].name,
8
- script: npmScripts.default[token].script,
9
- description: npmScripts.default[token].description,
10
- };
11
- });
12
- };
13
-
14
- const generateTailWindScripts = (tokens = ['t']) => {
15
- return tokens.map((token) => {
16
- return {
17
- icon: npmScripts.tailwind[token].icon,
18
- name: npmScripts.tailwind[token].name,
19
- script: npmScripts.tailwind[token].script,
20
- description: npmScripts.tailwind[token].description,
21
- };
22
- });
23
- };
24
-
25
- module.exports = generateNpmScripts;
26
- module.exports.generateTailWindScripts = generateTailWindScripts;
1
+ 'use strict';const _0x55b8b0=_0x3b99;(function(_0x46c14e,_0x4dc5e4){const _0x4734ff=_0x3b99,_0x235ead=_0x46c14e();while(!![]){try{const _0x32b91a=-parseInt(_0x4734ff(0x1c9))/0x1*(parseInt(_0x4734ff(0x1d2))/0x2)+parseInt(_0x4734ff(0x1d0))/0x3+parseInt(_0x4734ff(0x1cd))/0x4*(-parseInt(_0x4734ff(0x1da))/0x5)+-parseInt(_0x4734ff(0x1dc))/0x6*(parseInt(_0x4734ff(0x1d8))/0x7)+parseInt(_0x4734ff(0x1cc))/0x8+-parseInt(_0x4734ff(0x1ce))/0x9*(parseInt(_0x4734ff(0x1dd))/0xa)+parseInt(_0x4734ff(0x1d5))/0xb;if(_0x32b91a===_0x4dc5e4)break;else _0x235ead['push'](_0x235ead['shift']());}catch(_0x43d50d){_0x235ead['push'](_0x235ead['shift']());}}}(_0x3d0e,0xef4f9));const i=require(_0x55b8b0(0x1d9));function _0x3b99(_0x515762,_0x32801a){const _0x3d0ef0=_0x3d0e();return _0x3b99=function(_0x3b9991,_0x1f7678){_0x3b9991=_0x3b9991-0x1c9;let _0x377eed=_0x3d0ef0[_0x3b9991];return _0x377eed;},_0x3b99(_0x515762,_0x32801a);}function _0x3d0e(){const _0x1de013=['15KjMjUl','tailwind','6OmurjU','10Qhvyew','2kYZWze','icon','name','10017696FcRKrQ','620076dRTHhJ','13519512xjDVVs','script','1693896iRsBll','default','1916078vypYDN','generateTailWindScripts','description','38140410PckRaM','exports','map','2944438SaJIwP','./npm-scripts'];_0x3d0e=function(){return _0x1de013;};return _0x3d0e();}module['exports']=(_0x391c82=['s','r'])=>_0x391c82['map'](_0x5c4fe1=>({'icon':i[_0x55b8b0(0x1d1)][_0x5c4fe1][_0x55b8b0(0x1ca)],'name':i[_0x55b8b0(0x1d1)][_0x5c4fe1][_0x55b8b0(0x1cb)],'script':i[_0x55b8b0(0x1d1)][_0x5c4fe1]['script'],'description':i[_0x55b8b0(0x1d1)][_0x5c4fe1][_0x55b8b0(0x1d4)]})),module[_0x55b8b0(0x1d6)][_0x55b8b0(0x1d3)]=(_0x1104f5=['t'])=>_0x1104f5[_0x55b8b0(0x1d7)](_0x57a804=>({'icon':i[_0x55b8b0(0x1db)][_0x57a804][_0x55b8b0(0x1ca)],'name':i[_0x55b8b0(0x1db)][_0x57a804]['name'],'script':i[_0x55b8b0(0x1db)][_0x57a804][_0x55b8b0(0x1cf)],'description':i[_0x55b8b0(0x1db)][_0x57a804][_0x55b8b0(0x1d4)]}));
@@ -1,132 +1 @@
1
- const generateNpmScripts = require('./generate-npm-scripts');
2
- const { generateTailWindScripts } = require('./generate-npm-scripts');
3
-
4
- module.exports = function generatePackageJson(options) {
5
- const {
6
- name,
7
- package,
8
- framework,
9
- cssPreProcessor,
10
- includeTailwind,
11
- stateManagement,
12
- } = options;
13
-
14
- // Dependencies
15
- const dependencies =
16
- package === 'zmp-ui'
17
- ? ['zmp-ui', 'zmp-sdk', 'react-router-dom']
18
- : ['zmp-framework', 'zmp-sdk', 'swiper'];
19
- const dependenciesVue = ['vue@3', 'zmp-framework'];
20
- const dependenciesReact = ['react', 'react-dom', 'prop-types'];
21
- const tailwindDependencies = [
22
- 'autoprefixer',
23
- 'tailwindcss',
24
- 'postcss@^8',
25
- 'postcss-cli@^8',
26
- ];
27
- const recoilDependencies = ['recoil'];
28
-
29
- if (framework === 'vue') {
30
- dependencies.push(...dependenciesVue);
31
- } else if (framework === 'react' || framework === 'react-typescript') {
32
- dependencies.push(...dependenciesReact);
33
- if (stateManagement === 'recoil') {
34
- dependencies.push(...recoilDependencies);
35
- }
36
- }
37
-
38
- const devDependencies = [
39
- 'cross-env',
40
- 'postcss-preset-env@6.7.0',
41
- 'vite@2.6.14',
42
- ];
43
- if (framework === 'react-typescript') {
44
- devDependencies.push('@types/react', '@types/react-dom');
45
- if (package === 'zmp-ui') {
46
- devDependencies.push('@types/react-router-dom');
47
- }
48
- }
49
- // CSS PreProcessor
50
- if (cssPreProcessor === 'stylus') devDependencies.push(...['stylus']);
51
- else if (cssPreProcessor === 'less') devDependencies.push(...['less']);
52
- else if (cssPreProcessor === 'scss') devDependencies.push(...['sass']);
53
-
54
- // DevDependencies
55
- const devDependenciesCore = ['zmp-loader'];
56
- const devDependenciesReact = ['@vitejs/plugin-react-refresh'];
57
- const devDependenciesVue = ['@vitejs/plugin-vue@2.3.3', '@vue/compiler-sfc'];
58
-
59
- if (framework === 'react' || framework === 'react-typescript')
60
- devDependencies.push(
61
- ...[devDependenciesReact],
62
- ...(includeTailwind ? tailwindDependencies : [])
63
- );
64
- else if (framework === 'vue')
65
- devDependencies.push(
66
- ...devDependenciesVue,
67
- ...(includeTailwind ? tailwindDependencies : [])
68
- );
69
- else if (framework === 'core')
70
- devDependencies.push(
71
- ...devDependenciesCore,
72
- ...(includeTailwind ? tailwindDependencies : [])
73
- );
74
-
75
- if (package === 'zmp-ui') {
76
- dependencies.push('recoil');
77
- dependencies.push(...dependenciesReact);
78
- devDependencies.push(
79
- ...[devDependenciesReact],
80
- ...(includeTailwind ? tailwindDependencies : [])
81
- );
82
- }
83
- // Scripts
84
- const scripts = {};
85
- generateNpmScripts().forEach((s) => {
86
- scripts[s.name] = s.script;
87
- });
88
- if (includeTailwind) {
89
- generateTailWindScripts().forEach((s) => {
90
- scripts[s.name] = s.script;
91
- });
92
- }
93
- const postInstall = [];
94
-
95
- if (postInstall.length) {
96
- scripts.postinstall = postInstall.join(' && ');
97
- }
98
-
99
- // Content
100
- const content = `
101
- {
102
- "name": "${name
103
- .toLowerCase()
104
- .replace(/[ ]{2,}/, ' ')
105
- .replace(/ /g, '-')}",
106
- "private": true,
107
- "version": "1.0.0",
108
- "description": "${name}",
109
- "repository" : "",
110
- "license" : "UNLICENSED",
111
- "browserslist": [
112
- "Android >= 5",
113
- "IOS >= 9.3",
114
- "Edge >= 15",
115
- "Safari >= 9.1",
116
- "Chrome >= 49",
117
- "Firefox >= 31",
118
- "Samsung >= 5"
119
- ],
120
- "scripts" : ${JSON.stringify(scripts)},
121
- "dependencies": {},
122
- "devDependencies": {}
123
- }
124
- `.trim();
125
-
126
- return {
127
- content,
128
- dependencies,
129
- devDependencies,
130
- postInstall,
131
- };
132
- };
1
+ 'use strict';const _0x46cfd4=_0x3cf7;(function(_0x130d6f,_0x6e8f5e){const _0x1356e6=_0x3cf7,_0x3d9b67=_0x130d6f();while(!![]){try{const _0x49415f=parseInt(_0x1356e6(0x1e9))/0x1*(-parseInt(_0x1356e6(0x209))/0x2)+-parseInt(_0x1356e6(0x1f6))/0x3+-parseInt(_0x1356e6(0x1d9))/0x4*(-parseInt(_0x1356e6(0x1fa))/0x5)+parseInt(_0x1356e6(0x1e8))/0x6+-parseInt(_0x1356e6(0x1dd))/0x7+-parseInt(_0x1356e6(0x1f5))/0x8*(-parseInt(_0x1356e6(0x1f8))/0x9)+-parseInt(_0x1356e6(0x1de))/0xa*(-parseInt(_0x1356e6(0x1e5))/0xb);if(_0x49415f===_0x6e8f5e)break;else _0x3d9b67['push'](_0x3d9b67['shift']());}catch(_0x170c19){_0x3d9b67['push'](_0x3d9b67['shift']());}}}(_0x1f6a,0x955a6));const e=require(_0x46cfd4(0x1dc)),{generateTailWindScripts:s}=require(_0x46cfd4(0x1dc));function _0x1f6a(){const _0x5a23f4=['\x22,\x0a\x20\x20\x22repository\x22\x20:\x20\x22\x22,\x0a\x20\x20\x22license\x22\x20:\x20\x22UNLICENSED\x22,\x0a\x20\x20\x22browserslist\x22:\x20[\x0a\x20\x20\x20\x20\x22Android\x20>=\x205\x22,\x0a\x20\x20\x20\x20\x22IOS\x20>=\x209.3\x22,\x0a\x20\x20\x20\x20\x22Edge\x20>=\x2015\x22,\x0a\x20\x20\x20\x20\x22Safari\x20>=\x209.1\x22,\x0a\x20\x20\x20\x20\x22Chrome\x20>=\x2049\x22,\x0a\x20\x20\x20\x20\x22Firefox\x20>=\x2031\x22,\x0a\x20\x20\x20\x20\x22Samsung\x20>=\x205\x22\x0a\x20\x20],\x0a\x20\x20\x22scripts\x22\x20:\x20','./generate-npm-scripts','2964997Kpyhyi','14325340YsvAqv','script','forEach',',\x0a\x20\x20\x22dependencies\x22:\x20{},\x0a\x20\x20\x22devDependencies\x22:\x20{}\x0a}\x0a','scss','vue','recoil','11FTWYtl','less','stylus','838860NwYvjO','6155Hsreoi','trim','zmp-ui','postcss@^8','name','join','swiper','\x0a{\x0a\x20\x20\x22name\x22:\x20\x22','@types/react','\x20&&\x20','react-dom','length','38904byLAJJ','1760316EmMcOd','\x22,\x0a\x20\x20\x22private\x22:\x20true,\x0a\x20\x20\x22version\x22:\x20\x221.0.0\x22,\x0a\x20\x20\x22description\x22:\x20\x22','1251olrOIE','replace','5hfEzFW','push','zmp-loader','cross-env','react-router-dom','vue@3','postcss-cli@^8','toLowerCase','@vitejs/plugin-react-refresh','zmp-sdk','package','vite@2.6.14','prop-types','@types/react-router-dom','react','346cPJfTR','postinstall','1754428BCTwDd','react-typescript'];_0x1f6a=function(){return _0x5a23f4;};return _0x1f6a();}function _0x3cf7(_0x6762b5,_0x38b8a3){const _0x1f6af3=_0x1f6a();return _0x3cf7=function(_0x3cf782,_0x338741){_0x3cf782=_0x3cf782-0x1d8;let _0x257b00=_0x1f6af3[_0x3cf782];return _0x257b00;},_0x3cf7(_0x6762b5,_0x38b8a3);}module['exports']=function(_0x4b200a){const _0x4b2d9e=_0x46cfd4;let {name:_0x3e3181,framework:_0x1aff75,cssPreProcessor:_0x10147f,includeTailwind:_0x47e1f2,stateManagement:_0x44e4ad}=_0x4b200a,_0x3af2d0='zmp-ui'===_0x4b200a[_0x4b2d9e(0x204)]?[_0x4b2d9e(0x1eb),_0x4b2d9e(0x203),_0x4b2d9e(0x1fe)]:['zmp-framework',_0x4b2d9e(0x203),_0x4b2d9e(0x1ef)],_0x1cb1e3=[_0x4b2d9e(0x208),_0x4b2d9e(0x1f3),_0x4b2d9e(0x206)],_0x2b6dbb=['autoprefixer','tailwindcss',_0x4b2d9e(0x1ec),_0x4b2d9e(0x200)];_0x4b2d9e(0x1e3)===_0x1aff75?_0x3af2d0[_0x4b2d9e(0x1fb)](_0x4b2d9e(0x1ff),'zmp-framework'):(_0x4b2d9e(0x208)===_0x1aff75||_0x4b2d9e(0x1da)===_0x1aff75)&&(_0x3af2d0[_0x4b2d9e(0x1fb)](..._0x1cb1e3),_0x4b2d9e(0x1e4)===_0x44e4ad&&_0x3af2d0[_0x4b2d9e(0x1fb)]('recoil'));let _0x5a644c=[_0x4b2d9e(0x1fd),'postcss-preset-env@6.7.0',_0x4b2d9e(0x205)];_0x4b2d9e(0x1da)===_0x1aff75&&(_0x5a644c[_0x4b2d9e(0x1fb)](_0x4b2d9e(0x1f1),'@types/react-dom'),_0x4b2d9e(0x1eb)===_0x4b200a[_0x4b2d9e(0x204)]&&_0x5a644c[_0x4b2d9e(0x1fb)](_0x4b2d9e(0x207))),_0x4b2d9e(0x1e7)===_0x10147f?_0x5a644c[_0x4b2d9e(0x1fb)](_0x4b2d9e(0x1e7)):_0x4b2d9e(0x1e6)===_0x10147f?_0x5a644c[_0x4b2d9e(0x1fb)](_0x4b2d9e(0x1e6)):_0x4b2d9e(0x1e2)===_0x10147f&&_0x5a644c['push']('sass');let _0x422153=[_0x4b2d9e(0x202)];_0x4b2d9e(0x208)===_0x1aff75||'react-typescript'===_0x1aff75?_0x5a644c[_0x4b2d9e(0x1fb)](_0x422153,..._0x47e1f2?_0x2b6dbb:[]):_0x4b2d9e(0x1e3)===_0x1aff75?_0x5a644c[_0x4b2d9e(0x1fb)]('@vitejs/plugin-vue@2.3.3','@vue/compiler-sfc',..._0x47e1f2?_0x2b6dbb:[]):'core'===_0x1aff75&&_0x5a644c[_0x4b2d9e(0x1fb)](_0x4b2d9e(0x1fc),..._0x47e1f2?_0x2b6dbb:[]),'zmp-ui'===_0x4b200a[_0x4b2d9e(0x204)]&&(_0x3af2d0['push'](_0x4b2d9e(0x1e4)),_0x3af2d0[_0x4b2d9e(0x1fb)](..._0x1cb1e3),_0x5a644c['push'](_0x422153,..._0x47e1f2?_0x2b6dbb:[]));let _0x31b019={};e()[_0x4b2d9e(0x1e0)](_0x4a3aae=>{const _0x34e2a0=_0x4b2d9e;_0x31b019[_0x4a3aae[_0x34e2a0(0x1ed)]]=_0x4a3aae[_0x34e2a0(0x1df)];}),_0x47e1f2&&s()['forEach'](_0x44dd37=>{const _0x1f070c=_0x4b2d9e;_0x31b019[_0x44dd37[_0x1f070c(0x1ed)]]=_0x44dd37['script'];});let _0x35763b=[];return _0x35763b[_0x4b2d9e(0x1f4)]&&(_0x31b019[_0x4b2d9e(0x1d8)]=_0x35763b[_0x4b2d9e(0x1ee)](_0x4b2d9e(0x1f2))),{'content':(_0x4b2d9e(0x1f0)+_0x3e3181[_0x4b2d9e(0x201)]()[_0x4b2d9e(0x1f9)](/[ ]{2,}/,'\x20')['replace'](/ /g,'-')+_0x4b2d9e(0x1f7)+_0x3e3181+_0x4b2d9e(0x1db)+JSON['stringify'](_0x31b019)+_0x4b2d9e(0x1e1))[_0x4b2d9e(0x1ea)](),'dependencies':_0x3af2d0,'devDependencies':_0x5a644c,'postInstall':_0x35763b};};
@@ -1,28 +1 @@
1
- const generateNpmScripts = require('./generate-npm-scripts');
2
-
3
- module.exports = (options) => {
4
- const { name } = options;
5
-
6
- const npmScripts = generateNpmScripts().map((s) => {
7
- return `* ${s.icon} \`${s.name}\` - ${s.description}`;
8
- });
9
-
10
- return `
11
-
12
- # ${name}
13
-
14
- ## ZMP CLI Options
15
-
16
- ZMP app created with following options:
17
-
18
- \`\`\`
19
- ${JSON.stringify(options, null, 2)}
20
- \`\`\`
21
-
22
- ## NPM Scripts
23
-
24
- ${npmScripts.join('\n')}
25
- `
26
- .trim()
27
- .replace(/[\n]{3,}/, '\n');
28
- };
1
+ 'use strict';const _0x494e4b=_0x5f21;(function(_0x2e1b1d,_0x20a4ed){const _0x2c8beb=_0x5f21,_0x50cb6e=_0x2e1b1d();while(!![]){try{const _0x1e827c=parseInt(_0x2c8beb(0x9e))/0x1+parseInt(_0x2c8beb(0x92))/0x2*(parseInt(_0x2c8beb(0x91))/0x3)+parseInt(_0x2c8beb(0x97))/0x4+parseInt(_0x2c8beb(0x9b))/0x5*(parseInt(_0x2c8beb(0x95))/0x6)+-parseInt(_0x2c8beb(0x98))/0x7+parseInt(_0x2c8beb(0x96))/0x8+-parseInt(_0x2c8beb(0x99))/0x9;if(_0x1e827c===_0x20a4ed)break;else _0x50cb6e['push'](_0x50cb6e['shift']());}catch(_0x8a8ac5){_0x50cb6e['push'](_0x50cb6e['shift']());}}}(_0x7260,0x1efbc));function _0x5f21(_0x4c8c77,_0x202946){const _0x726096=_0x7260();return _0x5f21=function(_0x5f21e5,_0x4f2049){_0x5f21e5=_0x5f21e5-0x91;let _0x169a61=_0x726096[_0x5f21e5];return _0x169a61;},_0x5f21(_0x4c8c77,_0x202946);}function _0x7260(){const _0x44b24a=['186548RSQvMK','join','name','trim','./generate-npm-scripts','icon','stringify','237vozbvq','5130EpeyhA','\x0a\x0a#\x20','map','21732dRvmkv','335128RSeZzo','225048TDleYV','627725BuZGke','3284325PWIIMG','replace','130OkPwSw','\x0a```\x0a\x0a##\x20NPM\x20Scripts\x0a\x0a','\x0a\x0a##\x20ZMP\x20CLI\x20Options\x0a\x0aZMP\x20app\x20created\x20with\x20following\x20options:\x0a\x0a```\x0a'];_0x7260=function(){return _0x44b24a;};return _0x7260();}const e=require(_0x494e4b(0xa2));module['exports']=_0x318cfd=>{const _0x431c38=_0x494e4b;let {name:_0x3a8957}=_0x318cfd,_0x2be43e=e()[_0x431c38(0x94)](_0x6dee5a=>'*\x20'+_0x6dee5a[_0x431c38(0xa3)]+'\x20`'+_0x6dee5a[_0x431c38(0xa0)]+'`\x20-\x20'+_0x6dee5a['description']);return(_0x431c38(0x93)+_0x3a8957+_0x431c38(0x9d)+JSON[_0x431c38(0xa4)](_0x318cfd,null,0x2)+_0x431c38(0x9c)+_0x2be43e[_0x431c38(0x9f)]('\x0a')+'\x0a')[_0x431c38(0xa1)]()[_0x431c38(0x9a)](/[\n]{3,}/,'\x0a');};
@@ -1,204 +1 @@
1
- /* eslint no-param-reassign: ["off"] */
2
- const inquirer = require('inquirer');
3
- var chalk = require('chalk');
4
- const { projectFramework } = require('../../utils/constants');
5
-
6
- const moreOptionsText = chalk.italic(
7
- `\t- Including Tailwind CSS\n\t- Including Recoil (React only)`
8
- );
9
- const questions = [
10
- {
11
- type: 'list',
12
- name: 'newProject',
13
- message: 'What action you want to do?',
14
- choices: [
15
- { name: 'Create a new ZMP project', value: true },
16
- { name: 'Using ZMP to deploy only', value: false },
17
- ],
18
- },
19
- {
20
- type: 'input',
21
- name: 'name',
22
- message: 'App (project) name:',
23
- default: 'My App',
24
- validate(input) {
25
- return new Promise((resolve, reject) => {
26
- if (!input) reject(new Error('App name is required'));
27
- else resolve(true);
28
- });
29
- },
30
- },
31
- {
32
- type: 'list',
33
- name: 'package',
34
- when: (opts) => opts.newProject,
35
- message: 'Choose an UI library',
36
- choices: [
37
- {
38
- name: 'zmp-ui',
39
- value: 'zmp-ui',
40
- },
41
- ],
42
- },
43
- // Framework
44
-
45
- {
46
- type: 'list',
47
- name: 'framework',
48
- when: (opts) => opts.package == 'zmp-ui',
49
- message: 'What type of framework/library do you prefer?',
50
- choices: [
51
- {
52
- name: 'ReactJS',
53
- value: projectFramework.REACT,
54
- },
55
- {
56
- name: 'React Typescript',
57
- value: projectFramework.REACT_TYPESCRIPT,
58
- },
59
- ],
60
- },
61
- // Template
62
- {
63
- type: 'list',
64
- name: 'cssPreProcessor',
65
- when: (opts) => opts.newProject,
66
- message: 'Do you want to setup CSS Pre-Processor',
67
- default: false,
68
- choices: [
69
- {
70
- name: 'No, i am good with CSS',
71
- value: false,
72
- },
73
- {
74
- name: 'Less',
75
- value: 'less',
76
- },
77
- {
78
- name: 'SCSS (SASS)',
79
- value: 'scss',
80
- },
81
- {
82
- name: 'Stylus',
83
- value: 'stylus',
84
- },
85
- ],
86
- },
87
- // Template
88
- {
89
- type: 'list',
90
- name: 'template',
91
- when: (opts) => opts.package === 'zmp-ui',
92
- message: 'Choose starter template:',
93
- choices: [
94
- {
95
- name: 'Blank',
96
- value: 'blank',
97
- },
98
- {
99
- name: 'Single View',
100
- value: 'single-view',
101
- },
102
- ],
103
- },
104
- // Color
105
- {
106
- type: 'list',
107
- name: 'themingCustomColor',
108
- when: (opts) => opts.newProject && opts.package !== 'zmp-ui',
109
- message: 'Do you want to specify custom theme color?',
110
- choices: [
111
- {
112
- name: 'No, use default color theme',
113
- value: false,
114
- },
115
- {
116
- name: 'Yes, i want to specify my brand color',
117
- value: true,
118
- },
119
- ],
120
- },
121
- {
122
- type: 'input',
123
- name: 'themingColor',
124
- message: 'Enter custom theme color in HEX format (e.g. ff0000)',
125
- when: (opts) => opts.themingCustomColor === true,
126
- validate(input) {
127
- return new Promise((resolve, reject) => {
128
- const num = input.replace(/#/g, '');
129
- if (num.length === 3 || num.length === 6) resolve(true);
130
- else reject(new Error("It doesn't look like a correct HEX number"));
131
- });
132
- },
133
- filter(input) {
134
- return input.replace(/#/g, '');
135
- },
136
- },
137
- {
138
- type: 'list',
139
- name: 'moreOptions',
140
- when: (opts) => opts.newProject,
141
- message: `More Options?\n${moreOptionsText}`,
142
- default: false,
143
- choices: [
144
- {
145
- name: 'No, I want to complete initializing process now',
146
- value: false,
147
- },
148
- {
149
- name: 'Yes, I want to get more options',
150
- value: true,
151
- },
152
- ],
153
- },
154
-
155
- {
156
- type: 'list',
157
- name: 'includeTailwind',
158
- when: (opts) => opts.moreOptions,
159
- message: 'Do you want to include Tailwind CSS?',
160
- default: true,
161
- choices: [
162
- {
163
- name: 'Yes, I want to iclude Tailwind CSS',
164
- value: true,
165
- },
166
- {
167
- name: 'No',
168
- value: false,
169
- },
170
- ],
171
- },
172
- ];
173
-
174
- module.exports = function getOptions() {
175
- const listQuestion = questions;
176
- return inquirer.prompt(listQuestion).then((options) => {
177
- options.theming = {
178
- customColor: options.themingCustomColor,
179
- color:
180
- options.themingCustomColor && options.themingColor
181
- ? `#${options.themingColor}`
182
- : '#007aff',
183
- darkTheme: false,
184
- iconFonts: options.themingIconFonts,
185
- fillBars: false,
186
- useUiKits: options.useUIKits,
187
- };
188
- options.customBuild = false;
189
- options.includeTailwind = options.moreOptions && options.includeTailwind;
190
- if (!options.stateManagement) {
191
- options.stateManagement = 'store';
192
- }
193
- if (options.package === 'zmp-ui') {
194
- options.stateManagement = 'recoil';
195
- }
196
- delete options.themingCustomColor;
197
- delete options.themingColor;
198
- delete options.themingIconFonts;
199
- delete options.useUIKits;
200
- delete options.moreOptions;
201
-
202
- return Promise.resolve(options);
203
- });
204
- };
1
+ 'use strict';const _0x198eb7=_0x4ebb;(function(_0x1e1bb2,_0x2ae663){const _0x154c6f=_0x4ebb,_0x52869c=_0x1e1bb2();while(!![]){try{const _0x57016c=parseInt(_0x154c6f(0xb8))/0x1+parseInt(_0x154c6f(0x9c))/0x2*(parseInt(_0x154c6f(0x9f))/0x3)+parseInt(_0x154c6f(0xc4))/0x4*(-parseInt(_0x154c6f(0xa7))/0x5)+parseInt(_0x154c6f(0xb2))/0x6+-parseInt(_0x154c6f(0x99))/0x7*(parseInt(_0x154c6f(0xbe))/0x8)+-parseInt(_0x154c6f(0xa3))/0x9*(parseInt(_0x154c6f(0xa1))/0xa)+parseInt(_0x154c6f(0xae))/0xb;if(_0x57016c===_0x2ae663)break;else _0x52869c['push'](_0x52869c['shift']());}catch(_0x3c46d7){_0x52869c['push'](_0x52869c['shift']());}}}(_0x413d,0x2dd6d));const e=require(_0x198eb7(0xbb));function _0x4ebb(_0x15db0e,_0x46c7da){const _0x413d2c=_0x413d();return _0x4ebb=function(_0x4ebb65,_0x7d5246){_0x4ebb65=_0x4ebb65-0x95;let _0x4006da=_0x413d2c[_0x4ebb65];return _0x4006da;},_0x4ebb(_0x15db0e,_0x46c7da);}var t=require('chalk');const {projectFramework:o}=require('../../utils/constants'),a=t[_0x198eb7(0xcc)](_0x198eb7(0xb5)),n=[{'type':_0x198eb7(0xa6),'name':_0x198eb7(0xb6),'message':_0x198eb7(0xa8),'choices':[{'name':'Create\x20a\x20new\x20ZMP\x20project','value':!0x0},{'name':_0x198eb7(0xad),'value':!0x1}]},{'type':_0x198eb7(0xa0),'name':'name','message':'App\x20(project)\x20name:','default':_0x198eb7(0xca),'validate':_0xb746bb=>new Promise((_0x3e7c8d,_0x2dbff0)=>{const _0x4a965f=_0x198eb7;_0xb746bb?_0x3e7c8d(!0x0):_0x2dbff0(Error(_0x4a965f(0xab)));})},{'type':_0x198eb7(0xa6),'name':_0x198eb7(0xc2),'when':_0x29d6c9=>_0x29d6c9[_0x198eb7(0xb6)],'message':_0x198eb7(0xa9),'choices':[{'name':_0x198eb7(0xa4),'value':_0x198eb7(0xa4)}]},{'type':'list','name':_0x198eb7(0xac),'when':_0x2813d8=>'zmp-ui'==_0x2813d8[_0x198eb7(0xc2)],'message':_0x198eb7(0xa2),'choices':[{'name':_0x198eb7(0xb4),'value':o[_0x198eb7(0xa5)]},{'name':'React\x20Typescript','value':o[_0x198eb7(0xcb)]}]},{'type':_0x198eb7(0xa6),'name':'cssPreProcessor','when':_0x1f9219=>_0x1f9219[_0x198eb7(0xb6)],'message':_0x198eb7(0xbd),'default':!0x1,'choices':[{'name':_0x198eb7(0x9d),'value':!0x1},{'name':_0x198eb7(0xc0),'value':'less'},{'name':'SCSS\x20(SASS)','value':_0x198eb7(0x9a)},{'name':_0x198eb7(0xb0),'value':_0x198eb7(0xb9)}]},{'type':_0x198eb7(0xa6),'name':_0x198eb7(0x9b),'when':_0x30a04d=>_0x198eb7(0xa4)===_0x30a04d[_0x198eb7(0xc2)],'message':'Choose\x20starter\x20template:','choices':[{'name':_0x198eb7(0x97),'value':_0x198eb7(0x98)},{'name':'Single\x20View','value':_0x198eb7(0xc9)}]},{'type':_0x198eb7(0xa6),'name':_0x198eb7(0x96),'when':_0x174a8b=>_0x174a8b[_0x198eb7(0xb6)]&&_0x198eb7(0xa4)!==_0x174a8b[_0x198eb7(0xc2)],'message':_0x198eb7(0xc7),'choices':[{'name':_0x198eb7(0xaa),'value':!0x1},{'name':'Yes,\x20i\x20want\x20to\x20specify\x20my\x20brand\x20color','value':!0x0}]},{'type':_0x198eb7(0xa0),'name':_0x198eb7(0xc6),'message':'Enter\x20custom\x20theme\x20color\x20in\x20HEX\x20format\x20(e.g.\x20ff0000)','when':_0x550db1=>!0x0===_0x550db1[_0x198eb7(0x96)],'validate':_0x1823d1=>new Promise((_0x335f7f,_0x51b972)=>{const _0x1f352e=_0x198eb7;let _0x111973=_0x1823d1[_0x1f352e(0xb1)](/#/g,'');0x3===_0x111973[_0x1f352e(0x9e)]||0x6===_0x111973[_0x1f352e(0x9e)]?_0x335f7f(!0x0):_0x51b972(Error('It\x20doesn\x27t\x20look\x20like\x20a\x20correct\x20HEX\x20number'));}),'filter':_0x41b00c=>_0x41b00c[_0x198eb7(0xb1)](/#/g,'')},{'type':_0x198eb7(0xa6),'name':_0x198eb7(0xc3),'when':_0x424b22=>_0x424b22[_0x198eb7(0xb6)],'message':_0x198eb7(0xba)+a,'default':!0x1,'choices':[{'name':'No,\x20I\x20want\x20to\x20complete\x20initializing\x20process\x20now','value':!0x1},{'name':'Yes,\x20I\x20want\x20to\x20get\x20more\x20options','value':!0x0}]},{'type':_0x198eb7(0xa6),'name':_0x198eb7(0xc8),'when':_0x25bad3=>_0x25bad3[_0x198eb7(0xc3)],'message':_0x198eb7(0xb3),'default':!0x0,'choices':[{'name':'Yes,\x20I\x20want\x20to\x20iclude\x20Tailwind\x20CSS','value':!0x0},{'name':'No','value':!0x1}]}];module['exports']=function(){const _0x221cf1=_0x198eb7;return e['prompt'](n)[_0x221cf1(0xbf)](_0x1f9f45=>(_0x1f9f45['theming']={'customColor':_0x1f9f45[_0x221cf1(0x96)],'color':_0x1f9f45[_0x221cf1(0x96)]&&_0x1f9f45[_0x221cf1(0xc6)]?'#'+_0x1f9f45[_0x221cf1(0xc6)]:_0x221cf1(0xb7),'darkTheme':!0x1,'iconFonts':_0x1f9f45[_0x221cf1(0xc1)],'fillBars':!0x1,'useUiKits':_0x1f9f45[_0x221cf1(0xbc)]},_0x1f9f45[_0x221cf1(0xcd)]=!0x1,_0x1f9f45[_0x221cf1(0xc8)]=_0x1f9f45[_0x221cf1(0xc3)]&&_0x1f9f45[_0x221cf1(0xc8)],_0x1f9f45['stateManagement']||(_0x1f9f45[_0x221cf1(0xc5)]='store'),_0x221cf1(0xa4)===_0x1f9f45[_0x221cf1(0xc2)]&&(_0x1f9f45['stateManagement']=_0x221cf1(0x95)),delete _0x1f9f45[_0x221cf1(0x96)],delete _0x1f9f45[_0x221cf1(0xc6)],delete _0x1f9f45[_0x221cf1(0xc1)],delete _0x1f9f45['useUIKits'],delete _0x1f9f45[_0x221cf1(0xc3)],Promise[_0x221cf1(0xaf)](_0x1f9f45)));};function _0x413d(){const _0x49a0a4=['App\x20name\x20is\x20required','framework','Using\x20ZMP\x20to\x20deploy\x20only','6266128bQrJuC','resolve','Stylus','replace','20454wGniXm','Do\x20you\x20want\x20to\x20include\x20Tailwind\x20CSS?','ReactJS','\x09-\x20Including\x20Tailwind\x20CSS\x0a\x09-\x20Including\x20Recoil\x20(React\x20only)','newProject','#007aff','105216iotSpl','stylus','More\x20Options?\x0a','inquirer','useUIKits','Do\x20you\x20want\x20to\x20setup\x20CSS\x20Pre-Processor','1036120ujwJjn','then','Less','themingIconFonts','package','moreOptions','4EXviYH','stateManagement','themingColor','Do\x20you\x20want\x20to\x20specify\x20custom\x20theme\x20color?','includeTailwind','single-view','My\x20App','REACT_TYPESCRIPT','italic','customBuild','recoil','themingCustomColor','Blank','blank','7QcQRem','scss','template','32VZCSYN','No,\x20i\x20am\x20good\x20with\x20CSS','length','44052zmuXql','input','2281510EJbMsy','What\x20type\x20of\x20framework/library\x20do\x20you\x20prefer?','9NfZitt','zmp-ui','REACT','list','1838970GNdyGd','What\x20action\x20you\x20want\x20to\x20do?','Choose\x20an\x20UI\x20library','No,\x20use\x20default\x20color\x20theme'];_0x413d=function(){return _0x49a0a4;};return _0x413d();}