@runa-cmd/help 0.1.0 → 0.2.0-beta.0

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.
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,KAAK,EAAyC,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAM1F,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEpD;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,IAAI,GAAE,iBAAsB,GAAG,YAAY,CAyCrE"}
1
+ {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,KAAK,EAAyC,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAM1F,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEpD;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,IAAI,GAAE,iBAAsB,GAAG,YAAY,CAiDrE"}
package/dist/plugin.js CHANGED
@@ -38,9 +38,16 @@ export function helpPlugin(opts = {}) {
38
38
  termWidth: renderCtx.termWidth,
39
39
  });
40
40
  process.stdout.write(`${output}\n`);
41
- // Stop further lifecycle execution
41
+ // Stop further lifecycle execution. Do NOT call process.exit()
42
+ // by default — core owns the process lifecycle: cleanup hooks and
43
+ // plugin cleanup() run, cli.run() resolves, and the process exits
44
+ // naturally with code 0 (same pattern as @runa-cmd/mcp).
42
45
  ctx.shortCircuit?.();
43
- process.exit(0);
46
+ if (opts.exitOnHelp) {
47
+ // Opt-in v0.1.0 behavior. shortCircuit was called FIRST so the
48
+ // flag is set even if exit is intercepted (e.g. mocked in tests).
49
+ process.exit(0);
50
+ }
44
51
  });
45
52
  },
46
53
  });
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAG1C;;;;GAIG;AACH,MAAM,UAAU,UAAU,CAAC,OAA0B,EAAE;IACtD,OAAO,YAAY,CAAC;QACnB,IAAI,EAAE;YACL,IAAI,EAAE,gBAAgB;YACtB,OAAO,EAAE,OAAO;YAChB,WAAW,EAAE,yDAAyD;SACtE;QACD,YAAY,EAAE,EAAE,gBAAgB,EAAE,IAAI,EAAE;QACxC,KAAK,CAAC,GAAG;YACR,4CAA4C;YAC5C,GAAG,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE;gBACxF,KAAK,EAAE,CAAC,IAAI,CAAC;aACb,CAAC,CAAC;YAEH,mCAAmC;YACnC,GAAG,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,GAAgB,EAAE,EAAE;gBAC9C,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,IAAI;oBAAE,OAAO;gBAErC,MAAM,MAAM,GAAG,GAAG,CAAC,SAAS,EAAE,CAAC;gBAC/B,MAAM,SAAS,GAAG,gBAAgB,EAAE,CAAC;gBACrC,MAAM,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;gBAElD,oDAAoD;gBACpD,MAAM,MAAM,GAAG,aAAa,CAAC,MAAM,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;gBAElD,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,IAAI,eAAe,CAAC;gBAChD,MAAM,MAAM,GAAG,QAAQ,CAAC;oBACvB,MAAM,EAAE,MAAM;oBACd,KAAK;oBACL,UAAU,EAAE,SAAS,CAAC,UAAU;oBAChC,SAAS,EAAE,SAAS,CAAC,SAAS;iBAC9B,CAAC,CAAC;gBAEH,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,IAAI,CAAC,CAAC;gBAEpC,mCAAmC;gBACnC,GAAG,CAAC,YAAY,EAAE,EAAE,CAAC;gBACrB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACjB,CAAC,CAAC,CAAC;QACJ,CAAC;KACD,CAAC,CAAC;AACJ,CAAC;AAED,+DAA+D;AAE/D;;;;GAIG;AACH,SAAS,aAAa,CAAC,MAAiB,EAAE,OAAiB;IAC1D,yCAAyC;IACzC,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;IACxD,IAAI,CAAC,OAAO;QAAE,OAAO,MAAM,CAAC;IAE5B,4BAA4B;IAC5B,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;IAClE,OAAO,KAAK,IAAI,MAAM,CAAC;AACxB,CAAC"}
1
+ {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAG1C;;;;GAIG;AACH,MAAM,UAAU,UAAU,CAAC,OAA0B,EAAE;IACtD,OAAO,YAAY,CAAC;QACnB,IAAI,EAAE;YACL,IAAI,EAAE,gBAAgB;YACtB,OAAO,EAAE,OAAO;YAChB,WAAW,EAAE,yDAAyD;SACtE;QACD,YAAY,EAAE,EAAE,gBAAgB,EAAE,IAAI,EAAE;QACxC,KAAK,CAAC,GAAG;YACR,4CAA4C;YAC5C,GAAG,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE;gBACxF,KAAK,EAAE,CAAC,IAAI,CAAC;aACb,CAAC,CAAC;YAEH,mCAAmC;YACnC,GAAG,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,GAAgB,EAAE,EAAE;gBAC9C,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,IAAI;oBAAE,OAAO;gBAErC,MAAM,MAAM,GAAG,GAAG,CAAC,SAAS,EAAE,CAAC;gBAC/B,MAAM,SAAS,GAAG,gBAAgB,EAAE,CAAC;gBACrC,MAAM,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;gBAElD,oDAAoD;gBACpD,MAAM,MAAM,GAAG,aAAa,CAAC,MAAM,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;gBAElD,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,IAAI,eAAe,CAAC;gBAChD,MAAM,MAAM,GAAG,QAAQ,CAAC;oBACvB,MAAM,EAAE,MAAM;oBACd,KAAK;oBACL,UAAU,EAAE,SAAS,CAAC,UAAU;oBAChC,SAAS,EAAE,SAAS,CAAC,SAAS;iBAC9B,CAAC,CAAC;gBAEH,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,IAAI,CAAC,CAAC;gBAEpC,+DAA+D;gBAC/D,kEAAkE;gBAClE,kEAAkE;gBAClE,yDAAyD;gBACzD,GAAG,CAAC,YAAY,EAAE,EAAE,CAAC;gBAErB,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;oBACrB,+DAA+D;oBAC/D,kEAAkE;oBAClE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBACjB,CAAC;YACF,CAAC,CAAC,CAAC;QACJ,CAAC;KACD,CAAC,CAAC;AACJ,CAAC;AAED,+DAA+D;AAE/D;;;;GAIG;AACH,SAAS,aAAa,CAAC,MAAiB,EAAE,OAAiB;IAC1D,yCAAyC;IACzC,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;IACxD,IAAI,CAAC,OAAO;QAAE,OAAO,MAAM,CAAC;IAE5B,4BAA4B;IAC5B,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;IAClE,OAAO,KAAK,IAAI,MAAM,CAAC;AACxB,CAAC"}
package/dist/types.d.ts CHANGED
@@ -56,5 +56,12 @@ export interface HelpPluginOptions {
56
56
  theme?: Partial<Theme>;
57
57
  /** Custom render function (Layer 3 — full control) */
58
58
  render?: (ctx: RenderFnCtx) => string;
59
+ /**
60
+ * Call process.exit(0) after rendering help. Default: false —
61
+ * the lifecycle short-circuits instead, so cleanup hooks run and
62
+ * cli.run() resolves (required for embedding/testing). Set to true
63
+ * to restore the v0.1.0 hard-exit behavior.
64
+ */
65
+ exitOnHelp?: boolean;
59
66
  }
60
67
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAI/D,0EAA0E;AAC1E,MAAM,MAAM,KAAK,GAAG,MAAM,CAAC;AAI3B,2CAA2C;AAC3C,MAAM,MAAM,UAAU,GAAG,WAAW,GAAG,KAAK,GAAG,IAAI,GAAG,MAAM,CAAC;AAE7D,qFAAqF;AACrF,MAAM,WAAW,aAAa;IAC7B,UAAU,EAAE,UAAU,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;CAClB;AAID,uFAAuF;AACvF,MAAM,WAAW,KAAK;IACrB,sBAAsB;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,mCAAmC;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,6BAA6B;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,qBAAqB;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,eAAe;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,qBAAqB;IACrB,OAAO,EAAE,MAAM,CAAC;CAChB;AAED,kEAAkE;AAClE,MAAM,WAAW,aAAa;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CAChB;AAID,yDAAyD;AACzD,MAAM,WAAW,WAAW;IAC3B,0DAA0D;IAC1D,MAAM,EAAE,SAAS,GAAG,aAAa,CAAC;IAClC,4CAA4C;IAC5C,KAAK,EAAE,aAAa,CAAC;IACrB,2BAA2B;IAC3B,UAAU,EAAE,UAAU,CAAC;IACvB,gCAAgC;IAChC,SAAS,EAAE,MAAM,CAAC;CAClB;AAID,+BAA+B;AAC/B,MAAM,WAAW,iBAAiB;IACjC,wDAAwD;IACxD,KAAK,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IACvB,sDAAsD;IACtD,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,WAAW,KAAK,MAAM,CAAC;CACtC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAI/D,0EAA0E;AAC1E,MAAM,MAAM,KAAK,GAAG,MAAM,CAAC;AAI3B,2CAA2C;AAC3C,MAAM,MAAM,UAAU,GAAG,WAAW,GAAG,KAAK,GAAG,IAAI,GAAG,MAAM,CAAC;AAE7D,qFAAqF;AACrF,MAAM,WAAW,aAAa;IAC7B,UAAU,EAAE,UAAU,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;CAClB;AAID,uFAAuF;AACvF,MAAM,WAAW,KAAK;IACrB,sBAAsB;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,mCAAmC;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,6BAA6B;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,qBAAqB;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,eAAe;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,qBAAqB;IACrB,OAAO,EAAE,MAAM,CAAC;CAChB;AAED,kEAAkE;AAClE,MAAM,WAAW,aAAa;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CAChB;AAID,yDAAyD;AACzD,MAAM,WAAW,WAAW;IAC3B,0DAA0D;IAC1D,MAAM,EAAE,SAAS,GAAG,aAAa,CAAC;IAClC,4CAA4C;IAC5C,KAAK,EAAE,aAAa,CAAC;IACrB,2BAA2B;IAC3B,UAAU,EAAE,UAAU,CAAC;IACvB,gCAAgC;IAChC,SAAS,EAAE,MAAM,CAAC;CAClB;AAID,+BAA+B;AAC/B,MAAM,WAAW,iBAAiB;IACjC,wDAAwD;IACxD,KAAK,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IACvB,sDAAsD;IACtD,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,WAAW,KAAK,MAAM,CAAC;IACtC;;;;;OAKG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CACrB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@runa-cmd/help",
3
- "version": "0.1.0",
3
+ "version": "0.2.0-beta.0",
4
4
  "description": "Themeable help output for Runa CLIs with composable layout primitives.",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -22,11 +22,11 @@
22
22
  }
23
23
  },
24
24
  "peerDependencies": {
25
- "zod": "^4.0.0",
26
- "@runa-cmd/core": "0.1.0"
25
+ "@runa-cmd/core": "^0.2.0-beta.0",
26
+ "zod": "^4.0.0"
27
27
  },
28
28
  "engines": {
29
- "node": ">=18.3.0"
29
+ "node": ">=24.0.0"
30
30
  },
31
31
  "publishConfig": {
32
32
  "access": "public"
@@ -48,7 +48,7 @@
48
48
  "@types/node": "^25.6.0",
49
49
  "typescript": "^6.0.2",
50
50
  "zod": "^4.3.6",
51
- "@runa-cmd/core": "0.1.0"
51
+ "@runa-cmd/core": "0.2.0-beta.0"
52
52
  },
53
53
  "scripts": {
54
54
  "build": "tsc",