@varlet/cli 2.0.0-alpha.1663742071515 → 2.0.0-alpha.1664031123039
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.en-US.md +1 -1
- package/README.md +1 -1
- package/lib/commands/create.js +58 -73
- package/lib/commands/gen.js +5 -10
- package/package.json +6 -7
- package/template/create/{tsx.ejs → [ComponentName].tsx.ejs} +2 -2
- package/template/create/{vue.ejs → [ComponentName].vue.ejs} +2 -2
- package/template/create/{less.ejs → [componentName].less.ejs} +0 -0
- package/template/create/__tests__/{index.spec.ejs → index.spec.js.ejs} +6 -1
- package/template/create/example/{index.ejs → index.vue.ejs} +0 -0
- package/template/create/{index.ejs → index.ts.ejs} +0 -1
- package/template/generators/base/.prettierignore +6 -1
- package/template/generators/base/README.md +1 -1
- package/template/generators/base/public/logo.svg +30 -1
- package/template/generators/config/default/base/docs/home.zh-CN.md +0 -8
- package/template/generators/config/default/base/package.json +12 -5
- package/template/generators/config/default/base/varlet.config.js +0 -65
- package/template/generators/config/default/sfc/src/button/Button.vue +3 -2
- package/template/generators/config/default/sfc/src/button/button.less +2 -2
- package/template/generators/config/default/sfc/src/button/docs/zh-CN.md +2 -11
- package/template/generators/config/default/sfc/src/button/example/BasicUse.vue +2 -2
- package/template/generators/config/default/sfc/src/button/example/ModifyColor.vue +2 -2
- package/template/generators/config/default/sfc/src/button/example/index.vue +3 -4
- package/template/generators/config/default/tsx/src/button/Button.tsx +2 -2
- package/template/generators/config/default/tsx/src/button/button.less +2 -2
- package/template/generators/config/default/tsx/src/button/docs/zh-CN.md +2 -11
- package/template/generators/config/default/tsx/src/button/example/BasicUse.vue +2 -2
- package/template/generators/config/default/tsx/src/button/example/ModifyColor.vue +2 -2
- package/template/generators/config/default/tsx/src/button/example/index.vue +3 -4
- package/template/generators/config/i18n/base/docs/home.en-US.md +0 -8
- package/template/generators/config/i18n/base/docs/home.zh-CN.md +0 -8
- package/template/generators/config/i18n/base/package.json +11 -4
- package/template/generators/config/i18n/base/varlet.config.js +0 -75
- package/template/generators/config/i18n/sfc/src/button/Button.vue +6 -5
- package/template/generators/config/i18n/sfc/src/button/button.less +2 -2
- package/template/generators/config/i18n/sfc/src/button/docs/en-US.md +7 -3
- package/template/generators/config/i18n/sfc/src/button/docs/zh-CN.md +6 -2
- package/template/generators/config/i18n/sfc/src/button/example/BasicUse.vue +2 -2
- package/template/generators/config/i18n/sfc/src/button/example/ModifyColor.vue +2 -2
- package/template/generators/config/i18n/sfc/src/button/example/index.vue +5 -2
- package/template/generators/config/i18n/tsx/src/button/Button.tsx +6 -8
- package/template/generators/config/i18n/tsx/src/button/button.less +2 -2
- package/template/generators/config/i18n/tsx/src/button/docs/en-US.md +7 -3
- package/template/generators/config/i18n/tsx/src/button/docs/zh-CN.md +6 -2
- package/template/generators/config/i18n/tsx/src/button/example/BasicUse.vue +3 -3
- package/template/generators/config/i18n/tsx/src/button/example/ModifyColor.vue +2 -2
- package/template/generators/config/i18n/tsx/src/button/example/index.vue +4 -2
- package/template/generators/config/i18n/tsx/src/button/index.ts +1 -1
- package/lib/commands/test.d.ts +0 -7
- package/lib/commands/test.js +0 -26
- package/lib/commands/useVite.d.ts +0 -1
- package/lib/commands/useVite.js +0 -70
- package/lib/config/vitest.config.d.ts +0 -2
- package/lib/config/vitest.config.js +0 -28
- package/template/generators/base/public/highlight.css +0 -1
package/README.en-US.md
CHANGED
package/README.md
CHANGED
package/lib/commands/create.js
CHANGED
|
@@ -35,102 +35,80 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
35
35
|
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
36
|
}
|
|
37
37
|
};
|
|
38
|
-
var __read = (this && this.__read) || function (o, n) {
|
|
39
|
-
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
40
|
-
if (!m) return o;
|
|
41
|
-
var i = m.call(o), r, ar = [], e;
|
|
42
|
-
try {
|
|
43
|
-
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
44
|
-
}
|
|
45
|
-
catch (error) { e = { error: error }; }
|
|
46
|
-
finally {
|
|
47
|
-
try {
|
|
48
|
-
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
49
|
-
}
|
|
50
|
-
finally { if (e) throw e.error; }
|
|
51
|
-
}
|
|
52
|
-
return ar;
|
|
53
|
-
};
|
|
54
|
-
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
55
|
-
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
56
|
-
if (ar || !(i in from)) {
|
|
57
|
-
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
58
|
-
ar[i] = from[i];
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
return to.concat(ar || Array.prototype.slice.call(from));
|
|
62
|
-
};
|
|
63
38
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
64
39
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
65
40
|
};
|
|
66
41
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
67
42
|
exports.create = void 0;
|
|
43
|
+
var ejs_1 = __importDefault(require("ejs"));
|
|
44
|
+
var logger_1 = __importDefault(require("../shared/logger"));
|
|
68
45
|
var shared_1 = require("@varlet/shared");
|
|
69
46
|
var inquirer_1 = require("inquirer");
|
|
70
|
-
var ejs_1 = __importDefault(require("ejs"));
|
|
71
47
|
var fs_extra_1 = require("fs-extra");
|
|
72
48
|
var lodash_1 = require("lodash");
|
|
73
49
|
var path_1 = require("path");
|
|
74
|
-
var logger_1 = __importDefault(require("../shared/logger"));
|
|
75
50
|
var fsUtils_1 = require("../shared/fsUtils");
|
|
76
51
|
var varlet_config_1 = require("../config/varlet.config");
|
|
77
52
|
var constant_1 = require("../shared/constant");
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
var
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
var
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
}
|
|
98
|
-
|
|
99
|
-
return __generator(this, function (_a) {
|
|
100
|
-
switch (_a.label) {
|
|
101
|
-
case 0:
|
|
102
|
-
!createOptions.locale && (0, fs_extra_1.removeSync)("".concat(path, "/example/locale"));
|
|
103
|
-
return [4 /*yield*/, (0, fsUtils_1.glob)("".concat(path, "/**/*.ejs"))];
|
|
104
|
-
case 1:
|
|
105
|
-
(_a.sent()).forEach(function (file) { return (0, fs_extra_1.removeSync)(file); });
|
|
106
|
-
return [2 /*return*/];
|
|
107
|
-
}
|
|
53
|
+
function renderTemplates(componentFolder, componentFolderName, renderData) {
|
|
54
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
55
|
+
var templates;
|
|
56
|
+
return __generator(this, function (_a) {
|
|
57
|
+
switch (_a.label) {
|
|
58
|
+
case 0: return [4 /*yield*/, (0, fsUtils_1.glob)("".concat(componentFolder, "/**/*.ejs"))];
|
|
59
|
+
case 1:
|
|
60
|
+
templates = _a.sent();
|
|
61
|
+
templates.forEach(function (template) {
|
|
62
|
+
var templateCode = (0, fs_extra_1.readFileSync)(template, { encoding: 'utf-8' });
|
|
63
|
+
var code = ejs_1.default.render(templateCode, renderData);
|
|
64
|
+
var file = template
|
|
65
|
+
.replace('[componentName]', (0, shared_1.camelize)(componentFolderName))
|
|
66
|
+
.replace('[ComponentName]', (0, shared_1.bigCamelize)(componentFolderName))
|
|
67
|
+
.replace('.ejs', '');
|
|
68
|
+
(0, fs_extra_1.writeFileSync)(file, code);
|
|
69
|
+
(0, fs_extra_1.removeSync)(template);
|
|
70
|
+
});
|
|
71
|
+
return [2 /*return*/];
|
|
72
|
+
}
|
|
73
|
+
});
|
|
108
74
|
});
|
|
109
|
-
}
|
|
75
|
+
}
|
|
110
76
|
function create(options) {
|
|
111
77
|
return __awaiter(this, void 0, void 0, function () {
|
|
112
|
-
var name, _a, locale, _b, style
|
|
78
|
+
var namespace, renderData, name, _a, componentFolder, componentFolderName, locale, _b, style;
|
|
113
79
|
return __generator(this, function (_c) {
|
|
114
80
|
switch (_c.label) {
|
|
115
81
|
case 0:
|
|
116
|
-
logger_1.default.title('\n📦📦 Create a
|
|
82
|
+
logger_1.default.title('\n📦📦 Create a component ! \n');
|
|
83
|
+
namespace = (0, lodash_1.get)((0, varlet_config_1.getVarletConfig)(), 'namespace');
|
|
84
|
+
renderData = {
|
|
85
|
+
namespace: namespace,
|
|
86
|
+
bigCamelizeNamespace: (0, shared_1.bigCamelize)(namespace),
|
|
87
|
+
kebabCaseName: 'component-name',
|
|
88
|
+
bigCamelizeName: 'ComponentName',
|
|
89
|
+
camelizeName: 'componentName',
|
|
90
|
+
style: 'vue',
|
|
91
|
+
};
|
|
117
92
|
if (!options.name) return [3 /*break*/, 1];
|
|
118
93
|
_a = options;
|
|
119
94
|
return [3 /*break*/, 3];
|
|
120
95
|
case 1: return [4 /*yield*/, (0, inquirer_1.prompt)({
|
|
121
96
|
name: 'name',
|
|
122
97
|
message: 'Name of the component created: ',
|
|
123
|
-
default:
|
|
98
|
+
default: renderData.kebabCaseName,
|
|
124
99
|
})];
|
|
125
100
|
case 2:
|
|
126
101
|
_a = _c.sent();
|
|
127
102
|
_c.label = 3;
|
|
128
103
|
case 3:
|
|
129
104
|
name = (_a).name;
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
105
|
+
renderData.kebabCaseName = (0, shared_1.kebabCase)(name);
|
|
106
|
+
renderData.camelizeName = (0, shared_1.camelize)(name);
|
|
107
|
+
renderData.bigCamelizeName = (0, shared_1.bigCamelize)(name);
|
|
108
|
+
componentFolder = (0, path_1.resolve)(constant_1.SRC_DIR, renderData.kebabCaseName);
|
|
109
|
+
componentFolderName = renderData.kebabCaseName;
|
|
110
|
+
if ((0, fs_extra_1.pathExistsSync)(componentFolder)) {
|
|
111
|
+
logger_1.default.warning("".concat(componentFolderName, " already exist and cannot be recreated..."));
|
|
134
112
|
return [2 /*return*/];
|
|
135
113
|
}
|
|
136
114
|
if (!options.locale) return [3 /*break*/, 4];
|
|
@@ -147,9 +125,9 @@ function create(options) {
|
|
|
147
125
|
_c.label = 6;
|
|
148
126
|
case 6:
|
|
149
127
|
locale = (_b).locale;
|
|
150
|
-
|
|
128
|
+
renderData.locale = locale;
|
|
151
129
|
if (!(options.sfc || options.tsx)) return [3 /*break*/, 7];
|
|
152
|
-
|
|
130
|
+
renderData.style = options.sfc ? 'vue' : 'tsx';
|
|
153
131
|
return [3 /*break*/, 9];
|
|
154
132
|
case 7: return [4 /*yield*/, (0, inquirer_1.prompt)({
|
|
155
133
|
name: 'style',
|
|
@@ -163,16 +141,23 @@ function create(options) {
|
|
|
163
141
|
})];
|
|
164
142
|
case 8:
|
|
165
143
|
style = (_c.sent()).style;
|
|
166
|
-
|
|
144
|
+
renderData.style = style;
|
|
167
145
|
_c.label = 9;
|
|
168
146
|
case 9:
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
__spreadArray(__spreadArray([], __read(templateFiles), false), ["".concat(createOptions.style, ".").concat(createOptions.style)], false).forEach(function (file) { return ejsRender(file, createOptions); });
|
|
172
|
-
return [4 /*yield*/, removeFiles(componentPath)];
|
|
147
|
+
(0, fs_extra_1.copySync)((0, path_1.resolve)(__dirname, '../../template/create'), componentFolder);
|
|
148
|
+
return [4 /*yield*/, renderTemplates(componentFolder, componentFolderName, renderData)];
|
|
173
149
|
case 10:
|
|
174
150
|
_c.sent();
|
|
175
|
-
|
|
151
|
+
if (!renderData.locale) {
|
|
152
|
+
(0, fs_extra_1.removeSync)((0, path_1.resolve)(componentFolder, '/example/locale'));
|
|
153
|
+
}
|
|
154
|
+
if (renderData.style !== 'vue') {
|
|
155
|
+
(0, fs_extra_1.removeSync)((0, path_1.resolve)(componentFolder, "".concat(renderData.bigCamelizeName, ".vue")));
|
|
156
|
+
}
|
|
157
|
+
if (renderData.style !== 'tsx') {
|
|
158
|
+
(0, fs_extra_1.removeSync)((0, path_1.resolve)(componentFolder, "".concat(renderData.bigCamelizeName, ".tsx")));
|
|
159
|
+
}
|
|
160
|
+
logger_1.default.success("Create ".concat(componentFolderName, " component success!"));
|
|
176
161
|
return [2 /*return*/];
|
|
177
162
|
}
|
|
178
163
|
});
|
package/lib/commands/gen.js
CHANGED
|
@@ -45,11 +45,6 @@ var inquirer_1 = require("inquirer");
|
|
|
45
45
|
var path_1 = require("path");
|
|
46
46
|
var fs_extra_1 = require("fs-extra");
|
|
47
47
|
var constant_1 = require("../shared/constant");
|
|
48
|
-
var genOptions = {
|
|
49
|
-
name: 'varlet-app',
|
|
50
|
-
locale: false,
|
|
51
|
-
style: 'sfc',
|
|
52
|
-
};
|
|
53
48
|
function syncVersion(name) {
|
|
54
49
|
var file = (0, path_1.resolve)(constant_1.CWD, name, 'package.json');
|
|
55
50
|
var pkg = JSON.parse((0, fs_extra_1.readFileSync)(file, 'utf-8'));
|
|
@@ -64,7 +59,7 @@ function syncVersion(name) {
|
|
|
64
59
|
}
|
|
65
60
|
function gen(options) {
|
|
66
61
|
return __awaiter(this, void 0, void 0, function () {
|
|
67
|
-
var name, _a, dest, style, i18n, _b, dirName, base, configBase, code;
|
|
62
|
+
var name, _a, dest, codeStyle, style, i18n, _b, dirName, base, configBase, code;
|
|
68
63
|
return __generator(this, function (_c) {
|
|
69
64
|
switch (_c.label) {
|
|
70
65
|
case 0:
|
|
@@ -75,7 +70,7 @@ function gen(options) {
|
|
|
75
70
|
case 1: return [4 /*yield*/, (0, inquirer_1.prompt)({
|
|
76
71
|
name: 'name',
|
|
77
72
|
message: 'Name of the generate application: ',
|
|
78
|
-
default:
|
|
73
|
+
default: 'varlet-cli-app',
|
|
79
74
|
})];
|
|
80
75
|
case 2:
|
|
81
76
|
_a = _c.sent();
|
|
@@ -88,7 +83,7 @@ function gen(options) {
|
|
|
88
83
|
return [2 /*return*/];
|
|
89
84
|
}
|
|
90
85
|
if (!(options.sfc || options.tsx)) return [3 /*break*/, 4];
|
|
91
|
-
|
|
86
|
+
codeStyle = options.sfc ? 'sfc' : 'tsx';
|
|
92
87
|
return [3 /*break*/, 6];
|
|
93
88
|
case 4: return [4 /*yield*/, (0, inquirer_1.prompt)({
|
|
94
89
|
name: 'style',
|
|
@@ -98,7 +93,7 @@ function gen(options) {
|
|
|
98
93
|
})];
|
|
99
94
|
case 5:
|
|
100
95
|
style = (_c.sent()).style;
|
|
101
|
-
|
|
96
|
+
codeStyle = style;
|
|
102
97
|
_c.label = 6;
|
|
103
98
|
case 6:
|
|
104
99
|
if (!options.i18n) return [3 /*break*/, 7];
|
|
@@ -118,7 +113,7 @@ function gen(options) {
|
|
|
118
113
|
dirName = i18n ? 'i18n' : 'default';
|
|
119
114
|
base = (0, path_1.resolve)(constant_1.GENERATORS_DIR, 'base');
|
|
120
115
|
configBase = (0, path_1.resolve)(constant_1.GENERATORS_DIR, 'config', dirName, 'base');
|
|
121
|
-
code = (0, path_1.resolve)(constant_1.GENERATORS_DIR, 'config', dirName,
|
|
116
|
+
code = (0, path_1.resolve)(constant_1.GENERATORS_DIR, 'config', dirName, codeStyle);
|
|
122
117
|
return [4 /*yield*/, (0, fs_extra_1.copy)(base, dest)];
|
|
123
118
|
case 10:
|
|
124
119
|
_c.sent();
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@varlet/cli",
|
|
3
|
-
"version": "2.0.0-alpha.
|
|
3
|
+
"version": "2.0.0-alpha.1664031123039",
|
|
4
4
|
"description": "cli of varlet",
|
|
5
5
|
"bin": {
|
|
6
6
|
"varlet-cli": "./lib/index.js"
|
|
@@ -32,10 +32,10 @@
|
|
|
32
32
|
"@babel/helper-plugin-utils": "^7.14.5",
|
|
33
33
|
"@babel/preset-env": "^7.14.8",
|
|
34
34
|
"@babel/preset-typescript": "^7.14.5",
|
|
35
|
-
"@varlet/icons": "2.0.0-alpha.
|
|
36
|
-
"@varlet/markdown-vite-plugin": "2.0.0-alpha.
|
|
37
|
-
"@varlet/shared": "2.0.0-alpha.
|
|
38
|
-
"@varlet/touch-emulator": "2.0.0-alpha.
|
|
35
|
+
"@varlet/icons": "2.0.0-alpha.1664031123039",
|
|
36
|
+
"@varlet/markdown-vite-plugin": "2.0.0-alpha.1664031123039",
|
|
37
|
+
"@varlet/shared": "2.0.0-alpha.1664031123039",
|
|
38
|
+
"@varlet/touch-emulator": "2.0.0-alpha.1664031123039",
|
|
39
39
|
"@vitejs/plugin-vue": "3.0.1",
|
|
40
40
|
"@vitejs/plugin-vue-jsx": "2.0.0",
|
|
41
41
|
"@vue/babel-plugin-jsx": "1.1.1",
|
|
@@ -79,10 +79,9 @@
|
|
|
79
79
|
"@types/semver": "^7.3.9"
|
|
80
80
|
},
|
|
81
81
|
"peerDependencies": {
|
|
82
|
-
"@varlet/touch-emulator": "2.0.0-alpha.
|
|
82
|
+
"@varlet/touch-emulator": "2.0.0-alpha.1664031123039",
|
|
83
83
|
"@vue/runtime-core": "3.2.16",
|
|
84
84
|
"@vue/test-utils": "^2.0.2",
|
|
85
|
-
"jsdom": "^20.0.0",
|
|
86
85
|
"clipboard": "^2.0.6",
|
|
87
86
|
"live-server": "^1.2.1",
|
|
88
87
|
"lodash-es": "^4.17.21",
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { defineComponent } from 'vue'
|
|
2
2
|
import { props } from './props'
|
|
3
|
-
import './<%-
|
|
3
|
+
import './<%- camelizeName %>.less'
|
|
4
4
|
|
|
5
5
|
export default defineComponent({
|
|
6
6
|
name: '<%- bigCamelizeNamespace + bigCamelizeName %>',
|
|
7
7
|
props,
|
|
8
8
|
setup(props, { slots }) {
|
|
9
9
|
return () => {
|
|
10
|
-
return <div>{ slots.default?.() }</div>
|
|
10
|
+
return <div class="<%- namespace %>-<%- kebabCaseName %>">{ slots.default?.() }</div>
|
|
11
11
|
}
|
|
12
12
|
},
|
|
13
13
|
})
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
<template>
|
|
2
|
-
<div class="
|
|
2
|
+
<div class="<%- namespace %>-<%- kebabCaseName %>"></div>
|
|
3
3
|
</template>
|
|
4
4
|
|
|
5
5
|
<script lang="ts">
|
|
@@ -13,5 +13,5 @@ export default defineComponent({
|
|
|
13
13
|
</script>
|
|
14
14
|
|
|
15
15
|
<style lang="less">
|
|
16
|
-
@import './<%-
|
|
16
|
+
@import './<%- camelizeName %>.less';
|
|
17
17
|
</style>
|
|
File without changes
|
|
@@ -2,7 +2,12 @@ import <%- bigCamelizeName %> from '..'
|
|
|
2
2
|
import { createApp } from 'vue'
|
|
3
3
|
import { mount } from '@vue/test-utils'
|
|
4
4
|
|
|
5
|
-
test('test <%- kebabCaseName %>
|
|
5
|
+
test('test <%- kebabCaseName %> plugin', () => {
|
|
6
6
|
const app = createApp({}).use(<%- bigCamelizeName %>)
|
|
7
7
|
expect(app.component(<%- bigCamelizeName %>.name)).toBeTruthy()
|
|
8
8
|
})
|
|
9
|
+
|
|
10
|
+
test('test <%- kebabCaseName %> snapshot', () => {
|
|
11
|
+
const wrapper = mount(<%- bigCamelizeName %>)
|
|
12
|
+
expect(wrapper.html()).toMatchSnapshot()
|
|
13
|
+
})
|
|
File without changes
|
|
@@ -1 +1,30 @@
|
|
|
1
|
-
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<svg width="138px" height="146px" viewBox="0 0 138 146" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
|
3
|
+
<title>编组 2备份 4</title>
|
|
4
|
+
<defs>
|
|
5
|
+
<linearGradient x1="42.6722626%" y1="13.5075845%" x2="58.7114688%" y2="100%" id="linearGradient-1">
|
|
6
|
+
<stop stop-color="#3999FF" offset="0%"></stop>
|
|
7
|
+
<stop stop-color="#8F28FB" offset="100%"></stop>
|
|
8
|
+
</linearGradient>
|
|
9
|
+
<linearGradient x1="50%" y1="15.5408894%" x2="50%" y2="100%" id="linearGradient-2">
|
|
10
|
+
<stop stop-color="#722DFA" offset="0%"></stop>
|
|
11
|
+
<stop stop-color="#21D4FD" offset="100%"></stop>
|
|
12
|
+
</linearGradient>
|
|
13
|
+
<linearGradient x1="50%" y1="0%" x2="50%" y2="100%" id="linearGradient-3">
|
|
14
|
+
<stop stop-color="#0DBBFA" offset="0%"></stop>
|
|
15
|
+
<stop stop-color="#2EF4D0" offset="100%"></stop>
|
|
16
|
+
</linearGradient>
|
|
17
|
+
<linearGradient x1="40.4455375%" y1="0%" x2="61.1107186%" y2="100%" id="linearGradient-4">
|
|
18
|
+
<stop stop-color="#54E7FA" offset="0%"></stop>
|
|
19
|
+
<stop stop-color="#3478FF" offset="100%"></stop>
|
|
20
|
+
</linearGradient>
|
|
21
|
+
</defs>
|
|
22
|
+
<g id="页面-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
|
|
23
|
+
<g id="编组-2备份-4">
|
|
24
|
+
<path d="M61.1454478,0 L80.8081453,0 C83.2200978,-4.36166956e-15 85.3680539,1.52588995 86.1620863,3.80339469 L133.110133,138.463395 C134.14103,141.420295 132.579697,144.653043 129.622797,145.683941 C129.022705,145.893158 128.391709,146 127.756192,146 L104.065574,146 L104.065574,146 L55.7915068,7.53660531 C54.7606091,4.57970533 56.3219425,1.34695661 59.2788425,0.316058965 C59.8789348,0.106841966 60.5099303,8.99852687e-15 61.1454478,0 Z" id="矩形备份-19" fill="url(#linearGradient-1)" transform="translate(94.450820, 73.000000) scale(-1, 1) translate(-94.450820, -73.000000) "></path>
|
|
25
|
+
<path d="M10.7758114,0.143137255 L28.2717621,0.143137255 C31.4003503,0.143137255 33.937707,2.67721101 33.9417574,5.8057966 L34.0758197,109.356863 L34.0758197,109.356863 L2.40368852,141.419608 L2.27081564,8.65664929 C2.26611457,3.95946985 6.0701199,0.147842583 10.7672993,0.143141514 C10.7701367,0.143138675 10.772974,0.143137255 10.7758114,0.143137255 Z" id="矩形备份-20" fill="url(#linearGradient-2)" transform="translate(18.169057, 70.781373) scale(-1, 1) translate(-18.169057, -70.781373) "></path>
|
|
26
|
+
<path d="M59.4954713,57.5193828 L80.5061701,57.5193828 C83.6322889,57.5193828 86.1686187,60.0496067 86.1761536,63.1757164 L86.440508,172.851892 C86.4456008,174.964841 85.2753699,176.905341 83.4041828,177.886788 L54.099775,193.257088 L54.099775,193.257088 L53.8254839,63.201341 C53.8188796,60.0698934 56.3520656,57.5259998 59.4835131,57.5193954 C59.4874992,57.519387 59.4914852,57.5193828 59.4954713,57.5193828 Z" id="矩形备份-21" fill="url(#linearGradient-3)" transform="translate(70.131148, 125.388235) rotate(-270.000000) translate(-70.131148, -125.388235) "></path>
|
|
27
|
+
<path d="M8.0988647,0 L27.7025748,0 C30.0859285,1.09876935e-16 32.2148633,1.49046324 33.0303471,3.72996343 L83.9352009,143.526025 L83.9352009,143.526025 L84.8360656,146 L57.1334908,146 C54.7501371,146 52.6212023,144.509537 51.8057185,142.270037 L2.77109236,7.61003657 C1.69963975,4.66758916 3.21638072,1.41368027 6.15882813,0.34222766 C6.78058382,0.115823698 7.43717075,1.89790805e-15 8.0988647,0 Z" id="矩形备份-22" fill="url(#linearGradient-4)"></path>
|
|
28
|
+
</g>
|
|
29
|
+
</g>
|
|
30
|
+
</svg>
|
|
@@ -1,11 +1,3 @@
|
|
|
1
|
-
<div class="varlet-introduce">
|
|
2
|
-
<div class="varlet-introduce__row">
|
|
3
|
-
<img class="varlet-introduce__image" src="../public/logo.svg" />
|
|
4
|
-
<div class="varlet-introduce__name">Basic UI</div>
|
|
5
|
-
</div>
|
|
6
|
-
<div class="varlet-introduce__des">一个组件库</div>
|
|
7
|
-
</div>
|
|
8
|
-
|
|
9
1
|
### 介绍
|
|
10
2
|
|
|
11
3
|
这里可以介绍一下组件库, 想写什么就写什么...
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
|
-
"name": "
|
|
2
|
+
"name": "@varlet/ui",
|
|
3
3
|
"version": "0.0.0",
|
|
4
|
-
"description": "A
|
|
4
|
+
"description": "A components library example",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"module": "es/index.js",
|
|
7
7
|
"typings": "types/index.d.ts",
|
|
@@ -18,6 +18,10 @@
|
|
|
18
18
|
"sideEffects": [
|
|
19
19
|
"es/**/style/*",
|
|
20
20
|
"lib/**/style/*",
|
|
21
|
+
"es/style.js",
|
|
22
|
+
"es/less.js",
|
|
23
|
+
"lib/style.js",
|
|
24
|
+
"lib/less.js",
|
|
21
25
|
"*.css",
|
|
22
26
|
"*.less"
|
|
23
27
|
],
|
|
@@ -33,7 +37,7 @@
|
|
|
33
37
|
"test": "varlet-cli jest",
|
|
34
38
|
"test:watch": "varlet-cli jest -w",
|
|
35
39
|
"test:watchAll": "varlet-cli jest -wa",
|
|
36
|
-
"create": "varlet-cli create
|
|
40
|
+
"create": "varlet-cli create"
|
|
37
41
|
},
|
|
38
42
|
"peerDependencies": {
|
|
39
43
|
"vue": "^3.2.0"
|
|
@@ -45,7 +49,7 @@
|
|
|
45
49
|
"@varlet/stylelint-config": "workspace:*",
|
|
46
50
|
"@varlet/touch-emulator": "workspace:*",
|
|
47
51
|
"@varlet/shared": "workspace:*",
|
|
48
|
-
"@vue/test-utils": "2.0.
|
|
52
|
+
"@vue/test-utils": "^2.0.2",
|
|
49
53
|
"clipboard": "^2.0.6",
|
|
50
54
|
"eslint": "^7.30.0",
|
|
51
55
|
"lint-staged": "^10.5.0",
|
|
@@ -76,6 +80,9 @@
|
|
|
76
80
|
"site/**",
|
|
77
81
|
"public/**",
|
|
78
82
|
"src/*/__tests__/**",
|
|
83
|
+
"coverage/**",
|
|
84
|
+
"highlight/**",
|
|
85
|
+
"types/index.d.ts",
|
|
79
86
|
".varlet/**"
|
|
80
87
|
],
|
|
81
88
|
"extends": [
|
|
@@ -98,7 +105,7 @@
|
|
|
98
105
|
]
|
|
99
106
|
},
|
|
100
107
|
"browserslist": [
|
|
101
|
-
"Chrome >=
|
|
108
|
+
"Chrome >= 54",
|
|
102
109
|
"iOS >= 10"
|
|
103
110
|
],
|
|
104
111
|
"packageManager": "pnpm@7.9.0"
|
|
@@ -1,71 +1,11 @@
|
|
|
1
1
|
module.exports = {
|
|
2
|
-
name: 'Basic',
|
|
3
|
-
namespace: 'b',
|
|
4
|
-
title: 'Basic UI',
|
|
5
2
|
logo: './logo.svg',
|
|
6
3
|
useMobile: true,
|
|
7
|
-
themes: {
|
|
8
|
-
'color-body': '#fff',
|
|
9
|
-
'color-bar': '#fff',
|
|
10
|
-
'color-sub-bar': '#f5f5f5',
|
|
11
|
-
'color-text': '#555',
|
|
12
|
-
'color-sub-text': '#888',
|
|
13
|
-
'color-border': 'rgba(0, 0, 0, 0.12)',
|
|
14
|
-
'color-shadow': '#eee',
|
|
15
|
-
'color-introduce-border': '#009688',
|
|
16
|
-
'color-primary': '#009688',
|
|
17
|
-
'color-link': '#009688',
|
|
18
|
-
'color-type': '#009688',
|
|
19
|
-
'color-progress': '#009688',
|
|
20
|
-
'color-progress-track': '#fff',
|
|
21
|
-
'color-side-bar': '#009688',
|
|
22
|
-
'color-side-bar-active-background': '#00968821',
|
|
23
|
-
'color-app-bar': '#009688',
|
|
24
|
-
'color-nav-button-hover-background': 'rgba(0, 0, 0, 0.08)',
|
|
25
|
-
'color-pc-language-active': '#009688',
|
|
26
|
-
'color-pc-language-active-background': '#00968821',
|
|
27
|
-
'color-mobile-language-active': '#009688',
|
|
28
|
-
'color-mobile-language-active-background': '#00968821',
|
|
29
|
-
'color-mobile-cell-hover': '#009688',
|
|
30
|
-
},
|
|
31
|
-
darkThemes: {
|
|
32
|
-
'color-body': '#121212',
|
|
33
|
-
'color-bar': '#1e1e1e',
|
|
34
|
-
'color-sub-bar': '#272727',
|
|
35
|
-
'color-text': '#fff',
|
|
36
|
-
'color-sub-text': '#aaa',
|
|
37
|
-
'color-border': '#333',
|
|
38
|
-
'color-shadow': '#121212',
|
|
39
|
-
'color-introduce-border': '#555',
|
|
40
|
-
'color-primary': '#009688',
|
|
41
|
-
'color-link': '#009688',
|
|
42
|
-
'color-type': '#009688',
|
|
43
|
-
'color-progress': '#009688',
|
|
44
|
-
'color-progress-track': '#202020',
|
|
45
|
-
'color-side-bar': '#009688',
|
|
46
|
-
'color-side-bar-active-background': '#00968821',
|
|
47
|
-
'color-app-bar': '#009688',
|
|
48
|
-
'color-nav-button-hover-background': 'rgba(255, 255, 255, 0.08)',
|
|
49
|
-
'color-pc-language-active': '#009688',
|
|
50
|
-
'color-pc-language-active-background': '#00968821',
|
|
51
|
-
'color-mobile-language-active': '#009688',
|
|
52
|
-
'color-mobile-language-active-background': '#00968821',
|
|
53
|
-
'color-mobile-cell-hover': '#009688',
|
|
54
|
-
},
|
|
55
|
-
highlight: {
|
|
56
|
-
style: './highlight.css',
|
|
57
|
-
},
|
|
58
4
|
pc: {
|
|
59
|
-
redirect: '/home',
|
|
60
|
-
title: {
|
|
61
|
-
'zh-CN': '一个组件库',
|
|
62
|
-
},
|
|
63
5
|
header: {
|
|
64
6
|
darkMode: null,
|
|
65
|
-
versions: null,
|
|
66
7
|
i18n: null,
|
|
67
8
|
playground: null,
|
|
68
|
-
github: 'https://github.com/varletjs/varlet',
|
|
69
9
|
},
|
|
70
10
|
menu: [
|
|
71
11
|
{
|
|
@@ -97,14 +37,9 @@ module.exports = {
|
|
|
97
37
|
],
|
|
98
38
|
},
|
|
99
39
|
mobile: {
|
|
100
|
-
redirect: '/home',
|
|
101
|
-
title: {
|
|
102
|
-
'zh-CN': '一个组件库',
|
|
103
|
-
},
|
|
104
40
|
header: {
|
|
105
41
|
i18n: null,
|
|
106
42
|
darkMode: null,
|
|
107
|
-
github: 'https://github.com/varletjs/varlet',
|
|
108
43
|
},
|
|
109
44
|
},
|
|
110
45
|
}
|
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
<template>
|
|
2
|
-
<button class="
|
|
2
|
+
<button class="var-button" :style="{ background: color }">
|
|
3
3
|
<slot />
|
|
4
4
|
</button>
|
|
5
5
|
</template>
|
|
6
6
|
|
|
7
7
|
<script lang="ts">
|
|
8
8
|
import { defineComponent, PropType } from 'vue'
|
|
9
|
+
|
|
9
10
|
export default defineComponent({
|
|
10
|
-
name: '
|
|
11
|
+
name: 'VarButton',
|
|
11
12
|
props: {
|
|
12
13
|
color: {
|
|
13
14
|
type: String,
|
|
@@ -1,17 +1,8 @@
|
|
|
1
1
|
# 按钮
|
|
2
2
|
|
|
3
|
-
### 引入
|
|
4
|
-
|
|
5
|
-
```js
|
|
6
|
-
import { createApp } from 'vue'
|
|
7
|
-
import { Button } from 'basic-ui'
|
|
8
|
-
|
|
9
|
-
createApp().use(Button)
|
|
10
|
-
```
|
|
11
|
-
|
|
12
3
|
### 基本使用
|
|
13
4
|
```html
|
|
14
|
-
<
|
|
5
|
+
<var-button>组件库从我开始</var-button>
|
|
15
6
|
```
|
|
16
7
|
|
|
17
8
|
```vue
|
|
@@ -20,7 +11,7 @@ import BasicUse from '../example/BasicUse'
|
|
|
20
11
|
|
|
21
12
|
### 主题色按钮
|
|
22
13
|
```html
|
|
23
|
-
<
|
|
14
|
+
<var-button color="#009688">组件库从我开始</var-button>
|
|
24
15
|
```
|
|
25
16
|
|
|
26
17
|
```vue
|