@icebreakers/monorepo 0.6.0 → 0.6.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.
- package/dist/{chunk-G24QWDPQ.js → chunk-R6F2U4ML.js} +12 -4
- package/dist/cli.cjs +14 -3
- package/dist/cli.js +6 -1
- package/dist/index.cjs +12 -3
- package/dist/index.d.cts +2 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.js +3 -1
- package/package.json +3 -2
- package/templates/bar/package.json +45 -0
- package/templates/bar/src/index.ts +17 -0
- package/templates/bar/test/index.test.ts +7 -0
- package/templates/bar/tsconfig.json +15 -0
- package/templates/bar/tsup.config.ts +13 -0
- package/templates/bar/vitest.config.ts +15 -0
|
@@ -13,7 +13,7 @@ import set from "set-value";
|
|
|
13
13
|
|
|
14
14
|
// package.json
|
|
15
15
|
var name = "@icebreakers/monorepo";
|
|
16
|
-
var version = "0.6.
|
|
16
|
+
var version = "0.6.1";
|
|
17
17
|
|
|
18
18
|
// src/logger.ts
|
|
19
19
|
import { createConsola } from "consola";
|
|
@@ -96,7 +96,7 @@ var scripts = {
|
|
|
96
96
|
var scriptsEntries = Object.entries(scripts);
|
|
97
97
|
|
|
98
98
|
// src/targets.ts
|
|
99
|
-
function
|
|
99
|
+
function getAssetTargets(raw) {
|
|
100
100
|
const list = [
|
|
101
101
|
".changeset",
|
|
102
102
|
".husky",
|
|
@@ -147,6 +147,7 @@ var queue = new PQueue({ concurrency: 1 });
|
|
|
147
147
|
var __filename2 = fileURLToPath(import.meta.url);
|
|
148
148
|
var __dirname2 = path.dirname(__filename2);
|
|
149
149
|
var assetsDir = path.join(__dirname2, "../assets");
|
|
150
|
+
var templatesDir = path.join(__dirname2, "../templates");
|
|
150
151
|
var cwd = process.cwd();
|
|
151
152
|
function setPkgJson(sourcePkgJson, targetPkgJson) {
|
|
152
153
|
const packageManager = get2(sourcePkgJson, "packageManager", { default: "" });
|
|
@@ -177,7 +178,7 @@ async function main(opts) {
|
|
|
177
178
|
baseDir: cwd
|
|
178
179
|
});
|
|
179
180
|
const repoName = await gitClient.getRepoName();
|
|
180
|
-
let targets =
|
|
181
|
+
let targets = getAssetTargets(raw);
|
|
181
182
|
if (interactive) {
|
|
182
183
|
targets = await checkbox({
|
|
183
184
|
message: "\u9009\u62E9\u4F60\u9700\u8981\u7684\u6587\u4EF6",
|
|
@@ -248,6 +249,12 @@ async function main(opts) {
|
|
|
248
249
|
});
|
|
249
250
|
}
|
|
250
251
|
}
|
|
252
|
+
async function createNewProject(name2) {
|
|
253
|
+
const defaultTemplate = "bar";
|
|
254
|
+
const targetTemplate = name2 ?? defaultTemplate;
|
|
255
|
+
await fs.copy(path.join(templatesDir, defaultTemplate), path.join(cwd, targetTemplate));
|
|
256
|
+
logger.success(`${targetTemplate} \u9879\u76EE\u521B\u5EFA\u6210\u529F\uFF01`);
|
|
257
|
+
}
|
|
251
258
|
|
|
252
259
|
export {
|
|
253
260
|
name,
|
|
@@ -255,5 +262,6 @@ export {
|
|
|
255
262
|
logger,
|
|
256
263
|
GitClient,
|
|
257
264
|
setPkgJson,
|
|
258
|
-
main
|
|
265
|
+
main,
|
|
266
|
+
createNewProject
|
|
259
267
|
};
|
package/dist/cli.cjs
CHANGED
|
@@ -32,7 +32,7 @@ var import_commander = require("commander");
|
|
|
32
32
|
|
|
33
33
|
// package.json
|
|
34
34
|
var name = "@icebreakers/monorepo";
|
|
35
|
-
var version = "0.6.
|
|
35
|
+
var version = "0.6.1";
|
|
36
36
|
|
|
37
37
|
// src/lib.ts
|
|
38
38
|
var import_node_process = __toESM(require("process"), 1);
|
|
@@ -128,7 +128,7 @@ var scripts = {
|
|
|
128
128
|
var scriptsEntries = Object.entries(scripts);
|
|
129
129
|
|
|
130
130
|
// src/targets.ts
|
|
131
|
-
function
|
|
131
|
+
function getAssetTargets(raw) {
|
|
132
132
|
const list = [
|
|
133
133
|
".changeset",
|
|
134
134
|
".husky",
|
|
@@ -179,6 +179,7 @@ var queue = new import_p_queue.default({ concurrency: 1 });
|
|
|
179
179
|
var __filename2 = (0, import_node_url.fileURLToPath)(importMetaUrl);
|
|
180
180
|
var __dirname = import_pathe.default.dirname(__filename2);
|
|
181
181
|
var assetsDir = import_pathe.default.join(__dirname, "../assets");
|
|
182
|
+
var templatesDir = import_pathe.default.join(__dirname, "../templates");
|
|
182
183
|
var cwd = import_node_process.default.cwd();
|
|
183
184
|
function setPkgJson(sourcePkgJson, targetPkgJson) {
|
|
184
185
|
const packageManager = (0, import_get_value2.default)(sourcePkgJson, "packageManager", { default: "" });
|
|
@@ -209,7 +210,7 @@ async function main(opts) {
|
|
|
209
210
|
baseDir: cwd
|
|
210
211
|
});
|
|
211
212
|
const repoName = await gitClient.getRepoName();
|
|
212
|
-
let targets =
|
|
213
|
+
let targets = getAssetTargets(raw);
|
|
213
214
|
if (interactive) {
|
|
214
215
|
targets = await (0, import_checkbox.default)({
|
|
215
216
|
message: "\u9009\u62E9\u4F60\u9700\u8981\u7684\u6587\u4EF6",
|
|
@@ -280,6 +281,12 @@ async function main(opts) {
|
|
|
280
281
|
});
|
|
281
282
|
}
|
|
282
283
|
}
|
|
284
|
+
async function createNewProject(name2) {
|
|
285
|
+
const defaultTemplate = "bar";
|
|
286
|
+
const targetTemplate = name2 ?? defaultTemplate;
|
|
287
|
+
await import_fs_extra.default.copy(import_pathe.default.join(templatesDir, defaultTemplate), import_pathe.default.join(cwd, targetTemplate));
|
|
288
|
+
logger.success(`${targetTemplate} \u9879\u76EE\u521B\u5EFA\u6210\u529F\uFF01`);
|
|
289
|
+
}
|
|
283
290
|
|
|
284
291
|
// src/monorepo/binaryMirror.ts
|
|
285
292
|
var import_comment_json = require("comment-json");
|
|
@@ -508,6 +515,10 @@ import_commander.program.command("mirror").action(async () => {
|
|
|
508
515
|
await setVscodeBinaryMirror(cwd2);
|
|
509
516
|
logger.success("set vscode binary mirror finished!");
|
|
510
517
|
});
|
|
518
|
+
import_commander.program.command("new").argument("[name]").action(async (targetPath) => {
|
|
519
|
+
await createNewProject(targetPath);
|
|
520
|
+
logger.success("create a package");
|
|
521
|
+
});
|
|
511
522
|
var program_default = import_commander.program;
|
|
512
523
|
|
|
513
524
|
// src/cli.ts
|
package/dist/cli.js
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import {
|
|
2
2
|
GitClient,
|
|
3
|
+
createNewProject,
|
|
3
4
|
logger,
|
|
4
5
|
main,
|
|
5
6
|
name,
|
|
6
7
|
version
|
|
7
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-R6F2U4ML.js";
|
|
8
9
|
|
|
9
10
|
// src/program.ts
|
|
10
11
|
import process from "node:process";
|
|
@@ -237,6 +238,10 @@ program.command("mirror").action(async () => {
|
|
|
237
238
|
await setVscodeBinaryMirror(cwd);
|
|
238
239
|
logger.success("set vscode binary mirror finished!");
|
|
239
240
|
});
|
|
241
|
+
program.command("new").argument("[name]").action(async (targetPath) => {
|
|
242
|
+
await createNewProject(targetPath);
|
|
243
|
+
logger.success("create a package");
|
|
244
|
+
});
|
|
240
245
|
var program_default = program;
|
|
241
246
|
|
|
242
247
|
// src/cli.ts
|
package/dist/index.cjs
CHANGED
|
@@ -30,6 +30,7 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
|
|
|
30
30
|
// src/index.ts
|
|
31
31
|
var src_exports = {};
|
|
32
32
|
__export(src_exports, {
|
|
33
|
+
createNewProject: () => createNewProject,
|
|
33
34
|
main: () => main,
|
|
34
35
|
setPkgJson: () => setPkgJson
|
|
35
36
|
});
|
|
@@ -53,7 +54,7 @@ var import_picocolors = __toESM(require("picocolors"), 1);
|
|
|
53
54
|
var import_set_value = __toESM(require("set-value"), 1);
|
|
54
55
|
|
|
55
56
|
// package.json
|
|
56
|
-
var version = "0.6.
|
|
57
|
+
var version = "0.6.1";
|
|
57
58
|
|
|
58
59
|
// src/logger.ts
|
|
59
60
|
var import_consola = require("consola");
|
|
@@ -136,7 +137,7 @@ var scripts = {
|
|
|
136
137
|
var scriptsEntries = Object.entries(scripts);
|
|
137
138
|
|
|
138
139
|
// src/targets.ts
|
|
139
|
-
function
|
|
140
|
+
function getAssetTargets(raw) {
|
|
140
141
|
const list = [
|
|
141
142
|
".changeset",
|
|
142
143
|
".husky",
|
|
@@ -187,6 +188,7 @@ var queue = new import_p_queue.default({ concurrency: 1 });
|
|
|
187
188
|
var __filename2 = (0, import_node_url.fileURLToPath)(importMetaUrl);
|
|
188
189
|
var __dirname = import_pathe.default.dirname(__filename2);
|
|
189
190
|
var assetsDir = import_pathe.default.join(__dirname, "../assets");
|
|
191
|
+
var templatesDir = import_pathe.default.join(__dirname, "../templates");
|
|
190
192
|
var cwd = import_node_process.default.cwd();
|
|
191
193
|
function setPkgJson(sourcePkgJson, targetPkgJson) {
|
|
192
194
|
const packageManager = (0, import_get_value2.default)(sourcePkgJson, "packageManager", { default: "" });
|
|
@@ -217,7 +219,7 @@ async function main(opts) {
|
|
|
217
219
|
baseDir: cwd
|
|
218
220
|
});
|
|
219
221
|
const repoName = await gitClient.getRepoName();
|
|
220
|
-
let targets =
|
|
222
|
+
let targets = getAssetTargets(raw);
|
|
221
223
|
if (interactive) {
|
|
222
224
|
targets = await (0, import_checkbox.default)({
|
|
223
225
|
message: "\u9009\u62E9\u4F60\u9700\u8981\u7684\u6587\u4EF6",
|
|
@@ -288,8 +290,15 @@ async function main(opts) {
|
|
|
288
290
|
});
|
|
289
291
|
}
|
|
290
292
|
}
|
|
293
|
+
async function createNewProject(name) {
|
|
294
|
+
const defaultTemplate = "bar";
|
|
295
|
+
const targetTemplate = name ?? defaultTemplate;
|
|
296
|
+
await import_fs_extra.default.copy(import_pathe.default.join(templatesDir, defaultTemplate), import_pathe.default.join(cwd, targetTemplate));
|
|
297
|
+
logger.success(`${targetTemplate} \u9879\u76EE\u521B\u5EFA\u6210\u529F\uFF01`);
|
|
298
|
+
}
|
|
291
299
|
// Annotate the CommonJS export names for ESM import in node:
|
|
292
300
|
0 && (module.exports = {
|
|
301
|
+
createNewProject,
|
|
293
302
|
main,
|
|
294
303
|
setPkgJson
|
|
295
304
|
});
|
package/dist/index.d.cts
CHANGED
|
@@ -8,5 +8,6 @@ interface CliOpts {
|
|
|
8
8
|
|
|
9
9
|
declare function setPkgJson(sourcePkgJson: PackageJson, targetPkgJson: PackageJson): void;
|
|
10
10
|
declare function main(opts: CliOpts): Promise<void>;
|
|
11
|
+
declare function createNewProject(name?: string): Promise<void>;
|
|
11
12
|
|
|
12
|
-
export { main, setPkgJson };
|
|
13
|
+
export { createNewProject, main, setPkgJson };
|
package/dist/index.d.ts
CHANGED
|
@@ -8,5 +8,6 @@ interface CliOpts {
|
|
|
8
8
|
|
|
9
9
|
declare function setPkgJson(sourcePkgJson: PackageJson, targetPkgJson: PackageJson): void;
|
|
10
10
|
declare function main(opts: CliOpts): Promise<void>;
|
|
11
|
+
declare function createNewProject(name?: string): Promise<void>;
|
|
11
12
|
|
|
12
|
-
export { main, setPkgJson };
|
|
13
|
+
export { createNewProject, main, setPkgJson };
|
package/dist/index.js
CHANGED
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@icebreakers/monorepo",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.6.
|
|
4
|
+
"version": "0.6.1",
|
|
5
5
|
"description": "icebreaker's monorepo config generator",
|
|
6
6
|
"author": "ice breaker <1324318532@qq.com>",
|
|
7
7
|
"license": "MIT",
|
|
@@ -30,7 +30,8 @@
|
|
|
30
30
|
"files": [
|
|
31
31
|
"assets",
|
|
32
32
|
"bin",
|
|
33
|
-
"dist"
|
|
33
|
+
"dist",
|
|
34
|
+
"templates"
|
|
34
35
|
],
|
|
35
36
|
"dependencies": {
|
|
36
37
|
"@inquirer/checkbox": "^4.0.0",
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@icebreakers/bar",
|
|
3
|
+
"type": "module",
|
|
4
|
+
"version": "0.1.2",
|
|
5
|
+
"description": "tsup(esbuild) build package template",
|
|
6
|
+
"author": "ice breaker <1324318532@qq.com>",
|
|
7
|
+
"license": "MIT",
|
|
8
|
+
"repository": {
|
|
9
|
+
"type": "git",
|
|
10
|
+
"url": "git+https://github.com/sonofmagic/monorepo-template.git",
|
|
11
|
+
"directory": "packages/bar"
|
|
12
|
+
},
|
|
13
|
+
"bugs": {
|
|
14
|
+
"url": "https://github.com/sonofmagic/monorepo-template/issues"
|
|
15
|
+
},
|
|
16
|
+
"keywords": [],
|
|
17
|
+
"sideEffects": false,
|
|
18
|
+
"exports": {
|
|
19
|
+
".": "./src/index.ts"
|
|
20
|
+
},
|
|
21
|
+
"files": [
|
|
22
|
+
"dist"
|
|
23
|
+
],
|
|
24
|
+
"scripts": {
|
|
25
|
+
"dev": "tsup --watch --sourcemap",
|
|
26
|
+
"build": "tsup",
|
|
27
|
+
"test": "vitest run",
|
|
28
|
+
"test:dev": "vitest",
|
|
29
|
+
"release": "pnpm publish",
|
|
30
|
+
"lint": "eslint .",
|
|
31
|
+
"lint:fix": "eslint . --fix"
|
|
32
|
+
},
|
|
33
|
+
"publishConfig": {
|
|
34
|
+
"exports": {
|
|
35
|
+
".": {
|
|
36
|
+
"types": "./dist/index.d.ts",
|
|
37
|
+
"import": "./dist/index.js",
|
|
38
|
+
"require": "./dist/index.cjs"
|
|
39
|
+
}
|
|
40
|
+
},
|
|
41
|
+
"main": "./dist/index.cjs",
|
|
42
|
+
"module": "./dist/index.js",
|
|
43
|
+
"types": "./dist/index.d.ts"
|
|
44
|
+
}
|
|
45
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export function bar() {
|
|
2
|
+
return 'foo'
|
|
3
|
+
}
|
|
4
|
+
// import __cjs_url__ from 'url';
|
|
5
|
+
// import __cjs_path__ from 'path';
|
|
6
|
+
// import __cjs_mod__ from 'module';
|
|
7
|
+
// const __filename = __cjs_url__.fileURLToPath(import.meta.url);
|
|
8
|
+
// const __dirname = __cjs_path__.dirname(__filename);
|
|
9
|
+
// const require = __cjs_mod__.createRequire(import.meta.url);
|
|
10
|
+
export function getDirname() {
|
|
11
|
+
return __dirname
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
export enum xx {
|
|
15
|
+
id,
|
|
16
|
+
dd,
|
|
17
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { defineConfig } from 'tsup'
|
|
2
|
+
|
|
3
|
+
export default defineConfig({
|
|
4
|
+
entry: ['src/index.ts'], // , 'src/cli.ts'],
|
|
5
|
+
shims: true,
|
|
6
|
+
format: ['cjs', 'esm'],
|
|
7
|
+
clean: true,
|
|
8
|
+
dts: true,
|
|
9
|
+
// https://github.com/egoist/tsup/pull/1056
|
|
10
|
+
// https://github.com/egoist/tsup/issues?q=cjsInterop
|
|
11
|
+
// cjsInterop: true,
|
|
12
|
+
// splitting: true,
|
|
13
|
+
})
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import path from 'node:path'
|
|
2
|
+
import { defineProject } from 'vitest/config'
|
|
3
|
+
|
|
4
|
+
export default defineProject({
|
|
5
|
+
test: {
|
|
6
|
+
alias: [
|
|
7
|
+
{
|
|
8
|
+
find: '@',
|
|
9
|
+
replacement: path.resolve(__dirname, './src'),
|
|
10
|
+
},
|
|
11
|
+
],
|
|
12
|
+
globals: true,
|
|
13
|
+
testTimeout: 60_000,
|
|
14
|
+
},
|
|
15
|
+
})
|