@duonghieu0712z/create-tauri-vue-template 0.0.6 → 0.0.7

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.
@@ -24,16 +24,18 @@ async function removeTemplateArtifacts(targetDir) {
24
24
  await Promise.all(['CHANGELOG.md', 'Changelog.md', 'changelog.md'].map((fileName) => rm(resolve(targetDir, fileName), { force: true })));
25
25
  }
26
26
  async function restorePackagedGitignore(targetDir) {
27
- const packagedGitignorePath = resolve(targetDir, '_gitignore');
28
- try {
29
- await copyFile(packagedGitignorePath, resolve(targetDir, '.gitignore'));
30
- await rm(packagedGitignorePath, { force: true });
31
- }
32
- catch (error) {
33
- if (error.code !== 'ENOENT') {
34
- throw error;
27
+ const entries = await readdir(targetDir, { withFileTypes: true });
28
+ await Promise.all(entries.map(async (entry) => {
29
+ const entryPath = resolve(targetDir, entry.name);
30
+ if (entry.isDirectory()) {
31
+ await restorePackagedGitignore(entryPath);
32
+ return;
35
33
  }
36
- }
34
+ if (entry.isFile() && entry.name === '_gitignore') {
35
+ await copyFile(entryPath, resolve(targetDir, '.gitignore'));
36
+ await rm(entryPath, { force: true });
37
+ }
38
+ }));
37
39
  }
38
40
  export async function scaffoldProject(targetDir, packageDir, identity) {
39
41
  const templateDir = resolve(packageDir, 'template');
@@ -8,8 +8,6 @@ import { extract } from 'tar';
8
8
  const currentDir = dirname(fileURLToPath(import.meta.url));
9
9
  const packageDir = resolve(currentDir, '..', '..');
10
10
  const templateDir = resolve(packageDir, 'template');
11
- const templateGitignorePath = resolve(templateDir, '.gitignore');
12
- const packagedGitignorePath = resolve(templateDir, '_gitignore');
13
11
  const archivePath = resolve(packageDir, '.tmp-template.tar.gz');
14
12
  const templateRepo = process.env.TAURI_VUE_TEMPLATE_REPO || 'duonghieu0712z/tauri-vue-template';
15
13
  const templateRef = process.env.TAURI_VUE_TEMPLATE_REF || 'main';
@@ -60,8 +58,21 @@ async function extractTemplateArchive() {
60
58
  });
61
59
  }
62
60
  async function stagePackagedGitignore() {
61
+ async function visit(dir) {
62
+ const entries = await readdir(dir, { withFileTypes: true });
63
+ await Promise.all(entries.map(async (entry) => {
64
+ const entryPath = resolve(dir, entry.name);
65
+ if (entry.isDirectory()) {
66
+ await visit(entryPath);
67
+ return;
68
+ }
69
+ if (entry.isFile() && entry.name === '.gitignore') {
70
+ await copyFile(entryPath, resolve(dir, '_gitignore'));
71
+ }
72
+ }));
73
+ }
63
74
  try {
64
- await copyFile(templateGitignorePath, packagedGitignorePath);
75
+ await visit(templateDir);
65
76
  }
66
77
  catch (error) {
67
78
  if (error.code !== 'ENOENT') {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@duonghieu0712z/create-tauri-vue-template",
3
- "version": "0.0.6",
3
+ "version": "0.0.7",
4
4
  "description": "Create a Tauri 2 + Vue 3 desktop app from the tauri-vue-template starter.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -0,0 +1,7 @@
1
+ # Generated by Cargo
2
+ # will have compiled files and executables
3
+ /target/
4
+
5
+ # Generated by Tauri
6
+ # will have schema files for capabilities auto-completion
7
+ /gen/schemas