mindwire 0.1.34 → 0.1.36

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.
Files changed (39) hide show
  1. package/dist/binary-cache-CG52TXCZ.js +3 -0
  2. package/dist/{binary-cache-VM7VHCEU.js.map → binary-cache-CG52TXCZ.js.map} +1 -1
  3. package/dist/chunk-67BNDGRK.js +20 -0
  4. package/dist/chunk-67BNDGRK.js.map +1 -0
  5. package/dist/{chunk-3FR7BFAW.js → chunk-PFYKJ6LX.js} +56 -4
  6. package/dist/chunk-PFYKJ6LX.js.map +1 -0
  7. package/dist/{chunk-3QFDSYKC.js → chunk-RTGZDLSG.js} +523 -172
  8. package/dist/chunk-RTGZDLSG.js.map +1 -0
  9. package/dist/cli.js +763 -32
  10. package/dist/cli.js.map +1 -1
  11. package/dist/computer/connection-change.d.ts +13 -0
  12. package/dist/computer/connection-flow.d.ts +3 -3
  13. package/dist/computer/directory-http.d.ts +8 -0
  14. package/dist/computer/discovery.d.ts +13 -0
  15. package/dist/computer/lifecycle.d.ts +2 -1
  16. package/dist/computer/managed-relay.d.ts +27 -0
  17. package/dist/computer/oblien-auth.d.ts +25 -0
  18. package/dist/computer/provider-errors.d.ts +9 -0
  19. package/dist/computer/provider-info.d.ts +7 -0
  20. package/dist/computer/provider-setup.d.ts +20 -0
  21. package/dist/computer/relay-health.d.ts +2 -2
  22. package/dist/computer/relay.d.ts +11 -3
  23. package/dist/computer/setup-prompt.d.ts +9 -0
  24. package/dist/computer.d.ts +27 -1
  25. package/dist/connection-change-IBNL42BL.js +41 -0
  26. package/dist/connection-change-IBNL42BL.js.map +1 -0
  27. package/dist/{controller-AGT6MCJG.js → controller-2SJLZMJZ.js} +199 -279
  28. package/dist/controller-2SJLZMJZ.js.map +1 -0
  29. package/dist/{controller-handoff-3LAYBJUL.js → controller-handoff-RUUHODNC.js} +4 -4
  30. package/dist/{controller-handoff-3LAYBJUL.js.map → controller-handoff-RUUHODNC.js.map} +1 -1
  31. package/dist/index.cjs +12 -3
  32. package/dist/index.cjs.map +1 -1
  33. package/dist/index.js +12 -3
  34. package/dist/index.js.map +1 -1
  35. package/package.json +5 -5
  36. package/dist/binary-cache-VM7VHCEU.js +0 -4
  37. package/dist/chunk-3FR7BFAW.js.map +0 -1
  38. package/dist/chunk-3QFDSYKC.js.map +0 -1
  39. package/dist/controller-AGT6MCJG.js.map +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mindwire",
3
- "version": "0.1.34",
3
+ "version": "0.1.36",
4
4
  "main": "./dist/index.cjs",
5
5
  "module": "./dist/index.js",
6
6
  "bin": {
@@ -16,14 +16,10 @@
16
16
  "typescript": "5.9.3"
17
17
  },
18
18
  "peerDependencies": {
19
- "oblien": ">=2.2.0",
20
19
  "dockerode": ">=4.0.0",
21
20
  "ssh2": ">=1.15.0"
22
21
  },
23
22
  "peerDependenciesMeta": {
24
- "oblien": {
25
- "optional": true
26
- },
27
23
  "dockerode": {
28
24
  "optional": true
29
25
  },
@@ -78,7 +74,11 @@
78
74
  "type": "module",
79
75
  "types": "./dist/index.d.ts",
80
76
  "dependencies": {
77
+ "oblien": "^2.5.0",
81
78
  "qrcode": "^1.5.4",
82
79
  "ws": "^8.18.3"
80
+ },
81
+ "optionalDependencies": {
82
+ "@ngrok/ngrok": "^1.7.0"
83
83
  }
84
84
  }
@@ -1,4 +0,0 @@
1
- export { binaryCacheDirectory, cacheExecutable, cachedExecutable, executableChecksum, verifyReleaseBytes } from './chunk-3FR7BFAW.js';
2
- import './chunk-T6TD76UA.js';
3
- //# sourceMappingURL=binary-cache-VM7VHCEU.js.map
4
- //# sourceMappingURL=binary-cache-VM7VHCEU.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/binary-cache.ts"],"names":[],"mappings":"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","file":"chunk-3FR7BFAW.js","sourcesContent":["// Shared verified executable cache for the daemon and optional connection helpers.\n// Node modules stay lazy so importing the SDK in a browser remains supported.\nimport { MindwireError } from \"./errors.js\";\n\nexport async function binaryCacheDirectory(platform = process.platform): Promise<string> {\n const path = await import(\"node:path\");\n const { homedir } = await import(\"node:os\");\n const homeDirectory = homedir();\n return platform === \"darwin\" ? path.join(homeDirectory, \"Library\", \"Caches\", \"mindwire\")\n : platform === \"win32\" ? path.join(process.env.LOCALAPPDATA ?? homeDirectory, \"mindwire\", \"Cache\")\n : path.join(process.env.XDG_CACHE_HOME ?? path.join(homeDirectory, \".cache\"), \"mindwire\");\n}\n\nexport async function executableChecksum(bytes: Uint8Array): Promise<string> {\n const { createHash } = await import(\"node:crypto\");\n return createHash(\"sha256\").update(bytes).digest(\"hex\");\n}\n\nexport async function verifyReleaseBytes(bytes: Uint8Array, expected: string, name: string): Promise<void> {\n if (!/^[a-f0-9]{64}$/i.test(expected) || await executableChecksum(bytes) !== expected.toLowerCase()) {\n throw new MindwireError(`mindwire: checksum verification failed for ${name}`);\n }\n}\n\nexport async function cachedExecutable(bin: string): Promise<string | undefined> {\n const fs = await import(\"node:fs/promises\");\n try {\n const [bytes, checksum] = await Promise.all([fs.readFile(bin), fs.readFile(`${bin}.sha256`, \"utf8\")]);\n await verifyReleaseBytes(bytes, checksum.trim(), bin);\n return bin;\n } catch { return undefined; }\n}\n\nexport async function cacheExecutable(bin: string, bytes: Uint8Array, expected: string): Promise<string> {\n await verifyReleaseBytes(bytes, expected, bin);\n const fs = await import(\"node:fs/promises\");\n const { dirname } = await import(\"node:path\");\n const { randomUUID } = await import(\"node:crypto\");\n await fs.mkdir(dirname(bin), { recursive: true, mode: 0o700 });\n // Unique temporary names also cover concurrent acquisitions in the same process.\n const temp = `${bin}.${randomUUID()}.tmp`;\n try {\n await fs.writeFile(temp, bytes, { mode: 0o755, flag: \"wx\" });\n await fs.writeFile(`${temp}.sha256`, `${expected.toLowerCase()}\\n`, { mode: 0o600, flag: \"wx\" });\n await fs.rename(temp, bin);\n await fs.rename(`${temp}.sha256`, `${bin}.sha256`);\n return bin;\n } finally {\n await fs.rm(temp, { force: true });\n await fs.rm(`${temp}.sha256`, { force: true });\n }\n}\n"]}