zmp-cli 3.15.6 → 3.15.8
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/README.md +37 -0
- package/build/index.js +1 -184
- package/config/index.js +1 -44
- package/create/index.js +1 -230
- package/create/utils/generate-app-config.js +1 -34
- package/create/utils/generate-npm-scripts.js +1 -26
- package/create/utils/get-options.js +1 -204
- package/create/utils/npm-scripts.js +1 -62
- package/deploy/index.js +1 -149
- package/deploy/utils/get-options.js +1 -69
- package/deploy/utils/request-upload.js +1 -34
- package/deploy/utils/upload-app.js +1 -82
- package/index.js +1 -319
- package/login/index.js +1 -169
- package/login/utils/get-options.js +1 -58
- package/login/utils/zalo-login.js +1 -32
- package/migrate/icons/update-icon-v3.js +1 -19
- package/migrate/index.js +1 -60
- package/migrate/utils/get-options.js +1 -46
- package/migrate/utils/migrate-react.js +1 -33
- package/package.json +13 -40
- package/start/frame/index.html +264 -254
- package/start/index.js +1 -382
- package/sync/index-to-app-config.js +1 -146
- package/sync/index.js +1 -55
- package/utils/axios.js +1 -15
- package/utils/check-update.js +1 -53
- package/utils/constants.js +1 -20
- package/utils/env.js +1 -39
- package/utils/error.js +1 -16
- package/utils/find-files-by-ext.js +1 -27
- package/utils/find-free-port.js +1 -11
- package/utils/fs-extra.js +1 -90
- package/utils/generate-pages-map.js +1 -17
- package/utils/get-app-info.js +1 -22
- package/utils/get-current-project.js +1 -25
- package/utils/get-ip.js +1 -19
- package/utils/log.js +1 -19
- package/utils/node-blob.js +1 -106
- package/utils/resumable.d.js +1 -0
- package/utils/resumable.js +1 -1204
- package/utils/spinner.js +1 -25
- package/utils/tunnel.js +1 -36
- package/.editorconfig +0 -15
- package/.eslintignore +0 -8
- package/.eslintrc.js +0 -10
- package/.vscode/launch.json +0 -23
- package/LICENSE +0 -21
- package/README.git.md +0 -37
- package/assets/index.js +0 -147
- package/build/dist/index.dev.js +0 -217
- package/config/dist/index.dev.js +0 -48
- package/create/init-zmp-ui.js +0 -216
- package/create/templates/app-parameters.js +0 -33
- package/create/templates/common/css/icons.css +0 -60
- package/create/templates/common/icons/512x512.png +0 -0
- package/create/templates/common/icons/apple-touch-icon.png +0 -0
- package/create/templates/common/icons/favicon.png +0 -0
- package/create/templates/common/postcss.config.js +0 -5
- package/create/templates/common/splash-2732x2732.png +0 -0
- package/create/templates/common/tailwind/postcss.config.js +0 -5
- package/create/templates/common/tailwind/tailwind.config.js +0 -9
- package/create/templates/common/tailwind/tailwind.css +0 -3
- package/create/templates/common/webpack/build.js +0 -41
- package/create/templates/copy-assets.js +0 -158
- package/create/templates/core/babel.config.js +0 -11
- package/create/templates/core/copy-assets.js +0 -83
- package/create/templates/core/generate-home-page.js +0 -143
- package/create/templates/core/generate-root.js +0 -283
- package/create/templates/core/generate-routes.js +0 -155
- package/create/templates/core/generate-scripts.js +0 -94
- package/create/templates/core/pages/404.html +0 -20
- package/create/templates/core/pages/about.html +0 -26
- package/create/templates/core/pages/catalog.html +0 -40
- package/create/templates/core/pages/dynamic-route.html +0 -115
- package/create/templates/core/pages/form.html +0 -258
- package/create/templates/core/pages/left-page-1.html +0 -24
- package/create/templates/core/pages/left-page-2.html +0 -23
- package/create/templates/core/pages/product.html +0 -36
- package/create/templates/core/pages/request-and-load.html +0 -35
- package/create/templates/core/pages/settings.html +0 -252
- package/create/templates/create-folders.js +0 -30
- package/create/templates/dist/generate-styles.dev.js +0 -46
- package/create/templates/generate-config-xml.js +0 -18
- package/create/templates/generate-index.js +0 -49
- package/create/templates/generate-manifest.js +0 -49
- package/create/templates/generate-recoil.js +0 -56
- package/create/templates/generate-routes.js +0 -16
- package/create/templates/generate-scripts.js +0 -16
- package/create/templates/generate-service-worker.js +0 -126
- package/create/templates/generate-store.js +0 -88
- package/create/templates/generate-styles.js +0 -110
- package/create/templates/generate-webpack-config.js +0 -335
- package/create/templates/generate-zmp-custom.js +0 -81
- package/create/templates/react/babel.config.js +0 -12
- package/create/templates/react/components/app-items.jsx +0 -44
- package/create/templates/react/components/navbar-back.jsx +0 -25
- package/create/templates/react/components/user-card.jsx +0 -18
- package/create/templates/react/copy-assets.js +0 -85
- package/create/templates/react/dist/generate-scripts.dev.js +0 -23
- package/create/templates/react/generate-home-page.js +0 -111
- package/create/templates/react/generate-root.js +0 -84
- package/create/templates/react/generate-routes.js +0 -16
- package/create/templates/react/generate-scripts.js +0 -68
- package/create/templates/react/pages/404.js +0 -27
- package/create/templates/react/pages/about.js +0 -52
- package/create/templates/react/pages/catalog.js +0 -112
- package/create/templates/react/pages/dynamic-route.js +0 -80
- package/create/templates/react/pages/form.js +0 -152
- package/create/templates/react/pages/index copy.js +0 -17
- package/create/templates/react/pages/index.js +0 -17
- package/create/templates/react/pages/settings.js +0 -76
- package/create/templates/react/pages/user.js +0 -56
- package/create/templates/react/vite.config.js +0 -11
- package/create/templates/react-typescript/_tsconfig.json +0 -33
- package/create/templates/react-typescript/components/app-items.js +0 -53
- package/create/templates/react-typescript/components/index.js +0 -9
- package/create/templates/react-typescript/components/navbar-back.js +0 -40
- package/create/templates/react-typescript/components/user-card.js +0 -32
- package/create/templates/react-typescript/copy-assets.js +0 -94
- package/create/templates/react-typescript/dist/generate-scripts.dev.js +0 -23
- package/create/templates/react-typescript/generate-home-page.js +0 -113
- package/create/templates/react-typescript/generate-root.js +0 -81
- package/create/templates/react-typescript/generate-routes.js +0 -12
- package/create/templates/react-typescript/generate-scripts.js +0 -67
- package/create/templates/react-typescript/pages/404.js +0 -27
- package/create/templates/react-typescript/pages/about.js +0 -52
- package/create/templates/react-typescript/pages/catalog.js +0 -112
- package/create/templates/react-typescript/pages/dynamic-route.js +0 -80
- package/create/templates/react-typescript/pages/form.js +0 -152
- package/create/templates/react-typescript/pages/index.js +0 -17
- package/create/templates/react-typescript/pages/settings.js +0 -76
- package/create/templates/react-typescript/pages/user.js +0 -56
- package/create/templates/react-typescript/vite.config.js +0 -21
- package/create/templates/svelte/babel.config.js +0 -10
- package/create/templates/svelte/copy-assets.js +0 -47
- package/create/templates/svelte/generate-home-page.js +0 -158
- package/create/templates/svelte/generate-root.js +0 -235
- package/create/templates/svelte/generate-routes.js +0 -91
- package/create/templates/svelte/generate-scripts.js +0 -47
- package/create/templates/svelte/pages/404.svelte +0 -10
- package/create/templates/svelte/pages/about.svelte +0 -16
- package/create/templates/svelte/pages/catalog.svelte +0 -31
- package/create/templates/svelte/pages/dynamic-route.svelte +0 -34
- package/create/templates/svelte/pages/form.svelte +0 -175
- package/create/templates/svelte/pages/left-page-1.svelte +0 -13
- package/create/templates/svelte/pages/left-page-2.svelte +0 -12
- package/create/templates/svelte/pages/product.svelte +0 -21
- package/create/templates/svelte/pages/request-and-load.svelte +0 -21
- package/create/templates/svelte/pages/settings.svelte +0 -175
- package/create/templates/vue/babel.config.js +0 -10
- package/create/templates/vue/components/header.vue +0 -28
- package/create/templates/vue/components/sun-and-moon.vue +0 -34
- package/create/templates/vue/copy-assets.js +0 -67
- package/create/templates/vue/generate-home-page.js +0 -56
- package/create/templates/vue/generate-root.js +0 -50
- package/create/templates/vue/generate-routes.js +0 -7
- package/create/templates/vue/generate-scripts.js +0 -63
- package/create/templates/vue/global-components.d.ts +0 -121
- package/create/templates/vue/icons/moon.svg +0 -3
- package/create/templates/vue/icons/sun.svg +0 -3
- package/create/templates/vue/pages/404.vue +0 -12
- package/create/templates/vue/pages/about.vue +0 -15
- package/create/templates/vue/pages/catalog.vue +0 -39
- package/create/templates/vue/pages/dynamic-route.vue +0 -34
- package/create/templates/vue/pages/form.vue +0 -162
- package/create/templates/vue/pages/left-page-1.vue +0 -14
- package/create/templates/vue/pages/left-page-2.vue +0 -11
- package/create/templates/vue/pages/product.vue +0 -31
- package/create/templates/vue/pages/request-and-load.vue +0 -25
- package/create/templates/vue/pages/settings.vue +0 -18
- package/create/templates/vue/vite.config.js +0 -11
- package/create/templates/zaui/_tsconfig.json +0 -33
- package/create/templates/zaui/babel.config.js +0 -12
- package/create/templates/zaui/components/user-card.jsx +0 -16
- package/create/templates/zaui/copy-assets.js +0 -90
- package/create/templates/zaui/generate-home-page.js +0 -117
- package/create/templates/zaui/generate-root.js +0 -53
- package/create/templates/zaui/generate-routes.js +0 -10
- package/create/templates/zaui/generate-scripts.js +0 -39
- package/create/templates/zaui/generate-user-card.js +0 -55
- package/create/templates/zaui/pages/about.js +0 -129
- package/create/templates/zaui/pages/form.js +0 -123
- package/create/templates/zaui/pages/index.js +0 -9
- package/create/templates/zaui/pages/user.js +0 -109
- package/create/templates/zaui/vite.config.js +0 -11
- package/create/utils/colors.js +0 -94
- package/create/utils/dist/get-options.dev.js +0 -277
- package/create/utils/generate-gitignore.js +0 -43
- package/create/utils/generate-package-json.js +0 -132
- package/create/utils/generate-readme.js +0 -28
- package/create/utils/indent.js +0 -31
- package/create/utils/string.js +0 -13
- package/create/utils/styles-extension.js +0 -9
- package/create/utils/template-if.js +0 -9
- package/deploy/dist/index.dev.js +0 -227
- package/deploy/utils/dist/request-upload.dev.js +0 -62
- package/deploy/utils/dist/upload-app.dev.js +0 -113
- package/dist/bundle.js +0 -1
- package/dist/index.dev.js +0 -352
- package/jsconfig.json +0 -8
- package/login/dist/index.dev.js +0 -223
- package/login/utils/dist/zalo-login.dev.js +0 -41
- package/screenshots/wellcome.jpg +0 -0
- package/show-qr-app/assets/css/style.css +0 -87
- package/show-qr-app/assets/js/qrcode.min.js +0 -1
- package/show-qr-app/index.html +0 -57
- package/show-qr-app/package.json +0 -14
- package/start/dist/index.dev.js +0 -312
- package/start/generate-hr-config.js +0 -59
- package/ui/server.js +0 -194
- package/ui/www/css/app.css +0 -1
- package/ui/www/css/app.css.map +0 -1
- package/ui/www/fonts/ZMPIcons-Regular.eot +0 -0
- package/ui/www/fonts/ZMPIcons-Regular.ttf +0 -0
- package/ui/www/fonts/ZMPIcons-Regular.woff +0 -0
- package/ui/www/fonts/ZMPIcons-Regular.woff2 +0 -0
- package/ui/www/images/logo.png +0 -0
- package/ui/www/index.html +0 -1
- package/ui/www/js/app.js +0 -3
- package/ui/www/js/app.js.LICENSE.txt +0 -20
- package/ui/www/js/app.js.map +0 -1
- package/ui/www/static/icons/apple-touch-icon.png +0 -0
- package/ui/www/static/icons/favicon.png +0 -0
- package/utils/dist/get-app-info.dev.js +0 -54
|
@@ -1,277 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
/* eslint no-param-reassign: ["off"] */
|
|
4
|
-
var inquirer = require('inquirer');
|
|
5
|
-
|
|
6
|
-
var chalk = require('chalk');
|
|
7
|
-
|
|
8
|
-
var moreOptionsText = chalk.italic("\t- Including Tailwind CSS\n\t- Including Recoil (React only)");
|
|
9
|
-
var questions = [{
|
|
10
|
-
type: 'list',
|
|
11
|
-
name: 'newProject',
|
|
12
|
-
message: 'What action you want to do?',
|
|
13
|
-
choices: [{
|
|
14
|
-
name: 'Create a new ZMP project',
|
|
15
|
-
value: true
|
|
16
|
-
}, {
|
|
17
|
-
name: 'Using ZMP to deploy only',
|
|
18
|
-
value: false
|
|
19
|
-
}]
|
|
20
|
-
}, {
|
|
21
|
-
type: 'input',
|
|
22
|
-
name: 'name',
|
|
23
|
-
message: 'App (project) name:',
|
|
24
|
-
"default": 'My App',
|
|
25
|
-
validate: function validate(input) {
|
|
26
|
-
return new Promise(function (resolve, reject) {
|
|
27
|
-
if (!input) reject(new Error('App name is required'));else resolve(true);
|
|
28
|
-
});
|
|
29
|
-
}
|
|
30
|
-
}, {
|
|
31
|
-
type: 'list',
|
|
32
|
-
name: 'package',
|
|
33
|
-
when: function when(opts) {
|
|
34
|
-
return opts.newProject;
|
|
35
|
-
},
|
|
36
|
-
message: 'Choose an UI library / UI framework:',
|
|
37
|
-
choices: [{
|
|
38
|
-
name: 'zmp-ui',
|
|
39
|
-
value: 'zmp-ui'
|
|
40
|
-
}]
|
|
41
|
-
}, // Framework
|
|
42
|
-
{
|
|
43
|
-
type: 'list',
|
|
44
|
-
name: 'framework',
|
|
45
|
-
when: function when(opts) {
|
|
46
|
-
return opts["package"] == 'zmp-framework';
|
|
47
|
-
},
|
|
48
|
-
message: 'What type of framework do you prefer?',
|
|
49
|
-
choices: [{
|
|
50
|
-
name: 'ZMP with React',
|
|
51
|
-
value: 'react'
|
|
52
|
-
}, {
|
|
53
|
-
name: 'ZMP with React (TypeScript)',
|
|
54
|
-
value: 'react-typescript'
|
|
55
|
-
}, {
|
|
56
|
-
name: 'ZMP with Vue.js',
|
|
57
|
-
value: 'vue'
|
|
58
|
-
}, {
|
|
59
|
-
name: 'ZMP Core',
|
|
60
|
-
value: 'core',
|
|
61
|
-
disabled: true
|
|
62
|
-
}]
|
|
63
|
-
}, {
|
|
64
|
-
type: 'list',
|
|
65
|
-
name: 'language',
|
|
66
|
-
when: function when(opts) {
|
|
67
|
-
return opts["package"] == 'zmp-ui';
|
|
68
|
-
},
|
|
69
|
-
message: 'What language do you prefer?',
|
|
70
|
-
choices: [{
|
|
71
|
-
name: 'ReactJS',
|
|
72
|
-
value: 'react'
|
|
73
|
-
}]
|
|
74
|
-
}, {
|
|
75
|
-
type: 'list',
|
|
76
|
-
name: 'useUIKits',
|
|
77
|
-
when: function when(opts) {
|
|
78
|
-
return opts["package"] === 'zmp-framework' && opts.framework !== 'vue';
|
|
79
|
-
},
|
|
80
|
-
message: 'Do you want to use Zalo UI kits style?',
|
|
81
|
-
"default": true,
|
|
82
|
-
choices: [{
|
|
83
|
-
name: 'Yes, i want to use UI kits style',
|
|
84
|
-
value: true
|
|
85
|
-
}, {
|
|
86
|
-
name: 'No, i want to use only styles with minimal required set of components',
|
|
87
|
-
value: false
|
|
88
|
-
}]
|
|
89
|
-
}, // Template
|
|
90
|
-
{
|
|
91
|
-
type: 'list',
|
|
92
|
-
name: 'template',
|
|
93
|
-
when: function when(opts) {
|
|
94
|
-
return opts.newProject && opts["package"] === 'zmp-framework' && opts.useUIKits && opts.framework !== 'vue';
|
|
95
|
-
},
|
|
96
|
-
message: 'Choose starter template:',
|
|
97
|
-
choices: [{
|
|
98
|
-
name: 'Blank',
|
|
99
|
-
value: 'blank'
|
|
100
|
-
}, {
|
|
101
|
-
name: 'Single View',
|
|
102
|
-
value: 'single-view'
|
|
103
|
-
}, {
|
|
104
|
-
name: 'Tabs Layout',
|
|
105
|
-
value: 'tabs'
|
|
106
|
-
}]
|
|
107
|
-
}, // Template
|
|
108
|
-
{
|
|
109
|
-
type: 'list',
|
|
110
|
-
name: 'template',
|
|
111
|
-
when: function when(opts) {
|
|
112
|
-
return opts.newProject && opts["package"] === 'zmp-framework' && !opts.useUIKits && opts.framework !== 'vue';
|
|
113
|
-
},
|
|
114
|
-
message: 'Choose starter template:',
|
|
115
|
-
choices: [{
|
|
116
|
-
name: 'Blank',
|
|
117
|
-
value: 'blank'
|
|
118
|
-
}]
|
|
119
|
-
}, {
|
|
120
|
-
type: 'list',
|
|
121
|
-
name: 'cssPreProcessor',
|
|
122
|
-
when: function when(opts) {
|
|
123
|
-
return opts.newProject;
|
|
124
|
-
},
|
|
125
|
-
message: 'Do you want to setup CSS Pre-Processor',
|
|
126
|
-
"default": false,
|
|
127
|
-
choices: [{
|
|
128
|
-
name: 'No, i am good with CSS',
|
|
129
|
-
value: false
|
|
130
|
-
}, {
|
|
131
|
-
name: 'Less',
|
|
132
|
-
value: 'less'
|
|
133
|
-
}, {
|
|
134
|
-
name: 'SCSS (SASS)',
|
|
135
|
-
value: 'scss'
|
|
136
|
-
}, {
|
|
137
|
-
name: 'Stylus',
|
|
138
|
-
value: 'stylus'
|
|
139
|
-
}]
|
|
140
|
-
}, // Template
|
|
141
|
-
{
|
|
142
|
-
type: 'list',
|
|
143
|
-
name: 'template',
|
|
144
|
-
when: function when(opts) {
|
|
145
|
-
return opts["package"] === 'zmp-ui';
|
|
146
|
-
},
|
|
147
|
-
message: 'Choose starter template:',
|
|
148
|
-
choices: [{
|
|
149
|
-
name: 'Blank',
|
|
150
|
-
value: 'blank'
|
|
151
|
-
}, {
|
|
152
|
-
name: 'Single View',
|
|
153
|
-
value: 'single-view'
|
|
154
|
-
}]
|
|
155
|
-
}, // Color
|
|
156
|
-
{
|
|
157
|
-
type: 'list',
|
|
158
|
-
name: 'themingCustomColor',
|
|
159
|
-
when: function when(opts) {
|
|
160
|
-
return opts.newProject && opts["package"] !== 'zmp-ui';
|
|
161
|
-
},
|
|
162
|
-
message: 'Do you want to specify custom theme color?',
|
|
163
|
-
choices: [{
|
|
164
|
-
name: 'No, use default color theme',
|
|
165
|
-
value: false
|
|
166
|
-
}, {
|
|
167
|
-
name: 'Yes, i want to specify my brand color',
|
|
168
|
-
value: true
|
|
169
|
-
}]
|
|
170
|
-
}, {
|
|
171
|
-
type: 'input',
|
|
172
|
-
name: 'themingColor',
|
|
173
|
-
message: 'Enter custom theme color in HEX format (e.g. ff0000)',
|
|
174
|
-
when: function when(opts) {
|
|
175
|
-
return opts.themingCustomColor === true;
|
|
176
|
-
},
|
|
177
|
-
validate: function validate(input) {
|
|
178
|
-
return new Promise(function (resolve, reject) {
|
|
179
|
-
var num = input.replace(/#/g, '');
|
|
180
|
-
if (num.length === 3 || num.length === 6) resolve(true);else reject(new Error("It doesn't look like a correct HEX number"));
|
|
181
|
-
});
|
|
182
|
-
},
|
|
183
|
-
filter: function filter(input) {
|
|
184
|
-
return input.replace(/#/g, '');
|
|
185
|
-
}
|
|
186
|
-
}, {
|
|
187
|
-
type: 'list',
|
|
188
|
-
name: 'themingIconFonts',
|
|
189
|
-
when: function when(opts) {
|
|
190
|
-
return opts.newProject && opts["package"] !== 'zmp-ui';
|
|
191
|
-
},
|
|
192
|
-
message: 'Do you want to include ZMP Icons and Material Icons icon fonts?',
|
|
193
|
-
"default": true,
|
|
194
|
-
choices: [{
|
|
195
|
-
name: 'Yes, include icon fonts',
|
|
196
|
-
value: true
|
|
197
|
-
}, {
|
|
198
|
-
name: 'No, i want to use my own custom icons',
|
|
199
|
-
value: false
|
|
200
|
-
}]
|
|
201
|
-
}, {
|
|
202
|
-
type: 'list',
|
|
203
|
-
name: 'moreOptions',
|
|
204
|
-
when: function when(opts) {
|
|
205
|
-
return opts.newProject;
|
|
206
|
-
},
|
|
207
|
-
message: "More Options?\n".concat(moreOptionsText),
|
|
208
|
-
"default": false,
|
|
209
|
-
choices: [{
|
|
210
|
-
name: 'No, I want to complete initializing process now',
|
|
211
|
-
value: false
|
|
212
|
-
}, {
|
|
213
|
-
name: 'Yes, I want to get more options',
|
|
214
|
-
value: true
|
|
215
|
-
}]
|
|
216
|
-
}, {
|
|
217
|
-
type: 'list',
|
|
218
|
-
name: 'includeTailwind',
|
|
219
|
-
when: function when(opts) {
|
|
220
|
-
return opts.moreOptions;
|
|
221
|
-
},
|
|
222
|
-
message: 'Do you want to include Tailwind CSS?',
|
|
223
|
-
"default": true,
|
|
224
|
-
choices: [{
|
|
225
|
-
name: 'Yes, I want to iclude Tailwind CSS',
|
|
226
|
-
value: true
|
|
227
|
-
}, {
|
|
228
|
-
name: 'No',
|
|
229
|
-
value: false
|
|
230
|
-
}]
|
|
231
|
-
}, {
|
|
232
|
-
type: 'list',
|
|
233
|
-
name: 'stateManagement',
|
|
234
|
-
when: function when(opts) {
|
|
235
|
-
return opts.moreOptions && (opts.framework === 'react' || opts.framework === 'react-typescript');
|
|
236
|
-
},
|
|
237
|
-
message: 'Which state management library would you like to use?',
|
|
238
|
-
"default": 'store',
|
|
239
|
-
choices: [{
|
|
240
|
-
name: 'ZMP Store (Redux pattern)',
|
|
241
|
-
value: 'store'
|
|
242
|
-
}, {
|
|
243
|
-
name: 'Recoil',
|
|
244
|
-
value: 'recoil'
|
|
245
|
-
}]
|
|
246
|
-
}];
|
|
247
|
-
|
|
248
|
-
module.exports = function getOptions() {
|
|
249
|
-
var listQuestion = questions;
|
|
250
|
-
return inquirer.prompt(listQuestion).then(function (options) {
|
|
251
|
-
options.theming = {
|
|
252
|
-
customColor: options.themingCustomColor,
|
|
253
|
-
color: options.themingCustomColor && options.themingColor ? "#".concat(options.themingColor) : '#007aff',
|
|
254
|
-
darkTheme: false,
|
|
255
|
-
iconFonts: options.themingIconFonts,
|
|
256
|
-
fillBars: false,
|
|
257
|
-
useUiKits: options.useUIKits
|
|
258
|
-
};
|
|
259
|
-
options.customBuild = false;
|
|
260
|
-
options.includeTailwind = options.moreOptions && options.includeTailwind;
|
|
261
|
-
|
|
262
|
-
if (!options.stateManagement) {
|
|
263
|
-
options.stateManagement = 'store';
|
|
264
|
-
}
|
|
265
|
-
|
|
266
|
-
if (options["package"] === 'zmp-ui') {
|
|
267
|
-
options.stateManagement = 'recoil';
|
|
268
|
-
}
|
|
269
|
-
|
|
270
|
-
delete options.themingCustomColor;
|
|
271
|
-
delete options.themingColor;
|
|
272
|
-
delete options.themingIconFonts;
|
|
273
|
-
delete options.useUIKits;
|
|
274
|
-
delete options.moreOptions;
|
|
275
|
-
return Promise.resolve(options);
|
|
276
|
-
});
|
|
277
|
-
};
|
|
@@ -1,43 +0,0 @@
|
|
|
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,132 +0,0 @@
|
|
|
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,28 +0,0 @@
|
|
|
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
|
-
};
|
package/create/utils/indent.js
DELETED
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
module.exports = (indent, str) => {
|
|
2
|
-
if (typeof indent === 'undefined') return str.trim();
|
|
3
|
-
let minIndent;
|
|
4
|
-
str.split('\n').forEach((line) => {
|
|
5
|
-
const match = line.match(/[ ]*/);
|
|
6
|
-
if (match) {
|
|
7
|
-
if (match[0].length === line.length) return;
|
|
8
|
-
if (typeof minIndent === 'undefined') minIndent = match[0].length;
|
|
9
|
-
else minIndent = Math.min(minIndent, match[0].length);
|
|
10
|
-
}
|
|
11
|
-
});
|
|
12
|
-
if (typeof minIndent === 'undefined') return str.trim();
|
|
13
|
-
return str
|
|
14
|
-
.split('\n')
|
|
15
|
-
.map((l) => {
|
|
16
|
-
const lineIndentMatch = l.match(/[ ]*/);
|
|
17
|
-
let lineIndent = 0;
|
|
18
|
-
if (lineIndentMatch) lineIndent = Math.max(lineIndentMatch[0].length - minIndent, 0);
|
|
19
|
-
return `${' '.repeat(indent + lineIndent)}${l.replace(/^\s+/, '')}`;
|
|
20
|
-
})
|
|
21
|
-
.map((l) => {
|
|
22
|
-
if (!l.trim().length && l.length) return l.trim();
|
|
23
|
-
return l;
|
|
24
|
-
})
|
|
25
|
-
.filter((l, index, arr) => {
|
|
26
|
-
if (index === 0 && !l.trim().length && l.length) return false;
|
|
27
|
-
if (index === arr.length - 1 && !l.trim().length && l.length) return false;
|
|
28
|
-
return true;
|
|
29
|
-
})
|
|
30
|
-
.join('\n');
|
|
31
|
-
};
|
package/create/utils/string.js
DELETED