@reliverse/rempts 1.7.29 → 1.7.30

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 (128) hide show
  1. package/README.md +92 -29
  2. package/bin/{components/animate/animate.js → libs/animate/animate-mod.js} +1 -4
  3. package/bin/{components → libs}/anykey/anykey-mod.js +2 -2
  4. package/bin/libs/confirm/confirm-alias.d.ts +1 -0
  5. package/bin/libs/confirm/confirm-alias.js +2 -0
  6. package/bin/{components/confirm/confirm-prompt.js → libs/confirm/confirm-mod.js} +1 -1
  7. package/bin/{components → libs}/editor/editor-mod.js +8 -8
  8. package/bin/{components → libs}/figures/figures-mod.d.ts +2 -3
  9. package/bin/{components → libs}/figures/figures-mod.js +1 -2
  10. package/bin/libs/input/input-alias.d.ts +4 -0
  11. package/bin/libs/input/input-alias.js +4 -0
  12. package/bin/{components/input/input-prompt.js → libs/input/input-mod.js} +2 -2
  13. package/bin/libs/intro/intro-alias.d.ts +2 -0
  14. package/bin/libs/intro/intro-alias.js +3 -0
  15. package/bin/{components/intro/intro-start.js → libs/intro/intro-mod.js} +3 -3
  16. package/bin/libs/launcher/launcher-alias.d.ts +2 -0
  17. package/bin/libs/launcher/launcher-alias.js +2 -0
  18. package/bin/{components → libs}/launcher/launcher-mod.d.ts +37 -5
  19. package/bin/{components → libs}/launcher/launcher-mod.js +326 -205
  20. package/bin/{components → libs}/launcher/launcher-types.d.ts +1 -1
  21. package/bin/libs/launcher/trpc-orpc-support/completions.d.ts +4 -0
  22. package/bin/libs/launcher/trpc-orpc-support/completions.js +45 -0
  23. package/bin/libs/launcher/trpc-orpc-support/errors.d.ts +11 -0
  24. package/bin/libs/launcher/trpc-orpc-support/errors.js +10 -0
  25. package/bin/libs/launcher/trpc-orpc-support/index.d.ts +34 -0
  26. package/bin/libs/launcher/trpc-orpc-support/index.js +641 -0
  27. package/bin/libs/launcher/trpc-orpc-support/json-schema.d.ts +17 -0
  28. package/bin/libs/launcher/trpc-orpc-support/json-schema.js +168 -0
  29. package/bin/libs/launcher/trpc-orpc-support/json.d.ts +44 -0
  30. package/bin/libs/launcher/trpc-orpc-support/json.js +41 -0
  31. package/bin/libs/launcher/trpc-orpc-support/logging.d.ts +11 -0
  32. package/bin/libs/launcher/trpc-orpc-support/logging.js +26 -0
  33. package/bin/libs/launcher/trpc-orpc-support/parse-procedure.d.ts +2 -0
  34. package/bin/libs/launcher/trpc-orpc-support/parse-procedure.js +486 -0
  35. package/bin/libs/launcher/trpc-orpc-support/prompts.d.ts +18 -0
  36. package/bin/libs/launcher/trpc-orpc-support/prompts.js +534 -0
  37. package/bin/libs/launcher/trpc-orpc-support/standard-schema/contract.d.ts +53 -0
  38. package/bin/libs/launcher/trpc-orpc-support/standard-schema/contract.js +0 -0
  39. package/bin/libs/launcher/trpc-orpc-support/standard-schema/errors.d.ts +9 -0
  40. package/bin/libs/launcher/trpc-orpc-support/standard-schema/errors.js +47 -0
  41. package/bin/libs/launcher/trpc-orpc-support/standard-schema/utils.d.ts +3 -0
  42. package/bin/libs/launcher/trpc-orpc-support/standard-schema/utils.js +6 -0
  43. package/bin/libs/launcher/trpc-orpc-support/trpc-compat.d.ts +71 -0
  44. package/bin/libs/launcher/trpc-orpc-support/trpc-compat.js +11 -0
  45. package/bin/libs/launcher/trpc-orpc-support/types.d.ts +276 -0
  46. package/bin/libs/launcher/trpc-orpc-support/types.js +0 -0
  47. package/bin/libs/launcher/trpc-orpc-support/util.d.ts +9 -0
  48. package/bin/libs/launcher/trpc-orpc-support/util.js +9 -0
  49. package/bin/{components → libs}/msg-fmt/logger.js +1 -1
  50. package/bin/libs/multiselect/multiselect-alias.d.ts +1 -0
  51. package/bin/libs/multiselect/multiselect-alias.js +2 -0
  52. package/bin/{components/select → libs/multiselect}/multiselect-prompt.js +1 -1
  53. package/bin/{components → libs}/number/number-mod.js +1 -4
  54. package/bin/libs/outro/outro-alias.d.ts +2 -0
  55. package/bin/libs/outro/outro-alias.js +3 -0
  56. package/bin/{components/outro/outro-end.js → libs/outro/outro-mod.js} +2 -2
  57. package/bin/libs/select/aliases-alias.d.ts +1 -0
  58. package/bin/libs/select/aliases-alias.js +2 -0
  59. package/bin/{components → libs}/select/select-prompt.js +2 -2
  60. package/bin/{components → libs}/select/toggle-prompt.js +1 -1
  61. package/bin/libs/spinner/spinner-alias.d.ts +1 -0
  62. package/bin/libs/spinner/spinner-alias.js +2 -0
  63. package/bin/{components → libs}/spinner/spinner-mod.js +3 -1
  64. package/bin/{components → libs}/task/task-spin.js +1 -1
  65. package/bin/{utils → libs/utils}/colorize.d.ts +1 -1
  66. package/bin/{utils → libs/utils}/prevent.d.ts +1 -1
  67. package/bin/{utils → libs/utils}/prevent.js +2 -2
  68. package/bin/{utils → libs/utils}/prompt-end.d.ts +1 -1
  69. package/bin/{utils → libs/utils}/prompt-end.js +2 -2
  70. package/bin/{utils → libs/utils}/stream-text.d.ts +1 -1
  71. package/bin/{utils → libs/utils}/stream-text.js +2 -2
  72. package/bin/mod.d.ts +66 -41
  73. package/bin/mod.js +102 -66
  74. package/package.json +16 -2
  75. package/bin/components/aliases/aliases-mod.d.ts +0 -11
  76. package/bin/components/aliases/aliases-mod.js +0 -16
  77. /package/bin/{components/animate/animate.d.ts → libs/animate/animate-mod.d.ts} +0 -0
  78. /package/bin/{components → libs}/anykey/anykey-mod.d.ts +0 -0
  79. /package/bin/{components → libs}/cancel/cancel.d.ts +0 -0
  80. /package/bin/{components → libs}/cancel/cancel.js +0 -0
  81. /package/bin/{components/confirm/confirm-prompt.d.ts → libs/confirm/confirm-mod.d.ts} +0 -0
  82. /package/bin/{components → libs}/date/date.d.ts +0 -0
  83. /package/bin/{components → libs}/date/date.js +0 -0
  84. /package/bin/{components → libs}/editor/editor-mod.d.ts +0 -0
  85. /package/bin/{components/input/input-prompt.d.ts → libs/input/input-mod.d.ts} +0 -0
  86. /package/bin/{components/intro/intro-start.d.ts → libs/intro/intro-mod.d.ts} +0 -0
  87. /package/bin/{components → libs}/launcher/launcher-types.js +0 -0
  88. /package/bin/{components → libs}/launcher/run-command.d.ts +0 -0
  89. /package/bin/{components → libs}/launcher/run-command.js +0 -0
  90. /package/bin/{components/log/log.d.ts → libs/log/log-alias.d.ts} +0 -0
  91. /package/bin/{components/log/log.js → libs/log/log-alias.js} +0 -0
  92. /package/bin/{components → libs}/msg-fmt/colors.d.ts +0 -0
  93. /package/bin/{components → libs}/msg-fmt/colors.js +0 -0
  94. /package/bin/{components → libs}/msg-fmt/logger.d.ts +0 -0
  95. /package/bin/{components → libs}/msg-fmt/mapping.d.ts +0 -0
  96. /package/bin/{components → libs}/msg-fmt/mapping.js +0 -0
  97. /package/bin/{components → libs}/msg-fmt/messages.d.ts +0 -0
  98. /package/bin/{components → libs}/msg-fmt/messages.js +0 -0
  99. /package/bin/{components → libs}/msg-fmt/terminal.d.ts +0 -0
  100. /package/bin/{components → libs}/msg-fmt/terminal.js +0 -0
  101. /package/bin/{components → libs}/msg-fmt/variants.d.ts +0 -0
  102. /package/bin/{components → libs}/msg-fmt/variants.js +0 -0
  103. /package/bin/{components/select → libs/multiselect}/multiselect-prompt.d.ts +0 -0
  104. /package/bin/{components → libs}/next-steps/next-steps.d.ts +0 -0
  105. /package/bin/{components → libs}/next-steps/next-steps.js +0 -0
  106. /package/bin/{components → libs}/number/number-mod.d.ts +0 -0
  107. /package/bin/{components/outro/outro-end.d.ts → libs/outro/outro-mod.d.ts} +0 -0
  108. /package/bin/{components → libs}/results/results.d.ts +0 -0
  109. /package/bin/{components → libs}/results/results.js +0 -0
  110. /package/bin/{components → libs}/select/nummultiselect-prompt.d.ts +0 -0
  111. /package/bin/{components → libs}/select/nummultiselect-prompt.js +0 -0
  112. /package/bin/{components → libs}/select/numselect-prompt.d.ts +0 -0
  113. /package/bin/{components → libs}/select/numselect-prompt.js +0 -0
  114. /package/bin/{components → libs}/select/select-prompt.d.ts +0 -0
  115. /package/bin/{components → libs}/select/toggle-prompt.d.ts +0 -0
  116. /package/bin/{components → libs}/spinner/spinner-mod.d.ts +0 -0
  117. /package/bin/{components → libs}/task/progress.d.ts +0 -0
  118. /package/bin/{components → libs}/task/progress.js +0 -0
  119. /package/bin/{components → libs}/task/task-spin.d.ts +0 -0
  120. /package/bin/{utils → libs/utils}/colorize.js +0 -0
  121. /package/bin/{utils → libs/utils}/errors.d.ts +0 -0
  122. /package/bin/{utils → libs/utils}/errors.js +0 -0
  123. /package/bin/{utils → libs/utils}/system.d.ts +0 -0
  124. /package/bin/{utils → libs/utils}/system.js +0 -0
  125. /package/bin/{utils → libs/utils}/validate.d.ts +0 -0
  126. /package/bin/{utils → libs/utils}/validate.js +0 -0
  127. /package/bin/{components/ascii-art/ascii-art.d.ts → libs/visual/visual-mod.d.ts} +0 -0
  128. /package/bin/{components/ascii-art/ascii-art.js → libs/visual/visual-mod.js} +0 -0
@@ -142,7 +142,7 @@ export type InferArgTypes<A extends ArgDefinitions> = {
142
142
  type: "array";
143
143
  } ? string[] : never;
144
144
  };
145
- export interface FileBasedCmdsOptions {
145
+ export interface FileBasedOptions {
146
146
  enable: boolean;
147
147
  cmdsRootPath: string;
148
148
  }
@@ -0,0 +1,4 @@
1
+ import type { Command } from "commander";
2
+ import type { OmeletteInstanceLike } from "./types";
3
+ /** uses omelette to add completions to a commander program */
4
+ export declare function addCompletions(program: Command, completion: OmeletteInstanceLike): void;
@@ -0,0 +1,45 @@
1
+ export function addCompletions(program, completion) {
2
+ const commandSymbol = Symbol("command");
3
+ const cTree = {};
4
+ function addCommandCompletions(command, cTreeNode) {
5
+ command.commands.forEach((c) => {
6
+ const node = cTreeNode[c.name()] ||= {};
7
+ Object.defineProperty(node, commandSymbol, {
8
+ value: c,
9
+ enumerable: false
10
+ });
11
+ addCommandCompletions(c, node);
12
+ });
13
+ }
14
+ addCommandCompletions(program, cTree);
15
+ completion.on("complete", (fragment, params) => {
16
+ const segments = params.line.split(/ +/).slice(1, params.fragment);
17
+ const last = segments.at(-1);
18
+ let node = cTree;
19
+ const existingFlags = /* @__PURE__ */ new Set();
20
+ for (const segment of segments) {
21
+ if (segment.startsWith("-")) {
22
+ existingFlags.add(segment);
23
+ continue;
24
+ }
25
+ if (existingFlags.size > 0) continue;
26
+ node = node[segment];
27
+ if (!node) return;
28
+ }
29
+ const correspondingCommand = node[commandSymbol];
30
+ if (correspondingCommand?.options?.length) {
31
+ const suggestions = [];
32
+ for (const o of correspondingCommand.options) {
33
+ if (last === o.long || last === o.short) {
34
+ if (o.argChoices) suggestions.push(...o.argChoices);
35
+ if (!o.isBoolean()) break;
36
+ }
37
+ if (existingFlags.has(o.long)) continue;
38
+ if (existingFlags.has(o.short)) continue;
39
+ suggestions.push(o.long);
40
+ }
41
+ return params.reply(suggestions);
42
+ }
43
+ });
44
+ completion.tree(cTree).init();
45
+ }
@@ -0,0 +1,11 @@
1
+ /** An error thrown when the trpc procedure results in a bad request */
2
+ export declare class CliValidationError extends Error {
3
+ }
4
+ /** An error which is only thrown when a custom \`process\` parameter is used. Under normal circumstances, this should not be used, even internally. */
5
+ export declare class FailedToExitError extends Error {
6
+ readonly exitCode: number;
7
+ constructor(message: string, { exitCode, cause }: {
8
+ exitCode: number;
9
+ cause: unknown;
10
+ });
11
+ }
@@ -0,0 +1,10 @@
1
+ export class CliValidationError extends Error {
2
+ }
3
+ export class FailedToExitError extends Error {
4
+ exitCode;
5
+ constructor(message, { exitCode, cause }) {
6
+ const fullMessage = `${message}. The process was expected to exit with exit code ${exitCode} but did not. This may be because a custom \`process\` parameter was used. The exit reason is in the \`cause\` property.`;
7
+ super(fullMessage, { cause });
8
+ this.exitCode = exitCode;
9
+ }
10
+ }
@@ -0,0 +1,34 @@
1
+ import { Command as BaseCommand } from "commander";
2
+ import type { AnyRouter } from "./trpc-compat";
3
+ import type { ParsedProcedure, TrpcCli, TrpcCliMeta, TrpcCliParams } from "./types";
4
+ export * from "./types";
5
+ export { z } from "zod/v4";
6
+ export * as zod from "zod";
7
+ export * as trpcServer from "@trpc/server";
8
+ export declare class TrpcCommand extends BaseCommand {
9
+ /** @internal track the commands that have been run, so that we can find the `__result` of the last command */
10
+ __ran: TrpcCommand[];
11
+ __input?: unknown;
12
+ /** @internal stash the return value of the underlying procedure on the command so to pass to `FailedToExitError` for use in a pinch */
13
+ __result?: unknown;
14
+ }
15
+ /**
16
+ * @internal takes a trpc router and returns an object that you **could** use to build a CLI, or UI, or a bunch of other things with.
17
+ * Officially, just internal for building a CLI. GLHF.
18
+ */
19
+ export declare const parseRouter: <R extends AnyRouter>({ router, ...params }: TrpcCliParams<R>) => [string, ProcedureInfo][];
20
+ interface ProcedureInfo {
21
+ meta: TrpcCliMeta;
22
+ parsedProcedure: ParsedProcedure;
23
+ incompatiblePairs: [string, string][];
24
+ procedure: {};
25
+ }
26
+ /**
27
+ * Run a trpc router as a CLI.
28
+ *
29
+ * @param router A trpc router
30
+ * @param context The context to use when calling the procedures - needed if your router requires a context
31
+ * @param trpcServer The trpc server module to use. Only needed if using trpc v10.
32
+ * @returns A CLI object with a `run` method that can be called to run the CLI. The `run` method will parse the command line arguments, call the appropriate trpc procedure, log the result and exit the process. On error, it will log the error and exit with a non-zero exit code.
33
+ */
34
+ export declare function createRpcCli<R extends AnyRouter>({ router, ...params }: TrpcCliParams<R>): TrpcCli;