zile 0.0.7 → 0.0.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 CHANGED
@@ -305,6 +305,37 @@ Zile also sets these fields if not already present:
305
305
  - **`type`**: Set to `"module"` (ESM-only)
306
306
  - **`sideEffects`**: Set to `false`
307
307
 
308
+ ### `[!start-pkg]`
309
+
310
+ The `[!start-pkg]` comment marker allows you to control which fields from your `package.json` are included when publishing.
311
+
312
+ When using `zile publish:prepare`, only fields that appear **after** the `[!start-pkg]` comment will be picked for the published package. This is useful for excluding development-only fields (like `devDependencies`, `scripts`, or workspace configurations) from the published package.
313
+
314
+ #### Example
315
+
316
+ ```diff
317
+ {
318
+ "scripts": {
319
+ "build": "zile build",
320
+ "publish": "zile publish:prepare && npm publish && zile publish:post",
321
+ "test": "vitest"
322
+ },
323
+ "devDependencies": {
324
+ "typescript": "^5.0.0"
325
+ },
326
+ + "[!start-pkg]": "",
327
+ "name": "my-pkg",
328
+ "version": "0.0.0",
329
+ "type": "module",
330
+ "main": "./src/index.ts",
331
+ "dependencies": {
332
+ "some-lib": "^1.0.0"
333
+ }
334
+ }
335
+ ```
336
+
337
+ In this example, when running `zile publish:prepare`, only the fields after `[!start-pkg]` (type, main, and dependencies) will be included in the published package. The scripts and devDependencies will be excluded.
338
+
308
339
  ## `tsconfig.json` Reference
309
340
 
310
341
  Since `tsc` is used under the hood, Zile also uses fields in your `tsconfig.json` file to determine the output directory and particular settings for transpilation.
@@ -334,14 +365,20 @@ Usage:
334
365
  $ zile [root]
335
366
 
336
367
  Commands:
337
- [root]
338
- build Build package
339
- dev Resolve package exports to source for development
368
+ [root]
369
+ build Build package
370
+ dev Resolve package exports to source for development
371
+ new Create a new zile project
372
+ publish:prepare Prepare package for publishing
373
+ publish:post Post-process package after publishing
340
374
 
341
375
  For more info, run any command with the `--help` flag:
342
376
  $ zile --help
343
377
  $ zile build --help
344
378
  $ zile dev --help
379
+ $ zile new --help
380
+ $ zile publish:prepare --help
381
+ $ zile publish:post --help
345
382
 
346
383
  Options:
347
384
  --cwd <directory> Working directory to build
@@ -349,7 +386,7 @@ Options:
349
386
  --project <path> Path to tsconfig.json file, relative to the working directory.
350
387
  --tsgo Use tsgo for transpilation
351
388
  -v, --version Display version number
352
- -h, --help Display this message
389
+ -h, --help Display this message
353
390
  ```
354
391
 
355
392
  ## License
package/dist/Cli.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Cli.d.ts","sourceRoot":"","sources":["../src/Cli.ts"],"names":[],"mappings":";AAKA;;;;;GAKG;AACH,wBAAsB,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAc7D;AAED,MAAM,CAAC,OAAO,WAAW,GAAG,CAAC;IAC3B,KAAK,OAAO,GAAG;QACb,sCAAsC;QACtC,IAAI,EAAE,MAAM,EAAE,CAAA;KACf,CAAA;CACF"}
1
+ {"version":3,"file":"Cli.d.ts","sourceRoot":"","sources":["../src/Cli.ts"],"names":[],"mappings":";AAKA;;;;;GAKG;AACH,wBAAsB,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAiB7D;AAED,MAAM,CAAC,OAAO,WAAW,GAAG,CAAC;IAC3B,KAAK,OAAO,GAAG;QACb,sCAAsC;QACtC,IAAI,EAAE,MAAM,EAAE,CAAA;KACf,CAAA;CACF"}
package/dist/Cli.js CHANGED
@@ -17,6 +17,9 @@ export async function run(options) {
17
17
  commands.build(cli.command('dev', 'Resolve package exports to source for development'), {
18
18
  link: true,
19
19
  });
20
+ commands.createNew(cli.command('new', 'Create a new zile project'));
21
+ commands.preparePublish(cli.command('publish:prepare', 'Prepare package for publishing'));
22
+ commands.postPublish(cli.command('publish:post', 'Post-process package after publishing'));
20
23
  cli.help();
21
24
  cli.parse(args);
22
25
  }
package/dist/Cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Cli.js","sourceRoot":"","sources":["../src/Cli.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAA;AACzB,OAAO,KAAK,QAAQ,MAAM,4BAA4B,CAAA;AACtD,OAAO,OAAO,MAAM,yBAAyB,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,CAAA;AAEnE;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,GAAG,CAAC,OAAoB;IAC5C,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAA;IAExB,MAAM,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;IAC7B,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;IAE5B,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAA;IACzC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC,CAAA;IACrD,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,mDAAmD,CAAC,EAAE;QACtF,IAAI,EAAE,IAAI;KACX,CAAC,CAAA;IAEF,GAAG,CAAC,IAAI,EAAE,CAAA;IACV,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;AACjB,CAAC;AASD,GAAG,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IAC1C,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;IACpB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AACjB,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"Cli.js","sourceRoot":"","sources":["../src/Cli.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAA;AACzB,OAAO,KAAK,QAAQ,MAAM,4BAA4B,CAAA;AACtD,OAAO,OAAO,MAAM,yBAAyB,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,CAAA;AAEnE;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,GAAG,CAAC,OAAoB;IAC5C,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAA;IAExB,MAAM,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;IAC7B,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;IAE5B,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAA;IACzC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC,CAAA;IACrD,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,mDAAmD,CAAC,EAAE;QACtF,IAAI,EAAE,IAAI;KACX,CAAC,CAAA;IACF,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,2BAA2B,CAAC,CAAC,CAAA;IACnE,QAAQ,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,iBAAiB,EAAE,gCAAgC,CAAC,CAAC,CAAA;IACzF,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,cAAc,EAAE,uCAAuC,CAAC,CAAC,CAAA;IAE1F,GAAG,CAAC,IAAI,EAAE,CAAA;IACV,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;AACjB,CAAC;AASD,GAAG,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IAC1C,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;IACpB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AACjB,CAAC,CAAC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"Package.d.ts","sourceRoot":"","sources":["../src/Package.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Package.d.ts","sourceRoot":"","sources":["../src/Package.ts"],"names":[],"mappings":"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"}
package/dist/Package.js CHANGED
@@ -327,6 +327,7 @@ export function getSourceDir(options) {
327
327
  const commonSegments = [];
328
328
  const minLength = Math.min(...segments.map((s) => s.length));
329
329
  for (let i = 0; i < minLength; i++) {
330
+ // biome-ignore lint/style/noNonNullAssertion: _
330
331
  const segment = segments[0][i];
331
332
  if (segments.every((s) => s[i] === segment))
332
333
  commonSegments.push(segment);
@@ -334,6 +335,7 @@ export function getSourceDir(options) {
334
335
  break;
335
336
  }
336
337
  const commonPath = commonSegments.join(path.sep);
338
+ // biome-ignore lint/style/noNonNullAssertion: _
337
339
  return path.resolve(cwd, path.relative(cwd, commonPath).split(path.sep)[0]);
338
340
  }
339
341
  /**
@@ -393,6 +395,7 @@ export async function transpile(options) {
393
395
  ...tsConfigJson.compilerOptions,
394
396
  composite: false,
395
397
  declaration: true,
398
+ // biome-ignore lint/style/noNonNullAssertion: _
396
399
  declarationDir: tsConfigJson.compilerOptions?.declarationDir,
397
400
  declarationMap: true,
398
401
  emitDeclarationOnly: false,
@@ -454,6 +457,7 @@ export function detectIndent(content) {
454
457
  for (const line of lines) {
455
458
  const match = line.match(/^(\s+)/);
456
459
  if (match) {
460
+ // biome-ignore lint/style/noNonNullAssertion: _
457
461
  const indent = match[1];
458
462
  // If it starts with a tab, use tabs
459
463
  if (indent[0] === '\t')
@@ -1 +1 @@
1
- {"version":3,"file":"Package.js","sourceRoot":"","sources":["../src/Package.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Package.js","sourceRoot":"","sources":["../src/Package.ts"],"names":[],"mappings":"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"}
@@ -14,4 +14,24 @@ export declare namespace build {
14
14
  tsgo?: boolean | undefined;
15
15
  };
16
16
  }
17
+ export declare function preparePublish(command: Command): Promise<Command>;
18
+ export declare namespace preparePublish {
19
+ type CommandOptions = build.CommandOptions;
20
+ }
21
+ export declare function postPublish(command: Command): Promise<Command>;
22
+ export declare namespace postPublish {
23
+ type CommandOptions = {
24
+ /** Working directory to publish from */
25
+ cwd?: string | undefined;
26
+ };
27
+ }
28
+ export declare function createNew(command: Command): Promise<Command>;
29
+ export declare namespace createNew {
30
+ type CommandOptions = {
31
+ /** Use pnpm as package manager */
32
+ pnpm?: boolean | undefined;
33
+ /** Use bun as package manager */
34
+ bun?: boolean | undefined;
35
+ };
36
+ }
17
37
  //# sourceMappingURL=commands.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../../../src/internal/cli/commands.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,KAAK,CAAA;AAGlC,wBAAsB,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,GAAE,KAAK,CAAC,OAAY,oBAiBxE;AAED,MAAM,CAAC,OAAO,WAAW,KAAK,CAAC;IAC7B,KAAK,OAAO,GAAG;QACb,mEAAmE;QACnE,IAAI,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;KAC3B,CAAA;IAED,KAAK,cAAc,GAAG;QACpB,iCAAiC;QACjC,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QACxB,gGAAgG;QAChG,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QAC5B,iCAAiC;QACjC,IAAI,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;KAC3B,CAAA;CACF"}
1
+ {"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../../../src/internal/cli/commands.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,KAAK,CAAA;AAGlC,wBAAsB,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,GAAE,KAAK,CAAC,OAAY,oBAiBxE;AAED,MAAM,CAAC,OAAO,WAAW,KAAK,CAAC;IAC7B,KAAK,OAAO,GAAG;QACb,mEAAmE;QACnE,IAAI,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;KAC3B,CAAA;IAED,KAAK,cAAc,GAAG;QACpB,iCAAiC;QACjC,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QACxB,gGAAgG;QAChG,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QAC5B,iCAAiC;QACjC,IAAI,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;KAC3B,CAAA;CACF;AAED,wBAAsB,cAAc,CAAC,OAAO,EAAE,OAAO,oBAkCpD;AAED,MAAM,CAAC,OAAO,WAAW,cAAc,CAAC;IACtC,KAAK,cAAc,GAAG,KAAK,CAAC,cAAc,CAAA;CAC3C;AAED,wBAAsB,WAAW,CAAC,OAAO,EAAE,OAAO,oBAUjD;AAED,MAAM,CAAC,OAAO,WAAW,WAAW,CAAC;IACnC,KAAK,cAAc,GAAG;QACpB,wCAAwC;QACxC,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;KACzB,CAAA;CACF;AAED,wBAAsB,SAAS,CAAC,OAAO,EAAE,OAAO,oBAmI/C;AAED,MAAM,CAAC,OAAO,WAAW,SAAS,CAAC;IACjC,KAAK,cAAc,GAAG;QACpB,kCAAkC;QAClC,IAAI,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;QAC1B,iCAAiC;QACjC,GAAG,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;KAC1B,CAAA;CACF"}
@@ -1,3 +1,7 @@
1
+ import * as child_process from 'node:child_process';
2
+ import * as fs from 'node:fs';
3
+ import * as path from 'node:path';
4
+ import * as clack from '@clack/prompts';
1
5
  import * as Package from '../../Package.js';
2
6
  export async function build(command, options = {}) {
3
7
  const { link = false } = options;
@@ -13,4 +17,161 @@ export async function build(command, options = {}) {
13
17
  console.log(`✔︎ ${link ? 'Linking' : 'Building'} completed successfully`);
14
18
  });
15
19
  }
20
+ export async function preparePublish(command) {
21
+ return command
22
+ .option('--cwd <directory>', 'Working directory to publish from')
23
+ .action(async (options) => {
24
+ const { cwd = process.cwd() } = options;
25
+ console.log(`→ Preparing package at ${cwd}`);
26
+ // Build the package
27
+ await Package.build({ cwd });
28
+ // Get the package.json path
29
+ const packageJsonPath = path.join(cwd, './package.json');
30
+ // Copy package.json to a temporary file
31
+ fs.copyFileSync(packageJsonPath, packageJsonPath.replace('.json', '.tmp.json'));
32
+ // Read package.json as text to find the marker position
33
+ const content = fs.readFileSync(packageJsonPath, 'utf-8');
34
+ const data = JSON.parse(content);
35
+ // Find all keys that appear before "[!start-pkg]" in the file
36
+ const keys = Object.keys(data);
37
+ const markerIndex = keys.indexOf('[!start-pkg]');
38
+ // Remove all keys up to and including the marker
39
+ const keysToRemove = keys.slice(0, markerIndex + 1);
40
+ for (const key of keysToRemove)
41
+ delete data[key];
42
+ // Write back to package.json
43
+ fs.writeFileSync(packageJsonPath, `${JSON.stringify(data, null, 2)}\n`, 'utf-8');
44
+ console.log(`✔︎ Package at ${cwd} prepared successfully`);
45
+ });
46
+ }
47
+ export async function postPublish(command) {
48
+ return command
49
+ .option('--cwd <directory>', 'Working directory to publish from')
50
+ .action(async (options) => {
51
+ const { cwd = process.cwd() } = options;
52
+ const packageJsonPath = path.join(cwd, './package.json');
53
+ const tmpPackageJsonPath = path.join(cwd, './package.tmp.json');
54
+ if (fs.existsSync(tmpPackageJsonPath))
55
+ fs.renameSync(tmpPackageJsonPath, packageJsonPath);
56
+ });
57
+ }
58
+ export async function createNew(command) {
59
+ return command
60
+ .option('--pnpm', 'Use pnpm as package manager')
61
+ .option('--bun', 'Use bun as package manager')
62
+ .action(async (options) => {
63
+ clack.intro('Create a new zile project');
64
+ try {
65
+ // Determine package manager from flags
66
+ let packageManager = 'npm'; // default
67
+ if (options.pnpm)
68
+ packageManager = 'pnpm';
69
+ else if (options.bun)
70
+ packageManager = 'bun';
71
+ // Get package name and directory in single prompt
72
+ const packageName = await clack.text({
73
+ message: 'Package name',
74
+ placeholder: 'my-package',
75
+ validate: (value) => {
76
+ if (!value)
77
+ return 'Package name is required';
78
+ if (!/^(?:@[a-z0-9-*~][a-z0-9-*._~]*\/)?[a-z0-9-~][a-z0-9-._~]*$/.test(value))
79
+ return 'Invalid package name. Must be lowercase, can contain hyphens, and optionally scoped with @org/';
80
+ },
81
+ });
82
+ if (clack.isCancel(packageName)) {
83
+ clack.cancel('Operation cancelled');
84
+ process.exit(0);
85
+ }
86
+ const targetDir = packageName;
87
+ const targetPath = path.resolve(process.cwd(), targetDir);
88
+ // Check if directory exists
89
+ if (fs.existsSync(targetPath)) {
90
+ clack.cancel(`Directory ${targetDir} already exists`);
91
+ process.exit(1);
92
+ }
93
+ // Start spinner for file operations
94
+ const spinner = clack.spinner();
95
+ spinner.start('Creating project');
96
+ const templatePath = path.join(import.meta.dirname, '../../../template');
97
+ // Recursively copy
98
+ function cp(src, dest) {
99
+ // Create destination directory
100
+ fs.mkdirSync(dest, { recursive: true });
101
+ // Read source directory
102
+ const entries = fs.readdirSync(src, { withFileTypes: true });
103
+ for (const entry of entries) {
104
+ const srcPath = path.join(src, entry.name);
105
+ const destName = entry.name.startsWith('~') ? entry.name.slice(1) : entry.name;
106
+ const destPath = path.join(dest, destName);
107
+ if (entry.isDirectory())
108
+ cp(srcPath, destPath);
109
+ else
110
+ fs.copyFileSync(srcPath, destPath);
111
+ }
112
+ }
113
+ cp(templatePath, targetPath);
114
+ // Replace "replace-me" in all files
115
+ function replace(dir) {
116
+ const entries = fs.readdirSync(dir, { withFileTypes: true });
117
+ for (const entry of entries) {
118
+ const fullPath = path.join(dir, entry.name);
119
+ if (entry.isDirectory())
120
+ replace(fullPath);
121
+ else
122
+ try {
123
+ const content = fs.readFileSync(fullPath, 'utf-8');
124
+ const updated = content.replace(/replace-me/g, packageName);
125
+ if (content !== updated)
126
+ fs.writeFileSync(fullPath, updated, 'utf-8');
127
+ }
128
+ catch { }
129
+ }
130
+ }
131
+ replace(targetPath);
132
+ // Add packageManager to package.json (before [!start-pkg] marker)
133
+ const packageJsonPath = path.join(targetPath, 'package.json');
134
+ const packageJsonContent = fs.readFileSync(packageJsonPath, 'utf-8');
135
+ const packageJson = JSON.parse(packageJsonContent);
136
+ // Fetch latest version of the package manager
137
+ const { version } = await fetch(`https://registry.npmjs.org/${packageManager}/latest`).then((response) => response.json());
138
+ // Find keys and insert packageManager before [!start-pkg]
139
+ const keys = Object.keys(packageJson);
140
+ const markerIndex = keys.indexOf('[!start-pkg]');
141
+ // Create new object with packageManager before marker
142
+ const newPackageJson = {};
143
+ for (let i = 0; i < keys.length; i++) {
144
+ if (i === markerIndex)
145
+ newPackageJson.packageManager = `${packageManager}@${version}`;
146
+ // biome-ignore lint/style/noNonNullAssertion: _
147
+ newPackageJson[keys[i]] = packageJson[keys[i]];
148
+ }
149
+ fs.writeFileSync(packageJsonPath, `${JSON.stringify(newPackageJson, null, 2)}\n`, 'utf-8');
150
+ // Initialize git
151
+ spinner.message('Initializing git repository');
152
+ try {
153
+ child_process.execSync('git init', { cwd: targetPath, stdio: 'ignore' });
154
+ child_process.execSync('git add .', { cwd: targetPath, stdio: 'ignore' });
155
+ child_process.execSync('git commit -m "Initial commit"', {
156
+ cwd: targetPath,
157
+ stdio: 'ignore',
158
+ });
159
+ }
160
+ catch { }
161
+ spinner.stop('Project created successfully');
162
+ clack.outro(`
163
+ Next steps:
164
+ cd ${targetDir}
165
+ ${packageManager} install # Install dependencies
166
+ ${packageManager} run build # Builds and transpiles the package
167
+ ${packageManager} run dev # Create symlinks for development
168
+ ${packageManager} run test # Run tests
169
+ `);
170
+ }
171
+ catch (error) {
172
+ clack.cancel('Failed to create project');
173
+ throw error;
174
+ }
175
+ });
176
+ }
16
177
  //# sourceMappingURL=commands.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"commands.js","sourceRoot":"","sources":["../../../src/internal/cli/commands.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,OAAO,MAAM,kBAAkB,CAAA;AAE3C,MAAM,CAAC,KAAK,UAAU,KAAK,CAAC,OAAgB,EAAE,UAAyB,EAAE;IACvE,MAAM,EAAE,IAAI,GAAG,KAAK,EAAE,GAAG,OAAO,CAAA;IAChC,OAAO,OAAO;SACX,MAAM,CAAC,mBAAmB,EAAE,4BAA4B,CAAC;SACzD,MAAM,CAAC,0BAA0B,EAAE,0BAA0B,CAAC;SAC9D,MAAM,CAAC,kBAAkB,EAAE,gEAAgE,CAAC;SAC5F,MAAM,CAAC,QAAQ,EAAE,4BAA4B,CAAC;SAC9C,MAAM,CAAC,KAAK,EAAE,QAA8B,EAAE,QAA8B,EAAE,EAAE;QAC/E,MAAM,EACJ,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,EACnB,OAAO,GAAG,iBAAiB,EAC3B,IAAI,GAAG,KAAK,GACb,GAAG,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAA;QACtD,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,eAAe,GAAG,EAAE,CAAC,CAAA;QACnE,MAAM,OAAO,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAA;QACjD,OAAO,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,yBAAyB,CAAC,CAAA;IAC3E,CAAC,CAAC,CAAA;AACN,CAAC"}
1
+ {"version":3,"file":"commands.js","sourceRoot":"","sources":["../../../src/internal/cli/commands.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,aAAa,MAAM,oBAAoB,CAAA;AACnD,OAAO,KAAK,EAAE,MAAM,SAAS,CAAA;AAC7B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAA;AACjC,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAA;AAEvC,OAAO,KAAK,OAAO,MAAM,kBAAkB,CAAA;AAE3C,MAAM,CAAC,KAAK,UAAU,KAAK,CAAC,OAAgB,EAAE,UAAyB,EAAE;IACvE,MAAM,EAAE,IAAI,GAAG,KAAK,EAAE,GAAG,OAAO,CAAA;IAChC,OAAO,OAAO;SACX,MAAM,CAAC,mBAAmB,EAAE,4BAA4B,CAAC;SACzD,MAAM,CAAC,0BAA0B,EAAE,0BAA0B,CAAC;SAC9D,MAAM,CAAC,kBAAkB,EAAE,gEAAgE,CAAC;SAC5F,MAAM,CAAC,QAAQ,EAAE,4BAA4B,CAAC;SAC9C,MAAM,CAAC,KAAK,EAAE,QAA8B,EAAE,QAA8B,EAAE,EAAE;QAC/E,MAAM,EACJ,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,EACnB,OAAO,GAAG,iBAAiB,EAC3B,IAAI,GAAG,KAAK,GACb,GAAG,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAA;QACtD,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,eAAe,GAAG,EAAE,CAAC,CAAA;QACnE,MAAM,OAAO,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAA;QACjD,OAAO,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,yBAAyB,CAAC,CAAA;IAC3E,CAAC,CAAC,CAAA;AACN,CAAC;AAkBD,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,OAAgB;IACnD,OAAO,OAAO;SACX,MAAM,CAAC,mBAAmB,EAAE,mCAAmC,CAAC;SAChE,MAAM,CAAC,KAAK,EAAE,OAAsC,EAAE,EAAE;QACvD,MAAM,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,EAAE,GAAG,OAAO,CAAA;QAEvC,OAAO,CAAC,GAAG,CAAC,0BAA0B,GAAG,EAAE,CAAC,CAAA;QAE5C,oBAAoB;QACpB,MAAM,OAAO,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,CAAC,CAAA;QAE5B,4BAA4B;QAC5B,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,gBAAgB,CAAC,CAAA;QAExD,wCAAwC;QACxC,EAAE,CAAC,YAAY,CAAC,eAAe,EAAE,eAAe,CAAC,OAAO,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC,CAAA;QAE/E,wDAAwD;QACxD,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,eAAe,EAAE,OAAO,CAAC,CAAA;QACzD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QAEhC,8DAA8D;QAC9D,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC9B,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAA;QAEhD,iDAAiD;QACjD,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,WAAW,GAAG,CAAC,CAAC,CAAA;QACnD,KAAK,MAAM,GAAG,IAAI,YAAY;YAAE,OAAO,IAAI,CAAC,GAAG,CAAC,CAAA;QAEhD,6BAA6B;QAC7B,EAAE,CAAC,aAAa,CAAC,eAAe,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;QAEhF,OAAO,CAAC,GAAG,CAAC,iBAAiB,GAAG,wBAAwB,CAAC,CAAA;IAC3D,CAAC,CAAC,CAAA;AACN,CAAC;AAMD,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,OAAgB;IAChD,OAAO,OAAO;SACX,MAAM,CAAC,mBAAmB,EAAE,mCAAmC,CAAC;SAChE,MAAM,CAAC,KAAK,EAAE,OAAmC,EAAE,EAAE;QACpD,MAAM,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,EAAE,GAAG,OAAO,CAAA;QAEvC,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,gBAAgB,CAAC,CAAA;QACxD,MAAM,kBAAkB,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,CAAC,CAAA;QAC/D,IAAI,EAAE,CAAC,UAAU,CAAC,kBAAkB,CAAC;YAAE,EAAE,CAAC,UAAU,CAAC,kBAAkB,EAAE,eAAe,CAAC,CAAA;IAC3F,CAAC,CAAC,CAAA;AACN,CAAC;AASD,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,OAAgB;IAC9C,OAAO,OAAO;SACX,MAAM,CAAC,QAAQ,EAAE,6BAA6B,CAAC;SAC/C,MAAM,CAAC,OAAO,EAAE,4BAA4B,CAAC;SAC7C,MAAM,CAAC,KAAK,EAAE,OAAiC,EAAE,EAAE;QAClD,KAAK,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAA;QAExC,IAAI,CAAC;YACH,uCAAuC;YACvC,IAAI,cAAc,GAAG,KAAK,CAAA,CAAC,UAAU;YACrC,IAAI,OAAO,CAAC,IAAI;gBAAE,cAAc,GAAG,MAAM,CAAA;iBACpC,IAAI,OAAO,CAAC,GAAG;gBAAE,cAAc,GAAG,KAAK,CAAA;YAE5C,kDAAkD;YAClD,MAAM,WAAW,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC;gBACnC,OAAO,EAAE,cAAc;gBACvB,WAAW,EAAE,YAAY;gBACzB,QAAQ,EAAE,CAAC,KAAyB,EAAE,EAAE;oBACtC,IAAI,CAAC,KAAK;wBAAE,OAAO,0BAA0B,CAAA;oBAC7C,IAAI,CAAC,4DAA4D,CAAC,IAAI,CAAC,KAAK,CAAC;wBAC3E,OAAO,gGAAgG,CAAA;gBAC3G,CAAC;aACF,CAAC,CAAA;YAEF,IAAI,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;gBAChC,KAAK,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAA;gBACnC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;YACjB,CAAC;YAED,MAAM,SAAS,GAAG,WAAW,CAAA;YAC7B,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,CAAC,CAAA;YAEzD,4BAA4B;YAC5B,IAAI,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC9B,KAAK,CAAC,MAAM,CAAC,aAAa,SAAS,iBAAiB,CAAC,CAAA;gBACrD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;YACjB,CAAC;YAED,oCAAoC;YACpC,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,EAAE,CAAA;YAC/B,OAAO,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAA;YAEjC,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,mBAAmB,CAAC,CAAA;YAExE,mBAAmB;YACnB,SAAS,EAAE,CAAC,GAAW,EAAE,IAAY;gBACnC,+BAA+B;gBAC/B,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;gBAEvC,wBAAwB;gBACxB,MAAM,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAA;gBAE5D,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;oBAC5B,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA;oBAC1C,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAA;oBAC9E,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;oBAE1C,IAAI,KAAK,CAAC,WAAW,EAAE;wBAAE,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;;wBACzC,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;gBACzC,CAAC;YACH,CAAC;YACD,EAAE,CAAC,YAAY,EAAE,UAAU,CAAC,CAAA;YAE5B,oCAAoC;YACpC,SAAS,OAAO,CAAC,GAAW;gBAC1B,MAAM,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAA;gBAE5D,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;oBAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA;oBAE3C,IAAI,KAAK,CAAC,WAAW,EAAE;wBAAE,OAAO,CAAC,QAAQ,CAAC,CAAA;;wBAExC,IAAI,CAAC;4BACH,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;4BAClD,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,aAAa,EAAE,WAAqB,CAAC,CAAA;4BACrE,IAAI,OAAO,KAAK,OAAO;gCAAE,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAA;wBACvE,CAAC;wBAAC,MAAM,CAAC,CAAA,CAAC;gBACd,CAAC;YACH,CAAC;YACD,OAAO,CAAC,UAAU,CAAC,CAAA;YAEnB,kEAAkE;YAClE,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,cAAc,CAAC,CAAA;YAC7D,MAAM,kBAAkB,GAAG,EAAE,CAAC,YAAY,CAAC,eAAe,EAAE,OAAO,CAAC,CAAA;YACpE,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAA;YAElD,8CAA8C;YAC9C,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,KAAK,CAAC,8BAA8B,cAAc,SAAS,CAAC,CAAC,IAAI,CACzF,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,CAC9B,CAAA;YAED,0DAA0D;YAC1D,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;YACrC,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAA;YAEhD,sDAAsD;YACtD,MAAM,cAAc,GAA4B,EAAE,CAAA;YAClD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACrC,IAAI,CAAC,KAAK,WAAW;oBAAE,cAAc,CAAC,cAAc,GAAG,GAAG,cAAc,IAAI,OAAO,EAAE,CAAA;gBACrF,gDAAgD;gBAChD,cAAc,CAAC,IAAI,CAAC,CAAC,CAAE,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,CAAE,CAAC,CAAA;YAClD,CAAC;YAED,EAAE,CAAC,aAAa,CAAC,eAAe,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;YAE1F,iBAAiB;YACjB,OAAO,CAAC,OAAO,CAAC,6BAA6B,CAAC,CAAA;YAC9C,IAAI,CAAC;gBACH,aAAa,CAAC,QAAQ,CAAC,UAAU,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAA;gBACxE,aAAa,CAAC,QAAQ,CAAC,WAAW,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAA;gBACzE,aAAa,CAAC,QAAQ,CAAC,gCAAgC,EAAE;oBACvD,GAAG,EAAE,UAAU;oBACf,KAAK,EAAE,QAAQ;iBAChB,CAAC,CAAA;YACJ,CAAC;YAAC,MAAM,CAAC,CAAA,CAAC;YAEV,OAAO,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAA;YAE5C,KAAK,CAAC,KAAK,CAAC;;OAEb,SAAS;IACZ,cAAc;IACd,cAAc;IACd,cAAc;IACd,cAAc;SACT,CAAC,CAAA;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,KAAK,CAAC,MAAM,CAAC,0BAA0B,CAAC,CAAA;YACxC,MAAM,KAAK,CAAA;QACb,CAAC;IACH,CAAC,CAAC,CAAA;AACN,CAAC"}
@@ -1,19 +1,32 @@
1
1
  {
2
- "name": "zile",
3
- "type": "module",
4
- "version": "0.0.7",
5
- "license": "MIT",
6
- "bin": {
7
- "zile": "./dist/Cli.js"
8
- },
9
2
  "scripts": {
10
3
  "build": "bun src/Cli.ts",
11
- "changeset:publish": "bun run build && changeset publish",
4
+ "changeset:publish": "bun src/Cli.ts publish:prepare && changeset publish && bun src/Cli.ts publish:post",
12
5
  "changeset:version": "changeset version",
13
6
  "check": "biome check --fix --unsafe",
14
- "check:types": "tsc -b",
7
+ "check:types": "tsc",
15
8
  "test": "vitest --watch=false"
16
9
  },
10
+ "packageManager": "bun@1.3.2",
11
+ "devDependencies": {
12
+ "@arethetypeswrong/cli": "0.18.2",
13
+ "@biomejs/biome": "^2.2.5",
14
+ "@changesets/changelog-github": "^0.5.0",
15
+ "@changesets/cli": "^2.27.7",
16
+ "@types/node": "^24.7.1",
17
+ "publint": "0.3.14",
18
+ "typescript": "^5.9.3",
19
+ "type-fest": "^5.0.1",
20
+ "vitest": "^3.2.4"
21
+ },
22
+ "[!start-pkg]": "",
23
+ "name": "zile",
24
+ "type": "module",
25
+ "version": "0.0.9",
26
+ "license": "MIT",
27
+ "bin": {
28
+ "zile": "./dist/Cli.js"
29
+ },
17
30
  "files": [
18
31
  "dist",
19
32
  "src"
@@ -29,8 +42,8 @@
29
42
  "default": "./dist/index.js"
30
43
  }
31
44
  },
32
- "packageManager": "bun@1.3",
33
45
  "dependencies": {
46
+ "@clack/prompts": "^1.0.0-alpha.6",
34
47
  "cac": "6.7.14",
35
48
  "tsconfck": "3.1.6"
36
49
  },
@@ -46,16 +59,5 @@
46
59
  "optional": true
47
60
  }
48
61
  },
49
- "devDependencies": {
50
- "@arethetypeswrong/cli": "0.18.2",
51
- "@biomejs/biome": "^2.2.5",
52
- "@changesets/changelog-github": "^0.5.0",
53
- "@changesets/cli": "^2.27.7",
54
- "@types/node": "^24.7.1",
55
- "publint": "0.3.14",
56
- "typescript": "^5.9.3",
57
- "type-fest": "^5.0.1",
58
- "vitest": "^3.2.4"
59
- },
60
62
  "repository": "wevm/zile"
61
63
  }
package/package.json CHANGED
@@ -1,19 +1,11 @@
1
1
  {
2
2
  "name": "zile",
3
3
  "type": "module",
4
- "version": "0.0.7",
4
+ "version": "0.0.9",
5
5
  "license": "MIT",
6
6
  "bin": {
7
7
  "zile": "./dist/Cli.js"
8
8
  },
9
- "scripts": {
10
- "build": "bun src/Cli.ts",
11
- "changeset:publish": "bun run build && changeset publish",
12
- "changeset:version": "changeset version",
13
- "check": "biome check --fix --unsafe",
14
- "check:types": "tsc -b",
15
- "test": "vitest --watch=false"
16
- },
17
9
  "files": [
18
10
  "dist",
19
11
  "src"
@@ -29,8 +21,8 @@
29
21
  "default": "./dist/index.js"
30
22
  }
31
23
  },
32
- "packageManager": "bun@1.3",
33
24
  "dependencies": {
25
+ "@clack/prompts": "^1.0.0-alpha.6",
34
26
  "cac": "6.7.14",
35
27
  "tsconfck": "3.1.6"
36
28
  },
@@ -46,16 +38,5 @@
46
38
  "optional": true
47
39
  }
48
40
  },
49
- "devDependencies": {
50
- "@arethetypeswrong/cli": "0.18.2",
51
- "@biomejs/biome": "^2.2.5",
52
- "@changesets/changelog-github": "^0.5.0",
53
- "@changesets/cli": "^2.27.7",
54
- "@types/node": "^24.7.1",
55
- "publint": "0.3.14",
56
- "typescript": "^5.9.3",
57
- "type-fest": "^5.0.1",
58
- "vitest": "^3.2.4"
59
- },
60
41
  "repository": "wevm/zile"
61
42
  }
package/src/Cli.ts CHANGED
@@ -20,6 +20,9 @@ export async function run(options: run.Options): Promise<void> {
20
20
  commands.build(cli.command('dev', 'Resolve package exports to source for development'), {
21
21
  link: true,
22
22
  })
23
+ commands.createNew(cli.command('new', 'Create a new zile project'))
24
+ commands.preparePublish(cli.command('publish:prepare', 'Prepare package for publishing'))
25
+ commands.postPublish(cli.command('publish:post', 'Post-process package after publishing'))
23
26
 
24
27
  cli.help()
25
28
  cli.parse(args)
@@ -165,51 +165,51 @@ describe('Package.writePackageJson', () => {
165
165
  test('preserves trailing newline when present', async () => {
166
166
  const tmpDir = path.resolve(import.meta.dirname, '.tmp', crypto.randomUUID())
167
167
  await fs.mkdir(tmpDir, { recursive: true })
168
-
168
+
169
169
  const pkgPath = path.resolve(tmpDir, 'package.json')
170
170
  const contentWithNewline = `{\n "name": "test",\n "version": "1.0.0"\n}\n`
171
171
  await fs.writeFile(pkgPath, contentWithNewline, 'utf-8')
172
-
172
+
173
173
  const pkgJson = await Package.readPackageJson({ cwd: tmpDir })
174
174
  pkgJson.version = '1.0.1'
175
175
  await Package.writePackageJson(tmpDir, pkgJson)
176
-
176
+
177
177
  const result = await fs.readFile(pkgPath, 'utf-8')
178
178
  expect(result.endsWith('\n')).toBe(true)
179
-
179
+
180
180
  await fs.rm(tmpDir, { recursive: true })
181
181
  })
182
182
 
183
183
  test('preserves no trailing newline when absent', async () => {
184
184
  const tmpDir = path.resolve(import.meta.dirname, '.tmp', crypto.randomUUID())
185
185
  await fs.mkdir(tmpDir, { recursive: true })
186
-
186
+
187
187
  const pkgPath = path.resolve(tmpDir, 'package.json')
188
188
  const contentWithoutNewline = `{\n "name": "test",\n "version": "1.0.0"\n}`
189
189
  await fs.writeFile(pkgPath, contentWithoutNewline, 'utf-8')
190
-
190
+
191
191
  const pkgJson = await Package.readPackageJson({ cwd: tmpDir })
192
192
  pkgJson.version = '1.0.1'
193
193
  await Package.writePackageJson(tmpDir, pkgJson)
194
-
194
+
195
195
  const result = await fs.readFile(pkgPath, 'utf-8')
196
196
  expect(result.endsWith('\n')).toBe(false)
197
197
  expect(result.endsWith('}\n')).toBe(false)
198
198
  expect(result.endsWith('}')).toBe(true)
199
-
199
+
200
200
  await fs.rm(tmpDir, { recursive: true })
201
201
  })
202
202
 
203
203
  test('defaults to trailing newline when no cache exists', async () => {
204
204
  const tmpDir = path.resolve(import.meta.dirname, '.tmp', crypto.randomUUID())
205
205
  await fs.mkdir(tmpDir, { recursive: true })
206
-
206
+
207
207
  const pkgJson = { name: 'test', version: '1.0.0' }
208
208
  await Package.writePackageJson(tmpDir, pkgJson)
209
-
209
+
210
210
  const result = await fs.readFile(path.resolve(tmpDir, 'package.json'), 'utf-8')
211
211
  expect(result.endsWith('\n')).toBe(true)
212
-
212
+
213
213
  await fs.rm(tmpDir, { recursive: true })
214
214
  })
215
215
  })
package/src/Package.ts CHANGED
@@ -468,13 +468,15 @@ export function getSourceDir(options: getSourceDir.Options): string {
468
468
  const minLength = Math.min(...segments.map((s) => s.length))
469
469
 
470
470
  for (let i = 0; i < minLength; i++) {
471
- const segment = segments[0][i]
471
+ // biome-ignore lint/style/noNonNullAssertion: _
472
+ const segment = segments[0]![i]!
472
473
  if (segments.every((s) => s[i] === segment)) commonSegments.push(segment)
473
474
  else break
474
475
  }
475
476
 
476
477
  const commonPath = commonSegments.join(path.sep)
477
- return path.resolve(cwd, path.relative(cwd, commonPath).split(path.sep)[0])
478
+ // biome-ignore lint/style/noNonNullAssertion: _
479
+ return path.resolve(cwd, path.relative(cwd, commonPath).split(path.sep)[0]!)
478
480
  }
479
481
 
480
482
  export declare namespace getSourceDir {
@@ -565,7 +567,8 @@ export async function transpile(options: transpile.Options): Promise<transpile.R
565
567
  ...tsConfigJson.compilerOptions,
566
568
  composite: false,
567
569
  declaration: true,
568
- declarationDir: tsConfigJson.compilerOptions?.declarationDir,
570
+ // biome-ignore lint/style/noNonNullAssertion: _
571
+ declarationDir: tsConfigJson.compilerOptions?.declarationDir!,
569
572
  declarationMap: true,
570
573
  emitDeclarationOnly: false,
571
574
  esModuleInterop: true,
@@ -633,10 +636,10 @@ export async function writePackageJson(cwd: string, pkgJson: PackageJson) {
633
636
  const content = packageJsonCache.get(cwd)
634
637
  const indent = content ? detectIndent(content) : ' '
635
638
  const hasTrailingNewline = content ? content.endsWith('\n') : true
636
-
639
+
637
640
  let output = JSON.stringify(pkgJson, null, indent)
638
641
  if (hasTrailingNewline) output += '\n'
639
-
642
+
640
643
  await fs.writeFile(path.resolve(cwd, 'package.json'), output, 'utf-8')
641
644
  }
642
645
 
@@ -653,7 +656,8 @@ export function detectIndent(content: string): string {
653
656
  for (const line of lines) {
654
657
  const match = line.match(/^(\s+)/)
655
658
  if (match) {
656
- const indent = match[1]
659
+ // biome-ignore lint/style/noNonNullAssertion: _
660
+ const indent = match[1]!
657
661
  // If it starts with a tab, use tabs
658
662
  if (indent[0] === '\t') return '\t'
659
663
  // Otherwise return the spaces found
@@ -28,6 +28,7 @@ describe('Packages.find', () => {
28
28
  "/test/repos/error-bin-object-not-exists",
29
29
  "/test/repos/basic-object-exports",
30
30
  "/test/repos/basic",
31
+ "/template",
31
32
  "/src/internal",
32
33
  "/examples/monorepo",
33
34
  "/examples/monorepo/packages/foo",
@@ -137,7 +138,8 @@ describe('Packages.find', () => {
137
138
  })
138
139
 
139
140
  expect(result.length).toBeGreaterThan(0)
140
- expect(path.isAbsolute(result[0])).toBe(true)
141
+ // biome-ignore lint/style/noNonNullAssertion: _
142
+ expect(path.isAbsolute(result[0]!)).toBe(true)
141
143
  })
142
144
 
143
145
  it('uses process.cwd() when no cwd provided', async () => {
@@ -175,6 +177,7 @@ describe('Packages.find', () => {
175
177
  "/test/repos/error-bin-object-not-exists",
176
178
  "/test/repos/basic-object-exports",
177
179
  "/test/repos/basic",
180
+ "/template",
178
181
  "/src/internal",
179
182
  "/examples/monorepo",
180
183
  "/examples/monorepo/packages/foo",
@@ -1,3 +1,7 @@
1
+ import * as child_process from 'node:child_process'
2
+ import * as fs from 'node:fs'
3
+ import * as path from 'node:path'
4
+ import * as clack from '@clack/prompts'
1
5
  import type { Command } from 'cac'
2
6
  import * as Package from '../../Package.js'
3
7
 
@@ -35,3 +39,204 @@ export declare namespace build {
35
39
  tsgo?: boolean | undefined
36
40
  }
37
41
  }
42
+
43
+ export async function preparePublish(command: Command) {
44
+ return command
45
+ .option('--cwd <directory>', 'Working directory to publish from')
46
+ .action(async (options: preparePublish.CommandOptions) => {
47
+ const { cwd = process.cwd() } = options
48
+
49
+ console.log(`→ Preparing package at ${cwd}`)
50
+
51
+ // Build the package
52
+ await Package.build({ cwd })
53
+
54
+ // Get the package.json path
55
+ const packageJsonPath = path.join(cwd, './package.json')
56
+
57
+ // Copy package.json to a temporary file
58
+ fs.copyFileSync(packageJsonPath, packageJsonPath.replace('.json', '.tmp.json'))
59
+
60
+ // Read package.json as text to find the marker position
61
+ const content = fs.readFileSync(packageJsonPath, 'utf-8')
62
+ const data = JSON.parse(content)
63
+
64
+ // Find all keys that appear before "[!start-pkg]" in the file
65
+ const keys = Object.keys(data)
66
+ const markerIndex = keys.indexOf('[!start-pkg]')
67
+
68
+ // Remove all keys up to and including the marker
69
+ const keysToRemove = keys.slice(0, markerIndex + 1)
70
+ for (const key of keysToRemove) delete data[key]
71
+
72
+ // Write back to package.json
73
+ fs.writeFileSync(packageJsonPath, `${JSON.stringify(data, null, 2)}\n`, 'utf-8')
74
+
75
+ console.log(`✔︎ Package at ${cwd} prepared successfully`)
76
+ })
77
+ }
78
+
79
+ export declare namespace preparePublish {
80
+ type CommandOptions = build.CommandOptions
81
+ }
82
+
83
+ export async function postPublish(command: Command) {
84
+ return command
85
+ .option('--cwd <directory>', 'Working directory to publish from')
86
+ .action(async (options: postPublish.CommandOptions) => {
87
+ const { cwd = process.cwd() } = options
88
+
89
+ const packageJsonPath = path.join(cwd, './package.json')
90
+ const tmpPackageJsonPath = path.join(cwd, './package.tmp.json')
91
+ if (fs.existsSync(tmpPackageJsonPath)) fs.renameSync(tmpPackageJsonPath, packageJsonPath)
92
+ })
93
+ }
94
+
95
+ export declare namespace postPublish {
96
+ type CommandOptions = {
97
+ /** Working directory to publish from */
98
+ cwd?: string | undefined
99
+ }
100
+ }
101
+
102
+ export async function createNew(command: Command) {
103
+ return command
104
+ .option('--pnpm', 'Use pnpm as package manager')
105
+ .option('--bun', 'Use bun as package manager')
106
+ .action(async (options: createNew.CommandOptions) => {
107
+ clack.intro('Create a new zile project')
108
+
109
+ try {
110
+ // Determine package manager from flags
111
+ let packageManager = 'npm' // default
112
+ if (options.pnpm) packageManager = 'pnpm'
113
+ else if (options.bun) packageManager = 'bun'
114
+
115
+ // Get package name and directory in single prompt
116
+ const packageName = await clack.text({
117
+ message: 'Package name',
118
+ placeholder: 'my-package',
119
+ validate: (value: string | undefined) => {
120
+ if (!value) return 'Package name is required'
121
+ if (!/^(?:@[a-z0-9-*~][a-z0-9-*._~]*\/)?[a-z0-9-~][a-z0-9-._~]*$/.test(value))
122
+ return 'Invalid package name. Must be lowercase, can contain hyphens, and optionally scoped with @org/'
123
+ },
124
+ })
125
+
126
+ if (clack.isCancel(packageName)) {
127
+ clack.cancel('Operation cancelled')
128
+ process.exit(0)
129
+ }
130
+
131
+ const targetDir = packageName
132
+ const targetPath = path.resolve(process.cwd(), targetDir)
133
+
134
+ // Check if directory exists
135
+ if (fs.existsSync(targetPath)) {
136
+ clack.cancel(`Directory ${targetDir} already exists`)
137
+ process.exit(1)
138
+ }
139
+
140
+ // Start spinner for file operations
141
+ const spinner = clack.spinner()
142
+ spinner.start('Creating project')
143
+
144
+ const templatePath = path.join(import.meta.dirname, '../../../template')
145
+
146
+ // Recursively copy
147
+ function cp(src: string, dest: string): void {
148
+ // Create destination directory
149
+ fs.mkdirSync(dest, { recursive: true })
150
+
151
+ // Read source directory
152
+ const entries = fs.readdirSync(src, { withFileTypes: true })
153
+
154
+ for (const entry of entries) {
155
+ const srcPath = path.join(src, entry.name)
156
+ const destName = entry.name.startsWith('~') ? entry.name.slice(1) : entry.name
157
+ const destPath = path.join(dest, destName)
158
+
159
+ if (entry.isDirectory()) cp(srcPath, destPath)
160
+ else fs.copyFileSync(srcPath, destPath)
161
+ }
162
+ }
163
+ cp(templatePath, targetPath)
164
+
165
+ // Replace "replace-me" in all files
166
+ function replace(dir: string) {
167
+ const entries = fs.readdirSync(dir, { withFileTypes: true })
168
+
169
+ for (const entry of entries) {
170
+ const fullPath = path.join(dir, entry.name)
171
+
172
+ if (entry.isDirectory()) replace(fullPath)
173
+ else
174
+ try {
175
+ const content = fs.readFileSync(fullPath, 'utf-8')
176
+ const updated = content.replace(/replace-me/g, packageName as string)
177
+ if (content !== updated) fs.writeFileSync(fullPath, updated, 'utf-8')
178
+ } catch {}
179
+ }
180
+ }
181
+ replace(targetPath)
182
+
183
+ // Add packageManager to package.json (before [!start-pkg] marker)
184
+ const packageJsonPath = path.join(targetPath, 'package.json')
185
+ const packageJsonContent = fs.readFileSync(packageJsonPath, 'utf-8')
186
+ const packageJson = JSON.parse(packageJsonContent)
187
+
188
+ // Fetch latest version of the package manager
189
+ const { version } = await fetch(`https://registry.npmjs.org/${packageManager}/latest`).then(
190
+ (response) => response.json(),
191
+ )
192
+
193
+ // Find keys and insert packageManager before [!start-pkg]
194
+ const keys = Object.keys(packageJson)
195
+ const markerIndex = keys.indexOf('[!start-pkg]')
196
+
197
+ // Create new object with packageManager before marker
198
+ const newPackageJson: Record<string, unknown> = {}
199
+ for (let i = 0; i < keys.length; i++) {
200
+ if (i === markerIndex) newPackageJson.packageManager = `${packageManager}@${version}`
201
+ // biome-ignore lint/style/noNonNullAssertion: _
202
+ newPackageJson[keys[i]!] = packageJson[keys[i]!]
203
+ }
204
+
205
+ fs.writeFileSync(packageJsonPath, `${JSON.stringify(newPackageJson, null, 2)}\n`, 'utf-8')
206
+
207
+ // Initialize git
208
+ spinner.message('Initializing git repository')
209
+ try {
210
+ child_process.execSync('git init', { cwd: targetPath, stdio: 'ignore' })
211
+ child_process.execSync('git add .', { cwd: targetPath, stdio: 'ignore' })
212
+ child_process.execSync('git commit -m "Initial commit"', {
213
+ cwd: targetPath,
214
+ stdio: 'ignore',
215
+ })
216
+ } catch {}
217
+
218
+ spinner.stop('Project created successfully')
219
+
220
+ clack.outro(`
221
+ Next steps:
222
+ cd ${targetDir}
223
+ ${packageManager} install # Install dependencies
224
+ ${packageManager} run build # Builds and transpiles the package
225
+ ${packageManager} run dev # Create symlinks for development
226
+ ${packageManager} run test # Run tests
227
+ `)
228
+ } catch (error) {
229
+ clack.cancel('Failed to create project')
230
+ throw error
231
+ }
232
+ })
233
+ }
234
+
235
+ export declare namespace createNew {
236
+ type CommandOptions = {
237
+ /** Use pnpm as package manager */
238
+ pnpm?: boolean | undefined
239
+ /** Use bun as package manager */
240
+ bun?: boolean | undefined
241
+ }
242
+ }