lllink 1.1.430 → 1.1.431

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/index.js ADDED
@@ -0,0 +1,68 @@
1
+ #!/usr/bin/env bun
2
+ import { readdir, readFile, stat, rm, symlink } from "node:fs/promises";
3
+ import { homedir } from "node:os";
4
+ import { join, relative, resolve } from "node:path";
5
+ const IGNORE_DIR = "node_modules";
6
+ async function findLocalPackages(rootDir) {
7
+ const results = {};
8
+ async function recurse(dir) {
9
+ let entries;
10
+ try {
11
+ entries = await readdir(dir);
12
+ } catch {
13
+ return;
14
+ }
15
+ await Promise.all(
16
+ entries.map(async (entry) => {
17
+ if (entry === IGNORE_DIR) return;
18
+ const fullPath = join(dir, entry);
19
+ let entryStat;
20
+ try {
21
+ entryStat = await stat(fullPath);
22
+ } catch {
23
+ return;
24
+ }
25
+ if (entryStat.isDirectory()) {
26
+ const pkgJsonPath = join(fullPath, "package.json");
27
+ try {
28
+ if ((await stat(pkgJsonPath)).isFile()) {
29
+ const raw = await readFile(pkgJsonPath, "utf-8"), pkgData = JSON.parse(raw);
30
+ pkgData.name && (results[pkgData.name] = fullPath);
31
+ }
32
+ } catch {
33
+ await recurse(fullPath);
34
+ }
35
+ }
36
+ })
37
+ );
38
+ }
39
+ return await recurse(rootDir), results;
40
+ }
41
+ async function linkPackages(localPackages) {
42
+ for (const pkgName of Object.keys(localPackages)) {
43
+ const nmPath = join(process.cwd(), "node_modules", ...pkgName.split("/"));
44
+ try {
45
+ if (await stat(nmPath)) {
46
+ await rm(nmPath, { recursive: !0, force: !0 });
47
+ const localPath = localPackages[pkgName];
48
+ console.info(`${relative(process.cwd(), nmPath)} -> ${localPath.replace(homedir(), "~")}`), await symlink(localPath, nmPath, "dir");
49
+ }
50
+ } catch {
51
+ }
52
+ }
53
+ }
54
+ async function main() {
55
+ const args = process.argv.slice(2);
56
+ args.length === 0 && (console.info("No workspace directories provided."), process.exit(0));
57
+ const allLocalPackages = {};
58
+ for (const workspaceDir of args) {
59
+ const resolved = resolve(workspaceDir), found = await findLocalPackages(resolved);
60
+ Object.assign(allLocalPackages, found);
61
+ }
62
+ await linkPackages(allLocalPackages), console.info(`
63
+ \u2713 linked ${Object.keys(allLocalPackages).length} packages`);
64
+ }
65
+ main().catch((err) => {
66
+ console.error("Error:", err), process.exit(1);
67
+ });
68
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../src/index.ts"],
4
+ "mappings": ";AAOA,SAAS,SAAS,UAAU,MAAM,IAAI,eAAe;AACrD,SAAS,eAAe;AACxB,SAAS,MAAM,UAAU,eAAe;AAExC,MAAM,aAAa;AAEnB,eAAe,kBAAkB,SAAkD;AACjF,QAAM,UAAkC,CAAC;AAEzC,iBAAe,QAAQ,KAAa;AAClC,QAAI;AACJ,QAAI;AACF,gBAAU,MAAM,QAAQ,GAAG;AAAA,IAC7B,QAAQ;AACN;AAAA,IACF;AAEA,UAAM,QAAQ;AAAA,MACZ,QAAQ,IAAI,OAAO,UAAU;AAC3B,YAAI,UAAU,WAAY;AAC1B,cAAM,WAAW,KAAK,KAAK,KAAK;AAChC,YAAI;AACJ,YAAI;AACF,sBAAY,MAAM,KAAK,QAAQ;AAAA,QACjC,QAAQ;AACN;AAAA,QACF;AACA,YAAI,UAAU,YAAY,GAAG;AAC3B,gBAAM,cAAc,KAAK,UAAU,cAAc;AACjD,cAAI;AAEF,iBADoB,MAAM,KAAK,WAAW,GAC1B,OAAO,GAAG;AACxB,oBAAM,MAAM,MAAM,SAAS,aAAa,OAAO,GACzC,UAAU,KAAK,MAAM,GAAG;AAC9B,cAAI,QAAQ,SACV,QAAQ,QAAQ,IAAI,IAAI;AAAA,YAE5B;AAAA,UACF,QAAQ;AACN,kBAAM,QAAQ,QAAQ;AAAA,UACxB;AAAA,QACF;AAAA,MACF,CAAC;AAAA,IACH;AAAA,EACF;AAEA,eAAM,QAAQ,OAAO,GACd;AACT;AAEA,eAAe,aAAa,eAAuC;AACjE,aAAW,WAAW,OAAO,KAAK,aAAa,GAAG;AAChD,UAAM,SAAS,KAAK,QAAQ,IAAI,GAAG,gBAAgB,GAAG,QAAQ,MAAM,GAAG,CAAC;AACxE,QAAI;AAEF,UADqB,MAAM,KAAK,MAAM,GACpB;AAChB,cAAM,GAAG,QAAQ,EAAE,WAAW,IAAM,OAAO,GAAK,CAAC;AACjD,cAAM,YAAY,cAAc,OAAO;AACvC,gBAAQ,KAAK,GAAG,SAAS,QAAQ,IAAI,GAAG,MAAM,CAAC,OAAO,UAAU,QAAQ,QAAQ,GAAG,GAAG,CAAC,EAAE,GACzF,MAAM,QAAQ,WAAW,QAAQ,KAAK;AAAA,MACxC;AAAA,IACF,QAAQ;AAAA,IAAC;AAAA,EACX;AACF;AAEA,eAAe,OAAO;AACpB,QAAM,OAAO,QAAQ,KAAK,MAAM,CAAC;AACjC,EAAI,KAAK,WAAW,MAClB,QAAQ,KAAK,oCAAoC,GACjD,QAAQ,KAAK,CAAC;AAEhB,QAAM,mBAA2C,CAAC;AAClD,aAAW,gBAAgB,MAAM;AAC/B,UAAM,WAAW,QAAQ,YAAY,GAC/B,QAAQ,MAAM,kBAAkB,QAAQ;AAC9C,WAAO,OAAO,kBAAkB,KAAK;AAAA,EACvC;AACA,QAAM,aAAa,gBAAgB,GACnC,QAAQ,KAAK;AAAA,iBAAe,OAAO,KAAK,gBAAgB,EAAE,MAAM,WAAW;AAC7E;AAEA,KAAK,EAAE,MAAM,CAAC,QAAQ;AACpB,UAAQ,MAAM,UAAU,GAAG,GAC3B,QAAQ,KAAK,CAAC;AAChB,CAAC;",
5
+ "names": []
6
+ }
@@ -0,0 +1 @@
1
+ {"version":3,"names":["readdir","readFile","stat","rm","symlink","homedir","join","relative","resolve","IGNORE_DIR","findLocalPackages","rootDir","results","recurse","dir","entries","Promise","all","map","entry","fullPath","entryStat","isDirectory","pkgJsonPath","isFile","raw","pkgData","JSON","parse","name","linkPackages","localPackages","pkgName","Object","keys","nmPath","process","cwd","split","recursive","force","localPath","console","info","replace","main","args","argv","slice","length","exit","allLocalPackages","workspaceDir","resolved","found","assign","catch","err","error"],"sources":["../src/index.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lllink",
3
- "version": "1.1.430",
3
+ "version": "1.1.431",
4
4
  "type": "module",
5
5
  "module": "dist",
6
6
  "exports": {
@@ -23,9 +23,9 @@
23
23
  },
24
24
  "devDependencies": {
25
25
  "@biomejs/biome": "^1.8.3",
26
- "@tamagui/build": "^1.123.10"
26
+ "@tamagui/build": "^1.123.14"
27
27
  },
28
28
  "publishConfig": {
29
29
  "access": "public"
30
30
  }
31
- }
31
+ }
package/src/index.ts CHANGED
File without changes