adjacent-cli 0.1.1 → 0.1.2

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/CHANGELOG.md CHANGED
@@ -10,6 +10,10 @@
10
10
 
11
11
  ### 💡 Others
12
12
 
13
+ ## 0.1.2 - 2026-08-29
14
+
15
+ _This version does not introduce any user-facing changes._
16
+
13
17
  ## 0.1.1 - 2026-08-29
14
18
 
15
19
  _This version does not introduce any user-facing changes._
package/dist/bin.js CHANGED
@@ -7,27 +7,15 @@ import { runInitCommand } from "./init.js";
7
7
  import { DEV_COMMAND } from "./dev-channel.js";
8
8
  import { PROJECT_CHECKS } from "./checks.js";
9
9
  import { runDevCommand } from "./dev.js";
10
+ import { loadDevClient } from "./dev-client.js";
10
11
  import { runDoctor } from "./doctor.js";
11
- /*
12
- * Named through a variable so this stays a runtime lookup. The CLI does not
13
- * depend on the development client in either direction: the client is built on
14
- * the CLI, and depending back on it would be a cycle.
15
- */
16
- const DEV_CLIENT = "adjacent-dev-client";
17
- /**
18
- * Reaching a real device needs the Android toolchain, which is most of what
19
- * installing Adjacent would otherwise cost. It lives in its own package, loaded
20
- * only when a command asks for a device, so everything else stays light.
21
- */
22
12
  async function devClient() {
23
- try {
24
- return (await import(DEV_CLIENT));
25
- }
26
- catch {
27
- throw new Error("This needs the Adjacent development client, which carries the Android " +
28
- "toolchain:\n\n npm install --save-dev adjacent-dev-client\n\n" +
29
- "Everything else works without it.");
30
- }
13
+ const client = await loadDevClient();
14
+ if (client !== undefined)
15
+ return client;
16
+ throw new Error("This needs the Adjacent development client, which carries the Android " +
17
+ "toolchain:\n\n npm install --save-dev adjacent-dev-client\n\n" +
18
+ "Everything else works without it.");
31
19
  }
32
20
  const cli = cac("adj");
33
21
  function addAndroidTargetOptions(command) {
package/dist/bin.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"bin.js","sourceRoot":"","sources":["../src/bin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bin.js","sourceRoot":"","sources":["../src/bin.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ import type { AndroidDevOptions, AndroidInstallOptions } from "./arguments.js";
2
+ import type { DoctorCheck } from "./doctor.js";
3
+ /** The part of the development client the CLI reaches for. */
4
+ export interface DevClient {
5
+ readonly ANDROID_CHECKS: readonly DoctorCheck[];
6
+ readonly runAndroidDev: (options: AndroidDevOptions) => Promise<void>;
7
+ readonly runAndroidInstall: (options: AndroidInstallOptions) => Promise<void>;
8
+ }
9
+ export declare const DEV_CLIENT = "adjacent-dev-client";
10
+ /**
11
+ * Where the project keeps the development client, or undefined when it has none.
12
+ *
13
+ * Resolved from the project rather than from this file. `bunx adjacent-cli` and
14
+ * `npx adjacent-cli` run the CLI out of a cache, so a bare import looks in the
15
+ * cache: the copy someone has just installed into their project is invisible,
16
+ * and the command tells them to install what they already have.
17
+ */
18
+ export declare function devClientEntry(projectRoot: string): string | undefined;
19
+ /**
20
+ * Loads the development client, from the project first and from beside the CLI
21
+ * second, which is how a global install and this repository's own workspace
22
+ * both have it.
23
+ */
24
+ export declare function loadDevClient(projectRoot?: string): Promise<DevClient | undefined>;
25
+ //# sourceMappingURL=dev-client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dev-client.d.ts","sourceRoot":"","sources":["../src/dev-client.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAC/E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE/C,8DAA8D;AAC9D,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,cAAc,EAAE,SAAS,WAAW,EAAE,CAAC;IAChD,QAAQ,CAAC,aAAa,EAAE,CAAC,OAAO,EAAE,iBAAiB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACtE,QAAQ,CAAC,iBAAiB,EAAE,CAAC,OAAO,EAAE,qBAAqB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/E;AAOD,eAAO,MAAM,UAAU,wBAAwB,CAAC;AAEhD;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAMtE;AAED;;;;GAIG;AACH,wBAAsB,aAAa,CACjC,WAAW,SAAgB,GAC1B,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC,CAWhC"}
@@ -0,0 +1,43 @@
1
+ import { createRequire } from "node:module";
2
+ import { join } from "node:path";
3
+ import { pathToFileURL } from "node:url";
4
+ /*
5
+ * Named through a variable so this stays a runtime lookup. The CLI does not
6
+ * depend on the development client in either direction: the client is built on
7
+ * the CLI, and depending back on it would be a cycle.
8
+ */
9
+ export const DEV_CLIENT = "adjacent-dev-client";
10
+ /**
11
+ * Where the project keeps the development client, or undefined when it has none.
12
+ *
13
+ * Resolved from the project rather than from this file. `bunx adjacent-cli` and
14
+ * `npx adjacent-cli` run the CLI out of a cache, so a bare import looks in the
15
+ * cache: the copy someone has just installed into their project is invisible,
16
+ * and the command tells them to install what they already have.
17
+ */
18
+ export function devClientEntry(projectRoot) {
19
+ try {
20
+ return createRequire(join(projectRoot, "package.json")).resolve(DEV_CLIENT);
21
+ }
22
+ catch {
23
+ return undefined;
24
+ }
25
+ }
26
+ /**
27
+ * Loads the development client, from the project first and from beside the CLI
28
+ * second, which is how a global install and this repository's own workspace
29
+ * both have it.
30
+ */
31
+ export async function loadDevClient(projectRoot = process.cwd()) {
32
+ const entry = devClientEntry(projectRoot);
33
+ if (entry !== undefined) {
34
+ return (await import(pathToFileURL(entry).href));
35
+ }
36
+ try {
37
+ return (await import(DEV_CLIENT));
38
+ }
39
+ catch {
40
+ return undefined;
41
+ }
42
+ }
43
+ //# sourceMappingURL=dev-client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dev-client.js","sourceRoot":"","sources":["../src/dev-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAYzC;;;;GAIG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,qBAAqB,CAAC;AAEhD;;;;;;;GAOG;AACH,MAAM,UAAU,cAAc,CAAC,WAAmB;IAChD,IAAI,CAAC;QACH,OAAO,aAAa,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAC9E,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,WAAW,GAAG,OAAO,CAAC,GAAG,EAAE;IAE3B,MAAM,KAAK,GAAG,cAAc,CAAC,WAAW,CAAC,CAAC;IAC1C,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,CAAC,MAAM,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAc,CAAC;IAChE,CAAC;IAED,IAAI,CAAC;QACH,OAAO,CAAC,MAAM,MAAM,CAAC,UAAU,CAAC,CAAc,CAAC;IACjD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "adjacent-cli",
3
- "version": "0.1.1",
3
+ "version": "0.1.2",
4
4
  "description": "The adj command: create and convert Adjacent apps, and run them on Android over a trusted tunnel.",
5
5
  "keywords": [
6
6
  "cli",