zmp-cli 3.15.7 → 3.15.9
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 +97 -1
- package/build/index.js +1 -1
- package/config/index.js +1 -1
- package/create/index.js +1 -1
- package/create/utils/generate-app-config.js +1 -1
- package/create/utils/generate-npm-scripts.js +1 -1
- package/create/utils/get-options.js +1 -1
- package/create/utils/npm-scripts.js +1 -1
- package/deploy/index.js +1 -1
- package/deploy/utils/get-options.js +1 -1
- package/deploy/utils/request-upload.js +1 -1
- package/deploy/utils/upload-app.js +1 -1
- package/index.js +1 -1
- package/login/index.js +1 -1
- package/login/utils/get-options.js +1 -1
- package/login/utils/zalo-login.js +1 -1
- package/migrate/icons/update-icon-v3.js +1 -1
- package/migrate/index.js +1 -1
- package/migrate/utils/get-options.js +1 -1
- package/migrate/utils/migrate-react.js +1 -1
- package/package.json +3 -2
- package/start/frame/index.html +264 -254
- package/start/index.js +1 -1
- package/sync/index-to-app-config.js +1 -1
- package/sync/index.js +1 -1
- package/utils/axios.js +1 -1
- package/utils/check-update.js +1 -1
- package/utils/constants.js +1 -1
- package/utils/env.js +1 -1
- package/utils/error.js +1 -1
- package/utils/find-files-by-ext.js +1 -1
- package/utils/find-free-port.js +1 -1
- package/utils/fs-extra.js +1 -1
- package/utils/generate-pages-map.js +1 -1
- package/utils/get-app-info.js +1 -1
- package/utils/get-current-project.js +1 -1
- package/utils/get-ip.js +1 -1
- package/utils/log.js +1 -1
- package/utils/node-blob.js +1 -1
- package/utils/resumable.d.js +1 -1
- package/utils/resumable.js +1 -1
- package/utils/spinner.js +1 -1
- package/utils/tunnel.js +1 -1
- package/create/init-zmp-ui.js +0 -1
- package/create/templates/app-parameters.js +0 -17
- 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 -3
- package/create/templates/copy-assets.js +0 -1
- package/create/templates/core/babel.config.js +0 -11
- package/create/templates/core/copy-assets.js +0 -15
- package/create/templates/core/generate-home-page.js +0 -121
- package/create/templates/core/generate-root.js +0 -248
- package/create/templates/core/generate-routes.js +0 -129
- package/create/templates/core/generate-scripts.js +0 -45
- 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 -1
- package/create/templates/generate-config-xml.js +0 -11
- package/create/templates/generate-index.js +0 -24
- package/create/templates/generate-manifest.js +0 -1
- package/create/templates/generate-recoil.js +0 -44
- package/create/templates/generate-routes.js +0 -1
- package/create/templates/generate-scripts.js +0 -1
- package/create/templates/generate-service-worker.js +0 -120
- package/create/templates/generate-store.js +0 -77
- package/create/templates/generate-styles.js +0 -56
- package/create/templates/generate-webpack-config.js +0 -253
- package/create/templates/generate-zmp-custom.js +0 -23
- 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 -1
- package/create/templates/react/generate-home-page.js +0 -81
- package/create/templates/react/generate-root.js +0 -55
- package/create/templates/react/generate-routes.js +0 -1
- package/create/templates/react/generate-scripts.js +0 -42
- package/create/templates/react/pages/404.js +0 -19
- package/create/templates/react/pages/about.js +0 -44
- package/create/templates/react/pages/catalog.js +0 -98
- package/create/templates/react/pages/dynamic-route.js +0 -72
- package/create/templates/react/pages/form.js +0 -132
- package/create/templates/react/pages/index copy.js +0 -1
- package/create/templates/react/pages/index.js +0 -1
- package/create/templates/react/pages/settings.js +0 -62
- package/create/templates/react/pages/user.js +0 -37
- 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 -46
- package/create/templates/react-typescript/components/index.js +0 -1
- package/create/templates/react-typescript/components/navbar-back.js +0 -33
- package/create/templates/react-typescript/components/user-card.js +0 -25
- package/create/templates/react-typescript/copy-assets.js +0 -1
- package/create/templates/react-typescript/generate-home-page.js +0 -81
- package/create/templates/react-typescript/generate-root.js +0 -50
- package/create/templates/react-typescript/generate-routes.js +0 -1
- package/create/templates/react-typescript/generate-scripts.js +0 -42
- package/create/templates/react-typescript/pages/404.js +0 -19
- package/create/templates/react-typescript/pages/about.js +0 -44
- package/create/templates/react-typescript/pages/catalog.js +0 -98
- package/create/templates/react-typescript/pages/dynamic-route.js +0 -72
- package/create/templates/react-typescript/pages/form.js +0 -132
- package/create/templates/react-typescript/pages/index.js +0 -1
- package/create/templates/react-typescript/pages/settings.js +0 -62
- package/create/templates/react-typescript/pages/user.js +0 -37
- 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 -1
- package/create/templates/svelte/generate-home-page.js +0 -122
- package/create/templates/svelte/generate-root.js +0 -177
- package/create/templates/svelte/generate-routes.js +0 -76
- package/create/templates/svelte/generate-scripts.js +0 -31
- 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 -1
- package/create/templates/vue/generate-home-page.js +0 -50
- package/create/templates/vue/generate-root.js +0 -40
- package/create/templates/vue/generate-routes.js +0 -1
- package/create/templates/vue/generate-scripts.js +0 -46
- package/create/templates/vue/global-components.d.js +0 -1
- 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 -1
- package/create/templates/zaui/generate-home-page.js +0 -91
- package/create/templates/zaui/generate-root.js +0 -33
- package/create/templates/zaui/generate-routes.js +0 -1
- package/create/templates/zaui/generate-scripts.js +0 -25
- package/create/templates/zaui/generate-user-card.js +0 -40
- package/create/templates/zaui/pages/about.js +0 -112
- package/create/templates/zaui/pages/form.js +0 -106
- package/create/templates/zaui/pages/index.js +0 -1
- package/create/templates/zaui/pages/user.js +0 -92
- package/create/templates/zaui/vite.config.js +0 -11
- package/create/utils/colors.js +0 -1
- package/create/utils/generate-gitignore.js +0 -1
- package/create/utils/generate-package-json.js +0 -1
- package/create/utils/generate-readme.js +0 -1
- package/create/utils/indent.js +0 -1
- package/create/utils/string.js +0 -1
- package/create/utils/styles-extension.js +0 -1
- package/create/utils/template-if.js +0 -1
- package/start/generate-hr-config.js +0 -1
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
<div class="page">
|
|
2
|
-
<div class="navbar">
|
|
3
|
-
<div class="navbar-bg"></div>
|
|
4
|
-
<div class="navbar-inner sliding">
|
|
5
|
-
<div class="left">
|
|
6
|
-
<a href="#" class="link back">
|
|
7
|
-
<i class="icon icon-back"></i>
|
|
8
|
-
<span class="if-not-md">Back</span>
|
|
9
|
-
</a>
|
|
10
|
-
</div>
|
|
11
|
-
<div class="title">Left Page 2</div>
|
|
12
|
-
</div>
|
|
13
|
-
</div>
|
|
14
|
-
<div class="page-content">
|
|
15
|
-
<div class="block block-strong">
|
|
16
|
-
<p>Maxime tempore, repellendus? Sequi saepe provident quas, neque assumenda dicta odit eaque nesciunt facere mollitia totam voluptate aspernatur vel corporis repudiandae commodi ad cumque repellendus. Saepe officia iure repellat repellendus.</p>
|
|
17
|
-
<p>Ea maiores accusantium non fuga dicta, vero minus veniam! Ipsum eveniet vero voluptate veritatis aspernatur hic dicta adipisci, debitis. Sint quam aperiam repellat quis perspiciatis accusantium ipsum nulla soluta temporibus.</p>
|
|
18
|
-
<p>Necessitatibus ipsum culpa doloremque, nostrum atque totam minima itaque! Blanditiis nobis nam repudiandae, ut nostrum voluptate accusantium atque, veniam libero quaerat corporis laborum earum rem nihil unde. Vitae cum, aliquam?</p>
|
|
19
|
-
<p>Debitis aliquid nemo maxime recusandae, mollitia sed error vero. Atque molestiae rem necessitatibus nam voluptas quaerat, reiciendis, excepturi quis facilis, quod cupiditate vitae voluptate repudiandae! Unde impedit aut id ut?</p>
|
|
20
|
-
</div>
|
|
21
|
-
</div>
|
|
22
|
-
</div>
|
|
23
|
-
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
<template>
|
|
2
|
-
<div class="page" data-name="product">
|
|
3
|
-
<div class="navbar">
|
|
4
|
-
<div class="navbar-bg"></div>
|
|
5
|
-
<div class="navbar-inner sliding">
|
|
6
|
-
<div class="left">
|
|
7
|
-
<a href="#" class="link back">
|
|
8
|
-
<i class="icon icon-back"></i>
|
|
9
|
-
<span class="if-not-md">Back</span>
|
|
10
|
-
</a>
|
|
11
|
-
</div>
|
|
12
|
-
<div class="title">${currentProduct.title}</div>
|
|
13
|
-
</div>
|
|
14
|
-
</div>
|
|
15
|
-
<div class="page-content">
|
|
16
|
-
<div class="block-title">About ${currentProduct.title}</div>
|
|
17
|
-
<div class="block block-strong">
|
|
18
|
-
${currentProduct.description}
|
|
19
|
-
</div>
|
|
20
|
-
</div>
|
|
21
|
-
</div>
|
|
22
|
-
</template>
|
|
23
|
-
<script>
|
|
24
|
-
export default (props, { $zmproute, $store }) => {
|
|
25
|
-
const products = $store.getters.products;
|
|
26
|
-
const productId = $zmproute.params.id;
|
|
27
|
-
let currentProduct;
|
|
28
|
-
products.value.forEach((product) => {
|
|
29
|
-
if (product.id === productId) {
|
|
30
|
-
currentProduct = product;
|
|
31
|
-
}
|
|
32
|
-
});
|
|
33
|
-
|
|
34
|
-
return $render;
|
|
35
|
-
};
|
|
36
|
-
</script>
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
<template>
|
|
2
|
-
<div class="page">
|
|
3
|
-
<div class="navbar">
|
|
4
|
-
<div class="navbar-bg"></div>
|
|
5
|
-
<div class="navbar-inner sliding">
|
|
6
|
-
<div class="left">
|
|
7
|
-
<a href="#" class="back link">
|
|
8
|
-
<i class="icon icon-back"></i>
|
|
9
|
-
<span class="if-not-md">Back</span>
|
|
10
|
-
</a>
|
|
11
|
-
</div>
|
|
12
|
-
<div class="title">${user.firstName} ${user.lastName}</div>
|
|
13
|
-
</div>
|
|
14
|
-
</div>
|
|
15
|
-
<div class="page-content">
|
|
16
|
-
<div class="block block-strong">
|
|
17
|
-
${user.about}
|
|
18
|
-
</div>
|
|
19
|
-
<div class="list links-list">
|
|
20
|
-
<ul>
|
|
21
|
-
${user.links.map((link) => $h`
|
|
22
|
-
<li><a class="external" target="_blank" href="${link.url}">${link.title}</a></li>
|
|
23
|
-
`)}
|
|
24
|
-
</ul>
|
|
25
|
-
</div>
|
|
26
|
-
</div>
|
|
27
|
-
</div>
|
|
28
|
-
</template>
|
|
29
|
-
<script>
|
|
30
|
-
export default (props) => {
|
|
31
|
-
const user = props.user;
|
|
32
|
-
|
|
33
|
-
return $render;
|
|
34
|
-
}
|
|
35
|
-
</script>
|
|
@@ -1,252 +0,0 @@
|
|
|
1
|
-
<div class="page" data-name="settings">
|
|
2
|
-
<div class="navbar">
|
|
3
|
-
<div class="navbar-bg"></div>
|
|
4
|
-
<div class="navbar-inner sliding">
|
|
5
|
-
<div class="title">Settings</div>
|
|
6
|
-
</div>
|
|
7
|
-
</div>
|
|
8
|
-
<div class="page-content">
|
|
9
|
-
<div class="block-title">Form Example</div>
|
|
10
|
-
<div class="list no-hairlines-md">
|
|
11
|
-
<ul>
|
|
12
|
-
<li>
|
|
13
|
-
<div class="item-content item-input">
|
|
14
|
-
<div class="item-inner">
|
|
15
|
-
<div class="item-title item-label">Name</div>
|
|
16
|
-
<div class="item-input-wrap">
|
|
17
|
-
<input type="text" placeholder="Your name"/>
|
|
18
|
-
</div>
|
|
19
|
-
</div>
|
|
20
|
-
</div>
|
|
21
|
-
</li>
|
|
22
|
-
<li>
|
|
23
|
-
<div class="item-content item-input">
|
|
24
|
-
<div class="item-inner">
|
|
25
|
-
<div class="item-title item-label">E-mail</div>
|
|
26
|
-
<div class="item-input-wrap">
|
|
27
|
-
<input type="email" placeholder="E-mail"/>
|
|
28
|
-
</div>
|
|
29
|
-
</div>
|
|
30
|
-
</div>
|
|
31
|
-
</li>
|
|
32
|
-
<li>
|
|
33
|
-
<div class="item-content item-input">
|
|
34
|
-
<div class="item-inner">
|
|
35
|
-
<div class="item-title item-label">URL</div>
|
|
36
|
-
<div class="item-input-wrap">
|
|
37
|
-
<input type="url" placeholder="URL"/>
|
|
38
|
-
</div>
|
|
39
|
-
</div>
|
|
40
|
-
</div>
|
|
41
|
-
</li>
|
|
42
|
-
<li>
|
|
43
|
-
<div class="item-content item-input">
|
|
44
|
-
<div class="item-inner">
|
|
45
|
-
<div class="item-title item-label">Password</div>
|
|
46
|
-
<div class="item-input-wrap">
|
|
47
|
-
<input type="password" placeholder="Password"/>
|
|
48
|
-
</div>
|
|
49
|
-
</div>
|
|
50
|
-
</div>
|
|
51
|
-
</li>
|
|
52
|
-
<li>
|
|
53
|
-
<div class="item-content item-input">
|
|
54
|
-
<div class="item-inner">
|
|
55
|
-
<div class="item-title item-label">Phone</div>
|
|
56
|
-
<div class="item-input-wrap">
|
|
57
|
-
<input type="tel" placeholder="Phone"/>
|
|
58
|
-
</div>
|
|
59
|
-
</div>
|
|
60
|
-
</div>
|
|
61
|
-
</li>
|
|
62
|
-
<li>
|
|
63
|
-
<div class="item-content item-input">
|
|
64
|
-
<div class="item-inner">
|
|
65
|
-
<div class="item-title item-label">Gender</div>
|
|
66
|
-
<div class="item-input-wrap">
|
|
67
|
-
<select>
|
|
68
|
-
<option>Male</option>
|
|
69
|
-
<option>Female</option>
|
|
70
|
-
</select>
|
|
71
|
-
</div>
|
|
72
|
-
</div>
|
|
73
|
-
</div>
|
|
74
|
-
</li>
|
|
75
|
-
<li>
|
|
76
|
-
<div class="item-content item-input">
|
|
77
|
-
<div class="item-inner">
|
|
78
|
-
<div class="item-title item-label">Birth date</div>
|
|
79
|
-
<div class="item-input-wrap">
|
|
80
|
-
<input type="date" placeholder="Birth day" value="2014-04-30"/>
|
|
81
|
-
</div>
|
|
82
|
-
</div>
|
|
83
|
-
</div>
|
|
84
|
-
</li>
|
|
85
|
-
<li>
|
|
86
|
-
<div class="item-content">
|
|
87
|
-
<div class="item-inner">
|
|
88
|
-
<div class="item-title">Toggle</div>
|
|
89
|
-
<div class="item-after">
|
|
90
|
-
<label class="toggle toggle-init">
|
|
91
|
-
<input type="checkbox"/>
|
|
92
|
-
<span class="toggle-icon"></span>
|
|
93
|
-
</label>
|
|
94
|
-
</div>
|
|
95
|
-
</div>
|
|
96
|
-
</div>
|
|
97
|
-
</li>
|
|
98
|
-
<li>
|
|
99
|
-
<div class="item-content item-input">
|
|
100
|
-
<div class="item-inner">
|
|
101
|
-
<div class="item-title item-label">Slider</div>
|
|
102
|
-
<div class="item-input-wrap">
|
|
103
|
-
<div class="range-slider range-slider-init" data-label="true">
|
|
104
|
-
<input type="range" value="50" min="0" max="100" step="1"/>
|
|
105
|
-
</div>
|
|
106
|
-
</div>
|
|
107
|
-
</div>
|
|
108
|
-
</div>
|
|
109
|
-
</li>
|
|
110
|
-
<li class="align-top">
|
|
111
|
-
<div class="item-content item-input">
|
|
112
|
-
<div class="item-inner">
|
|
113
|
-
<div class="item-title item-label">Textarea</div>
|
|
114
|
-
<div class="item-input-wrap">
|
|
115
|
-
<textarea placeholder="Bio"></textarea>
|
|
116
|
-
</div>
|
|
117
|
-
</div>
|
|
118
|
-
</div>
|
|
119
|
-
</li>
|
|
120
|
-
<li class="align-top">
|
|
121
|
-
<div class="item-content item-input">
|
|
122
|
-
<div class="item-inner">
|
|
123
|
-
<div class="item-title item-label">Resizable</div>
|
|
124
|
-
<div class="item-input-wrap">
|
|
125
|
-
<textarea placeholder="Bio" class="resizable"></textarea>
|
|
126
|
-
</div>
|
|
127
|
-
</div>
|
|
128
|
-
</div>
|
|
129
|
-
</li>
|
|
130
|
-
</ul>
|
|
131
|
-
</div>
|
|
132
|
-
<div class="block-title">Buttons</div>
|
|
133
|
-
<div class="block block-strong">
|
|
134
|
-
<p class="row">
|
|
135
|
-
<a href="#" class="col button">Button</a>
|
|
136
|
-
<a href="#" class="col button button-fill">Fill</a>
|
|
137
|
-
</p>
|
|
138
|
-
<p class="row">
|
|
139
|
-
<a href="#" class="col button button-raised">Raised</a>
|
|
140
|
-
<a href="#" class="col button button-raised button-fill">Raised Fill</a>
|
|
141
|
-
</p>
|
|
142
|
-
<p class="row">
|
|
143
|
-
<a href="#" class="col button button-round">Round</a>
|
|
144
|
-
<a href="#" class="col button button-round button-fill">Round Fill</a>
|
|
145
|
-
</p>
|
|
146
|
-
<p class="row">
|
|
147
|
-
<a href="#" class="col button button-outline">Outline</a>
|
|
148
|
-
<a href="#" class="col button button-round button-outline">Outline Round</a>
|
|
149
|
-
</p>
|
|
150
|
-
<p class="row">
|
|
151
|
-
<a href="#" class="col button button-small button-outline">Small</a>
|
|
152
|
-
<a href="#" class="col button button-small button-round button-outline">Small Round</a>
|
|
153
|
-
</p>
|
|
154
|
-
<p class="row">
|
|
155
|
-
<a href="#" class="col button button-small button-fill">Small</a>
|
|
156
|
-
<a href="#" class="col button button-small button-round button-fill">Small Round</a>
|
|
157
|
-
</p>
|
|
158
|
-
<p class="row">
|
|
159
|
-
<a href="#" class="col button button-large button-raised">Large</a>
|
|
160
|
-
<a href="#" class="col button button-large button-fill button-raised">Large Fill</a>
|
|
161
|
-
</p>
|
|
162
|
-
|
|
163
|
-
<p class="row">
|
|
164
|
-
<a href="#" class="col button button-large button-fill button-raised color-red">Large Red</a>
|
|
165
|
-
<a href="#" class="col button button-large button-fill button-raised color-green">Large Green</a>
|
|
166
|
-
</p>
|
|
167
|
-
|
|
168
|
-
</div>
|
|
169
|
-
<div class="block-title">Checkbox group</div>
|
|
170
|
-
<div class="list">
|
|
171
|
-
<ul>
|
|
172
|
-
<li>
|
|
173
|
-
<label class="item-checkbox item-content">
|
|
174
|
-
<input type="checkbox" name="checkbox" value="Books" checked="checked"/>
|
|
175
|
-
<i class="icon icon-checkbox"></i>
|
|
176
|
-
<div class="item-inner">
|
|
177
|
-
<div class="item-title">Books</div>
|
|
178
|
-
</div>
|
|
179
|
-
</label>
|
|
180
|
-
</li>
|
|
181
|
-
<li>
|
|
182
|
-
<label class="item-checkbox item-content">
|
|
183
|
-
<input type="checkbox" name="checkbox" value="Movies"/>
|
|
184
|
-
<i class="icon icon-checkbox"></i>
|
|
185
|
-
<div class="item-inner">
|
|
186
|
-
<div class="item-title">Movies</div>
|
|
187
|
-
</div>
|
|
188
|
-
</label>
|
|
189
|
-
</li>
|
|
190
|
-
<li>
|
|
191
|
-
<label class="item-checkbox item-content">
|
|
192
|
-
<input type="checkbox" name="checkbox" value="Food"/>
|
|
193
|
-
<i class="icon icon-checkbox"></i>
|
|
194
|
-
<div class="item-inner">
|
|
195
|
-
<div class="item-title">Food</div>
|
|
196
|
-
</div>
|
|
197
|
-
</label>
|
|
198
|
-
</li>
|
|
199
|
-
<li>
|
|
200
|
-
<label class="item-checkbox item-content">
|
|
201
|
-
<input type="checkbox" name="checkbox" value="Drinks"/>
|
|
202
|
-
<i class="icon icon-checkbox"></i>
|
|
203
|
-
<div class="item-inner">
|
|
204
|
-
<div class="item-title">Drinks</div>
|
|
205
|
-
</div>
|
|
206
|
-
</label>
|
|
207
|
-
</li>
|
|
208
|
-
</ul>
|
|
209
|
-
</div>
|
|
210
|
-
<div class="block-title">Radio buttons group</div>
|
|
211
|
-
<div class="list">
|
|
212
|
-
<ul>
|
|
213
|
-
<li>
|
|
214
|
-
<label class="item-radio item-content">
|
|
215
|
-
<input type="radio" name="radio" value="Books" checked="checked"/>
|
|
216
|
-
<i class="icon icon-radio"></i>
|
|
217
|
-
<div class="item-inner">
|
|
218
|
-
<div class="item-title">Books</div>
|
|
219
|
-
</div>
|
|
220
|
-
</label>
|
|
221
|
-
</li>
|
|
222
|
-
<li>
|
|
223
|
-
<label class="item-radio item-content">
|
|
224
|
-
<input type="radio" name="radio" value="Movies"/>
|
|
225
|
-
<i class="icon icon-radio"></i>
|
|
226
|
-
<div class="item-inner">
|
|
227
|
-
<div class="item-title">Movies</div>
|
|
228
|
-
</div>
|
|
229
|
-
</label>
|
|
230
|
-
</li>
|
|
231
|
-
<li>
|
|
232
|
-
<label class="item-radio item-content">
|
|
233
|
-
<input type="radio" name="radio" value="Food"/>
|
|
234
|
-
<i class="icon icon-radio"></i>
|
|
235
|
-
<div class="item-inner">
|
|
236
|
-
<div class="item-title">Food</div>
|
|
237
|
-
</div>
|
|
238
|
-
</label>
|
|
239
|
-
</li>
|
|
240
|
-
<li>
|
|
241
|
-
<label class="item-radio item-content">
|
|
242
|
-
<input type="radio" name="radio" value="Drinks"/>
|
|
243
|
-
<i class="icon icon-radio"></i>
|
|
244
|
-
<div class="item-inner">
|
|
245
|
-
<div class="item-title">Drinks</div>
|
|
246
|
-
</div>
|
|
247
|
-
</label>
|
|
248
|
-
</li>
|
|
249
|
-
</ul>
|
|
250
|
-
</div>
|
|
251
|
-
</div>
|
|
252
|
-
</div>
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";const s=require("path"),c=require("../../utils/fs-extra");module.exports=r=>{let e=r.cwd||process.cwd(),{framework:t}=r,i=["./src","./src/static","./src/css","./src/pages","./public","./assets-src"];0>i.indexOf("./www")&&i.push("./www"),"core"!==t&&i.push("./src/components"),i.push("./src/static/icons"),i.forEach(r=>{c.mkdirSync(s.resolve(e,r))})};
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
"use strict";const e=require("../utils/indent");module.exports=()=>e(4,`
|
|
2
|
-
<allow-navigation href="*" />
|
|
3
|
-
<preference name="DisallowOverscroll" value="true" />
|
|
4
|
-
<preference name="BackupWebStorage" value="local" />
|
|
5
|
-
<preference name="AutoHideSplashScreen" value="false" />
|
|
6
|
-
<preference name="ShowSplashScreenSpinner" value="false" />
|
|
7
|
-
<preference name="SplashScreenDelay" value="0" />
|
|
8
|
-
<preference name="Suppresses3DTouchGesture" value="true" />
|
|
9
|
-
<preference name="Allow3DTouchLinkPreview" value="false" />
|
|
10
|
-
<preference name="AllowInlineMediaPlayback" value="true" />
|
|
11
|
-
`);
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
"use strict";const{projectFramework:e}=require("../../utils/constants"),t=require("./core/generate-root.js");module.exports=i=>{let{name:o,framework:a,theming:c}=i,n="/src/",r="core"===a?t(i):"",l=`
|
|
2
|
-
<!-- built script files will be auto injected -->
|
|
3
|
-
${a===e.REACT||a===e.VUE?`<script type="module" src="${n}app.js"></script>`:""}
|
|
4
|
-
${a===e.REACT_TYPESCRIPT?`<script type="module" src="${n}app.ts"></script>`:""}
|
|
5
|
-
`.trim();return`
|
|
6
|
-
<!DOCTYPE html>
|
|
7
|
-
<html>
|
|
8
|
-
<head>
|
|
9
|
-
<meta charset="utf-8">
|
|
10
|
-
<meta http-equiv="Content-Security-Policy" content="default-src * 'self' 'unsafe-inline' 'unsafe-eval' data: gap: content:">
|
|
11
|
-
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, minimum-scale=1, user-scalable=no, viewport-fit=cover">
|
|
12
|
-
|
|
13
|
-
<meta name="theme-color" content="${c.customColor&&c.color?`${c.color}`:"#007aff"}">
|
|
14
|
-
<meta name="format-detection" content="telephone=no">
|
|
15
|
-
<meta name="msapplication-tap-highlight" content="no">
|
|
16
|
-
<link rel="icon" href="${n}static/icons/favicon.png">
|
|
17
|
-
<title>${o}</title>
|
|
18
|
-
</head>
|
|
19
|
-
<body>
|
|
20
|
-
<div id="app"${"core"===a&&c.darkTheme?'class="theme-dark"':""}>${r}</div>
|
|
21
|
-
${l}
|
|
22
|
-
</body>
|
|
23
|
-
</html>
|
|
24
|
-
`.trim()};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";module.exports=s=>{let{name:o,theming:e}=s,n="static";return JSON.stringify({name:o,short_name:o,description:o,lang:"en-US",start_url:"/",display:"standalone",background_color:e.customColor&&e.color?`${e.color}`:"#EE350F",theme_color:e.customColor&&e.color?`${e.color}`:"#EE350F",icons:[{src:`/${n}/icons/128x128.png`,sizes:"128x128",type:"image/png"},{src:`/${n}/icons/144x144.png`,sizes:"144x144",type:"image/png"},{src:`/${n}/icons/152x152.png`,sizes:"152x152",type:"image/png"},{src:`/${n}/icons/192x192.png`,sizes:"192x192",type:"image/png"},{src:`/${n}/icons/256x256.png`,sizes:"256x256",type:"image/png"},{src:`/${n}/icons/512x512.png`,sizes:"512x512",type:"image/png"}]},null,2)};
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
"use strict";require("../utils/indent");const e=require("../utils/template-if");module.exports=i=>{let{framework:t,template:r}=i,a=`
|
|
2
|
-
|
|
3
|
-
export const productsState = atom({
|
|
4
|
-
key: "products",
|
|
5
|
-
default: [
|
|
6
|
-
{
|
|
7
|
-
id: '1',
|
|
8
|
-
title: 'Apple iPhone 8',
|
|
9
|
-
description: 'Lorem ipsum dolor sit amet, consectetur adipisicing elit. Nisi tempora similique reiciendis, error nesciunt vero, blanditiis pariatur dolor, minima sed sapiente rerum, dolorem corrupti hic modi praesentium unde saepe perspiciatis.'
|
|
10
|
-
},
|
|
11
|
-
{
|
|
12
|
-
id: '2',
|
|
13
|
-
title: 'Apple iPhone 8 Plus',
|
|
14
|
-
description: 'Velit odit autem modi saepe ratione totam minus, aperiam, labore quia provident temporibus quasi est ut aliquid blanditiis beatae suscipit odio vel! Nostrum porro sunt sint eveniet maiores, dolorem itaque!'
|
|
15
|
-
},
|
|
16
|
-
{
|
|
17
|
-
id: '3',
|
|
18
|
-
title: 'Apple iPhone X',
|
|
19
|
-
description: 'Expedita sequi perferendis quod illum pariatur aliquam, alias laboriosam! Vero blanditiis placeat, mollitia necessitatibus reprehenderit. Labore dolores amet quos, accusamus earum asperiores officiis assumenda optio architecto quia neque, quae eum.'
|
|
20
|
-
},
|
|
21
|
-
]
|
|
22
|
-
});`;return"react-typescript"===t?`
|
|
23
|
-
import { atom } from "recoil";
|
|
24
|
-
import { userInfo } from 'zmp-sdk';
|
|
25
|
-
|
|
26
|
-
export const userState = atom<userInfo>({
|
|
27
|
-
key: "user",
|
|
28
|
-
default: {
|
|
29
|
-
id: '12345678',
|
|
30
|
-
name: 'Zalo',
|
|
31
|
-
avatar: 'ZA',
|
|
32
|
-
}
|
|
33
|
-
})
|
|
34
|
-
${e("tabs"===r,()=>a)}`:`import { atom } from "recoil";
|
|
35
|
-
|
|
36
|
-
export const userState = atom({
|
|
37
|
-
key: "user",
|
|
38
|
-
default: {
|
|
39
|
-
id: '12345678',
|
|
40
|
-
name: 'Zalo',
|
|
41
|
-
avatar: 'ZA',
|
|
42
|
-
}
|
|
43
|
-
})
|
|
44
|
-
${e("tabs"===r,()=>a)}`};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";const e=require("./vue/generate-routes"),r=require("./react/generate-routes"),t=require("./react-typescript/generate-routes");module.exports=u=>{let{framework:s}=u;return"vue"===s?e(u):"react"===s?r(u):"react-typescript"===s?t(u):[]};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";const e=require("./core/generate-scripts"),r=require("./vue/generate-scripts"),t=require("./react/generate-scripts"),s=require("./svelte/generate-scripts"),c=require("./react-typescript/generate-scripts"),i=require("./zaui/generate-scripts");module.exports=a=>{let{framework:p}=a;return"zmp-ui"===a.package?i(a):"core"===p?e(a):"vue"===p?r(a):"react"===p?t(a):"svelte"===p?s(a):"react-typescript"===p?c(a):""};
|
|
@@ -1,120 +0,0 @@
|
|
|
1
|
-
"use strict";const s=require("../utils/indent"),o=require("../utils/template-if");module.exports=e=>{let{bundler:n,theming:r}=e;return s(0,`
|
|
2
|
-
// Import Workbox (https://developers.google.com/web/tools/workbox/)
|
|
3
|
-
importScripts('https://storage.googleapis.com/workbox-cdn/releases/5.0.0/workbox-sw.js');
|
|
4
|
-
|
|
5
|
-
/*
|
|
6
|
-
Precache Manifest
|
|
7
|
-
Change revision as soon as file content changed
|
|
8
|
-
*/
|
|
9
|
-
self.__WB_MANIFEST = [
|
|
10
|
-
{
|
|
11
|
-
revision: '1',
|
|
12
|
-
url: 'zmp/zmp-bundle.min.css'
|
|
13
|
-
},
|
|
14
|
-
{
|
|
15
|
-
revision: '1',
|
|
16
|
-
url: 'zmp/zmp-bundle.min.js'
|
|
17
|
-
},
|
|
18
|
-
{
|
|
19
|
-
revision: '1',
|
|
20
|
-
url: 'css/app.css'
|
|
21
|
-
},
|
|
22
|
-
${o(r.iconFonts,()=>`
|
|
23
|
-
{
|
|
24
|
-
revision: '1',
|
|
25
|
-
url: 'css/icons.css'
|
|
26
|
-
},
|
|
27
|
-
`)}
|
|
28
|
-
{
|
|
29
|
-
revision: '1',
|
|
30
|
-
url: 'routes.js'
|
|
31
|
-
},
|
|
32
|
-
{
|
|
33
|
-
revision: '1',
|
|
34
|
-
url: 'store.js'
|
|
35
|
-
},
|
|
36
|
-
{
|
|
37
|
-
revision: '1',
|
|
38
|
-
url: 'app.js'
|
|
39
|
-
},
|
|
40
|
-
${o(r.iconFonts,()=>`
|
|
41
|
-
// Fonts
|
|
42
|
-
{
|
|
43
|
-
revision: '1',
|
|
44
|
-
url: 'fonts/ZMPIcons-Regular.woff2'
|
|
45
|
-
},
|
|
46
|
-
{
|
|
47
|
-
revision: '1',
|
|
48
|
-
url: 'fonts/ZMPIcons-Regular.woff'
|
|
49
|
-
},
|
|
50
|
-
{
|
|
51
|
-
revision: '1',
|
|
52
|
-
url: 'fonts/ZMPIcons-Regular.eot'
|
|
53
|
-
},
|
|
54
|
-
{
|
|
55
|
-
revision: '1',
|
|
56
|
-
url: 'fonts/ZMPIcons-Regular.ttf'
|
|
57
|
-
},
|
|
58
|
-
{
|
|
59
|
-
revision: '1',
|
|
60
|
-
url: 'fonts/MaterialIcons-Regular.woff2'
|
|
61
|
-
},
|
|
62
|
-
{
|
|
63
|
-
revision: '1',
|
|
64
|
-
url: 'fonts/MaterialIcons-Regular.woff'
|
|
65
|
-
},
|
|
66
|
-
{
|
|
67
|
-
revision: '1',
|
|
68
|
-
url: 'fonts/MaterialIcons-Regular.ttf'
|
|
69
|
-
},
|
|
70
|
-
{
|
|
71
|
-
revision: '1',
|
|
72
|
-
url: 'fonts/MaterialIcons-Regular.eot'
|
|
73
|
-
},
|
|
74
|
-
`)}
|
|
75
|
-
// HTML
|
|
76
|
-
{
|
|
77
|
-
revision: '1',
|
|
78
|
-
url: './index.html'
|
|
79
|
-
},
|
|
80
|
-
// Icons
|
|
81
|
-
{
|
|
82
|
-
revision: '1',
|
|
83
|
-
url: 'assets/icons/128x128.png'
|
|
84
|
-
},
|
|
85
|
-
{
|
|
86
|
-
revision: '1',
|
|
87
|
-
url: 'assets/icons/144x144.png'
|
|
88
|
-
},
|
|
89
|
-
{
|
|
90
|
-
revision: '1',
|
|
91
|
-
url: 'assets/icons/152x152.png'
|
|
92
|
-
},
|
|
93
|
-
{
|
|
94
|
-
revision: '1',
|
|
95
|
-
url: 'assets/icons/192x192.png'
|
|
96
|
-
},
|
|
97
|
-
{
|
|
98
|
-
revision: '1',
|
|
99
|
-
url: 'assets/icons/256x256.png'
|
|
100
|
-
},
|
|
101
|
-
{
|
|
102
|
-
revision: '1',
|
|
103
|
-
url: 'assets/icons/512x512.png'
|
|
104
|
-
},
|
|
105
|
-
{
|
|
106
|
-
revision: '1',
|
|
107
|
-
url: 'assets/icons/favicon.png'
|
|
108
|
-
},
|
|
109
|
-
{
|
|
110
|
-
revision: '1',
|
|
111
|
-
url: 'assets/icons/apple-touch-icon.png'
|
|
112
|
-
},
|
|
113
|
-
];
|
|
114
|
-
|
|
115
|
-
/*
|
|
116
|
-
Enable precaching
|
|
117
|
-
It is better to comment next line during development
|
|
118
|
-
*/
|
|
119
|
-
workbox.precaching.precacheAndRoute(self.__WB_MANIFEST || []);
|
|
120
|
-
`).trim()};
|
|
@@ -1,77 +0,0 @@
|
|
|
1
|
-
"use strict";const e=require("../utils/indent");require("../utils/template-if"),module.exports=t=>{let{framework:r}=t;return"vue"===r?e(0,`
|
|
2
|
-
import { createStore } from 'zmp-core/lite';
|
|
3
|
-
const store = createStore({
|
|
4
|
-
state: {
|
|
5
|
-
user: {
|
|
6
|
-
id: '',
|
|
7
|
-
name: '',
|
|
8
|
-
avatar: ''
|
|
9
|
-
},
|
|
10
|
-
darkMode: false,
|
|
11
|
-
},
|
|
12
|
-
getters: {
|
|
13
|
-
user({ state }) {
|
|
14
|
-
return state.user
|
|
15
|
-
},
|
|
16
|
-
darkMode({ state }) {
|
|
17
|
-
return state.darkMode
|
|
18
|
-
}
|
|
19
|
-
},
|
|
20
|
-
actions: {
|
|
21
|
-
setUser({ state }, data) {
|
|
22
|
-
state.user = { ...state.user, ...data }
|
|
23
|
-
},
|
|
24
|
-
setDarkMode({ state }, dark) {
|
|
25
|
-
state.darkMode = dark
|
|
26
|
-
}
|
|
27
|
-
},
|
|
28
|
-
})
|
|
29
|
-
|
|
30
|
-
export default store;
|
|
31
|
-
`):e(0,`
|
|
32
|
-
import { createStore } from 'zmp-core${"core"===r?"":"/lite"}';
|
|
33
|
-
const store = createStore({
|
|
34
|
-
state: {
|
|
35
|
-
user: {
|
|
36
|
-
id: '12345678',
|
|
37
|
-
name: 'Zalo',
|
|
38
|
-
avatar: 'ZA',
|
|
39
|
-
},
|
|
40
|
-
products: [
|
|
41
|
-
{
|
|
42
|
-
id: '1',
|
|
43
|
-
title: 'Apple iPhone 8',
|
|
44
|
-
description: 'Lorem ipsum dolor sit amet, consectetur adipisicing elit. Nisi tempora similique reiciendis, error nesciunt vero, blanditiis pariatur dolor, minima sed sapiente rerum, dolorem corrupti hic modi praesentium unde saepe perspiciatis.'
|
|
45
|
-
},
|
|
46
|
-
{
|
|
47
|
-
id: '2',
|
|
48
|
-
title: 'Apple iPhone 8 Plus',
|
|
49
|
-
description: 'Velit odit autem modi saepe ratione totam minus, aperiam, labore quia provident temporibus quasi est ut aliquid blanditiis beatae suscipit odio vel! Nostrum porro sunt sint eveniet maiores, dolorem itaque!'
|
|
50
|
-
},
|
|
51
|
-
{
|
|
52
|
-
id: '3',
|
|
53
|
-
title: 'Apple iPhone X',
|
|
54
|
-
description: 'Expedita sequi perferendis quod illum pariatur aliquam, alias laboriosam! Vero blanditiis placeat, mollitia necessitatibus reprehenderit. Labore dolores amet quos, accusamus earum asperiores officiis assumenda optio architecto quia neque, quae eum.'
|
|
55
|
-
},
|
|
56
|
-
]
|
|
57
|
-
},
|
|
58
|
-
getters: {
|
|
59
|
-
user({ state }) {
|
|
60
|
-
return state.user
|
|
61
|
-
},
|
|
62
|
-
products({ state }) {
|
|
63
|
-
return state.products;
|
|
64
|
-
}
|
|
65
|
-
},
|
|
66
|
-
actions: {
|
|
67
|
-
setUser({ state }, data) {
|
|
68
|
-
state.user = { ...state.user, ...data }
|
|
69
|
-
},
|
|
70
|
-
addProduct({ state }, product) {
|
|
71
|
-
state.products = [...state.products, product];
|
|
72
|
-
},
|
|
73
|
-
},
|
|
74
|
-
})
|
|
75
|
-
|
|
76
|
-
export default store;
|
|
77
|
-
`)};
|