obsidian-plugin-config 1.3.3 β†’ 1.3.6

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.
@@ -3,7 +3,7 @@
3
3
  /**
4
4
  * Obsidian Plugin Config - CLI Entry Point
5
5
  * Global command: obsidian-inject
6
- * Version: 1.3.3
6
+ * Version: 1.3.6
7
7
  */
8
8
 
9
9
  import { execSync } from 'child_process';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "obsidian-plugin-config",
3
- "version": "1.3.3",
3
+ "version": "1.3.6",
4
4
  "description": "SystΓ¨me d'injection pour plugins Obsidian autonomes",
5
5
  "type": "module",
6
6
  "main": "src/index.ts",
@@ -293,17 +293,25 @@ export async function injectScripts(targetPath: string, useSass: boolean = false
293
293
  "templates/scripts/help.ts"
294
294
  ];
295
295
 
296
- const configFiles = [
297
- "templates/tsconfig.json",
298
- "templates/.gitignore",
299
- "templates/eslint.config.mts",
300
- "templates/.vscode/settings.json",
301
- "templates/.editorconfig",
302
- "templates/.prettierrc",
303
- "templates/.npmrc",
304
- "templates/.env",
305
- "templates/.vscode/tasks.json"
306
- ];
296
+ // Files with .template suffix are renamed by NPM
297
+ // exclusion rules (.gitignore, .npmrc, .env)
298
+ // Map: { source: targetName }
299
+ const configFileMap: Record<string, string> = {
300
+ "templates/tsconfig.json": "tsconfig.json",
301
+ "templates/gitignore.template": ".gitignore",
302
+ "templates/eslint.config.mts": "eslint.config.mts",
303
+ "templates/.editorconfig": ".editorconfig",
304
+ "templates/.prettierrc": ".prettierrc",
305
+ "templates/npmrc.template": ".npmrc",
306
+ "templates/env.template": ".env",
307
+ };
308
+
309
+ const configVscodeMap: Record<string, string> = {
310
+ "templates/.vscode/settings.json":
311
+ ".vscode/settings.json",
312
+ "templates/.vscode/tasks.json":
313
+ ".vscode/tasks.json",
314
+ };
307
315
 
308
316
  const workflowFiles = [
309
317
  "templates/.github/workflows/release.yml",
@@ -324,33 +332,45 @@ export async function injectScripts(targetPath: string, useSass: boolean = false
324
332
  }
325
333
  }
326
334
 
327
- console.log(`\nπŸ“₯ Copying config files from local files...`);
335
+ console.log(`\nπŸ“₯ Copying config files...`);
328
336
 
329
- for (const configFile of configFiles) {
337
+ // Copy root config files
338
+ for (const [src, destName] of Object.entries(
339
+ configFileMap
340
+ )) {
330
341
  try {
331
- const content = copyFromLocal(configFile);
332
- let targetFile: string;
333
- let displayName: string;
334
-
335
- if (configFile.includes(".vscode/")) {
336
- const vscodePart = configFile.replace("templates/.vscode/", "");
337
- targetFile = path.join(targetPath, ".vscode", vscodePart);
338
- displayName = `.vscode/${vscodePart}`;
339
- } else {
340
- const fileName = path.basename(configFile);
341
- targetFile = path.join(targetPath, fileName);
342
- displayName = fileName;
343
- }
342
+ const content = copyFromLocal(src);
343
+ const targetFile = path.join(
344
+ targetPath, destName
345
+ );
346
+ fs.writeFileSync(targetFile, content, "utf8");
347
+ console.log(` βœ… ${destName}`);
348
+ } catch (error) {
349
+ console.error(
350
+ ` ❌ Failed to inject ${destName}: ${error}`
351
+ );
352
+ }
353
+ }
344
354
 
355
+ // Copy .vscode config files
356
+ for (const [src, destName] of Object.entries(
357
+ configVscodeMap
358
+ )) {
359
+ try {
360
+ const content = copyFromLocal(src);
361
+ const targetFile = path.join(
362
+ targetPath, destName
363
+ );
345
364
  const targetDir = path.dirname(targetFile);
346
365
  if (!await isValidPath(targetDir)) {
347
366
  fs.mkdirSync(targetDir, { recursive: true });
348
367
  }
349
-
350
368
  fs.writeFileSync(targetFile, content, "utf8");
351
- console.log(` βœ… ${displayName}`);
369
+ console.log(` βœ… ${destName}`);
352
370
  } catch (error) {
353
- console.error(` ❌ Failed to inject ${configFile}: ${error}`);
371
+ console.error(
372
+ ` ❌ Failed to inject ${destName}: ${error}`
373
+ );
354
374
  }
355
375
  }
356
376
 
@@ -0,0 +1,10 @@
1
+ # Environment variables for plugin development
2
+ # Update these paths to match your setup
3
+
4
+ # Path to test vault (for development)
5
+ TEST_VAULT=
6
+
7
+ # Path to real vault (for production testing)
8
+ REAL_VAULT=
9
+
10
+ # Note: Run 'yarn version' to update these paths interactively
@@ -0,0 +1,34 @@
1
+ # Intellij
2
+ *.iml
3
+ .idea
4
+
5
+ # npm
6
+ node_modules
7
+ package-lock.json
8
+
9
+ # yarn - keep yarn.lock for version consistency
10
+ # yarn.lock
11
+
12
+ # Don't include the compiled main.js file in the repo.
13
+ # They should be uploaded to GitHub releases instead.
14
+ main.js
15
+
16
+ # Exclude sourcemaps
17
+ *.map
18
+
19
+ # obsidian
20
+ data.json
21
+
22
+ # Exclude macOS Finder (System Explorer) View States
23
+ .DS_Store
24
+
25
+ # scss result
26
+ main.css
27
+
28
+ # VSCode - keep settings.json for yarn protection
29
+ .vscode/*
30
+ !.vscode/settings.json
31
+ !.vscode/tasks.json
32
+
33
+ # Keep injection info for traceability
34
+ # .injection-info.json should be committed to track injection version
@@ -0,0 +1,2 @@
1
+ # Force yarn usage - prevent npm install accidents
2
+ engine-strict=true
@@ -5,8 +5,8 @@
5
5
  ],
6
6
  "paths": {
7
7
  "obsidian-typings/implementations": [
8
- "./node_modules/obsidian-typings/dist/implementations.d.ts",
9
- "./node_modules/obsidian-typings/dist/implementations.cjs"
8
+ "./node_modules/obsidian-typings/dist/cjs/implementations.d.cts",
9
+ "./node_modules/obsidian-typings/dist/esm/implementations.mjs"
10
10
  ]
11
11
  },
12
12
  "inlineSourceMap": true,
package/tsconfig.json CHANGED
@@ -5,8 +5,8 @@
5
5
  ],
6
6
  "paths": {
7
7
  "obsidian-typings/implementations": [
8
- "./node_modules/obsidian-typings/dist/implementations.d.ts",
9
- "./node_modules/obsidian-typings/dist/implementations.cjs"
8
+ "./node_modules/obsidian-typings/dist/cjs/implementations.d.cts",
9
+ "./node_modules/obsidian-typings/dist/esm/implementations.mjs"
10
10
  ]
11
11
  },
12
12
  "inlineSourceMap": true,
package/versions.json CHANGED
@@ -29,5 +29,8 @@
29
29
  "1.3.0": "1.8.9",
30
30
  "1.3.1": "1.8.9",
31
31
  "1.3.2": "1.8.9",
32
- "1.3.3": "1.8.9"
32
+ "1.3.3": "1.8.9",
33
+ "1.3.4": "1.8.9",
34
+ "1.3.5": "1.8.9",
35
+ "1.3.6": "1.8.9"
33
36
  }