zod-args-parser 1.2.6 → 1.2.8

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 (239) hide show
  1. package/README.md +19 -19
  2. package/lib/commonjs/autocomplete-scripts/{bash-autocomplete-script.js → bash-autocomplete-script.cjs} +2 -2
  3. package/lib/commonjs/autocomplete-scripts/bash-autocomplete-script.cjs.map +1 -0
  4. package/lib/commonjs/autocomplete-scripts/{powershell-autocomplete-script.js → powershell-autocomplete-script.cjs} +3 -3
  5. package/lib/commonjs/autocomplete-scripts/powershell-autocomplete-script.cjs.map +1 -0
  6. package/lib/commonjs/autocomplete-scripts/{zsh-autocomplete-script.js → zsh-autocomplete-script.cjs} +4 -4
  7. package/lib/commonjs/autocomplete-scripts/zsh-autocomplete-script.cjs.map +1 -0
  8. package/lib/commonjs/help-message/format-arguments.cjs +1 -0
  9. package/lib/commonjs/help-message/format-arguments.cjs.map +1 -0
  10. package/lib/commonjs/help-message/format-cli.cjs +1 -0
  11. package/lib/commonjs/help-message/format-cli.cjs.map +1 -0
  12. package/lib/commonjs/help-message/format-options.cjs +1 -0
  13. package/lib/commonjs/help-message/format-options.cjs.map +1 -0
  14. package/lib/commonjs/help-message/format-subcommands.cjs +1 -0
  15. package/lib/commonjs/help-message/format-subcommands.cjs.map +1 -0
  16. package/lib/commonjs/help-message/styles.cjs +1 -0
  17. package/lib/commonjs/help-message/styles.cjs.map +1 -0
  18. package/lib/commonjs/index.cjs +1 -0
  19. package/lib/commonjs/index.cjs.map +1 -0
  20. package/lib/commonjs/markdown/generate-markdown.cjs +1 -0
  21. package/lib/commonjs/markdown/generate-markdown.cjs.map +1 -0
  22. package/lib/commonjs/metadata/get-arguments-metadata.cjs +1 -0
  23. package/lib/commonjs/metadata/get-arguments-metadata.cjs.map +1 -0
  24. package/lib/commonjs/metadata/get-cli-metadata.cjs +1 -0
  25. package/lib/commonjs/metadata/{get-cli-metadata.js.map → get-cli-metadata.cjs.map} +1 -1
  26. package/lib/commonjs/metadata/get-options-metadata.cjs +1 -0
  27. package/lib/commonjs/metadata/get-options-metadata.cjs.map +1 -0
  28. package/lib/commonjs/metadata/get-subcommands-metadata.cjs +1 -0
  29. package/lib/commonjs/metadata/get-subcommands-metadata.cjs.map +1 -0
  30. package/lib/commonjs/parser/parse/parse.cjs +1 -0
  31. package/lib/commonjs/parser/parse/parse.cjs.map +1 -0
  32. package/lib/commonjs/parser/parse/parser-helpers.cjs +1 -0
  33. package/lib/commonjs/parser/parse/parser-helpers.cjs.map +1 -0
  34. package/lib/commonjs/parser/safe-parse.cjs +1 -0
  35. package/lib/commonjs/parser/safe-parse.cjs.map +1 -0
  36. package/lib/commonjs/parser/unsafe-parse.cjs +1 -0
  37. package/lib/commonjs/parser/unsafe-parse.cjs.map +1 -0
  38. package/lib/commonjs/parser/validate/validate-type.cjs.map +1 -0
  39. package/lib/commonjs/parser/validate/validate.cjs +1 -0
  40. package/lib/commonjs/parser/validate/validate.cjs.map +1 -0
  41. package/lib/commonjs/utilities.cjs +1 -0
  42. package/lib/commonjs/utilities.cjs.map +1 -0
  43. package/lib/commonjs/zod-utilities.cjs +1 -0
  44. package/lib/commonjs/zod-utilities.cjs.map +1 -0
  45. package/lib/module/autocomplete-scripts/{bash-autocomplete-script.js → bash-autocomplete-script.mjs} +2 -2
  46. package/lib/module/autocomplete-scripts/bash-autocomplete-script.mjs.map +1 -0
  47. package/lib/module/autocomplete-scripts/powershell-autocomplete-script.mjs +31 -0
  48. package/lib/module/autocomplete-scripts/powershell-autocomplete-script.mjs.map +1 -0
  49. package/lib/module/autocomplete-scripts/{zsh-autocomplete-script.js → zsh-autocomplete-script.mjs} +4 -4
  50. package/lib/module/autocomplete-scripts/zsh-autocomplete-script.mjs.map +1 -0
  51. package/lib/module/help-message/format-arguments.mjs +1 -0
  52. package/lib/module/help-message/format-arguments.mjs.map +1 -0
  53. package/lib/module/help-message/format-cli.mjs +1 -0
  54. package/lib/module/help-message/format-cli.mjs.map +1 -0
  55. package/lib/module/help-message/format-options.mjs +1 -0
  56. package/lib/module/help-message/format-options.mjs.map +1 -0
  57. package/lib/module/help-message/format-subcommands.mjs +1 -0
  58. package/lib/module/help-message/format-subcommands.mjs.map +1 -0
  59. package/lib/module/help-message/styles.mjs +1 -0
  60. package/lib/module/help-message/styles.mjs.map +1 -0
  61. package/lib/module/index.mjs +1 -0
  62. package/lib/module/index.mjs.map +1 -0
  63. package/lib/module/markdown/generate-markdown.mjs +1 -0
  64. package/lib/module/markdown/generate-markdown.mjs.map +1 -0
  65. package/lib/module/metadata/get-arguments-metadata.mjs +1 -0
  66. package/lib/module/metadata/get-arguments-metadata.mjs.map +1 -0
  67. package/lib/module/metadata/get-cli-metadata.mjs +1 -0
  68. package/lib/module/metadata/{get-cli-metadata.js.map → get-cli-metadata.mjs.map} +1 -1
  69. package/lib/module/metadata/get-options-metadata.mjs +1 -0
  70. package/lib/module/metadata/get-options-metadata.mjs.map +1 -0
  71. package/lib/module/metadata/get-subcommands-metadata.mjs +1 -0
  72. package/lib/module/metadata/get-subcommands-metadata.mjs.map +1 -0
  73. package/lib/module/parser/parse/parse.mjs +1 -0
  74. package/lib/module/parser/parse/parse.mjs.map +1 -0
  75. package/lib/module/parser/parse/parser-helpers.mjs +1 -0
  76. package/lib/module/parser/parse/parser-helpers.mjs.map +1 -0
  77. package/lib/module/parser/safe-parse.mjs +1 -0
  78. package/lib/module/parser/safe-parse.mjs.map +1 -0
  79. package/lib/module/parser/unsafe-parse.mjs +1 -0
  80. package/lib/module/parser/unsafe-parse.mjs.map +1 -0
  81. package/lib/module/parser/validate/validate-type.mjs.map +1 -0
  82. package/lib/module/parser/validate/validate.mjs +1 -0
  83. package/lib/module/parser/validate/validate.mjs.map +1 -0
  84. package/lib/module/utilities.mjs +1 -0
  85. package/lib/module/utilities.mjs.map +1 -0
  86. package/lib/module/zod-utilities.mjs +1 -0
  87. package/lib/module/zod-utilities.mjs.map +1 -0
  88. package/lib/typescript/autocomplete-scripts/bash-autocomplete-script.d.ts +1 -1
  89. package/lib/typescript/autocomplete-scripts/bash-autocomplete-script.d.ts.map +1 -1
  90. package/lib/typescript/autocomplete-scripts/powershell-autocomplete-script.d.ts +1 -1
  91. package/lib/typescript/autocomplete-scripts/powershell-autocomplete-script.d.ts.map +1 -1
  92. package/lib/typescript/autocomplete-scripts/zsh-autocomplete-script.d.ts +1 -1
  93. package/lib/typescript/autocomplete-scripts/zsh-autocomplete-script.d.ts.map +1 -1
  94. package/lib/typescript/help-message/format-arguments.d.ts +2 -2
  95. package/lib/typescript/help-message/format-arguments.d.ts.map +1 -1
  96. package/lib/typescript/help-message/format-cli.d.ts +5 -5
  97. package/lib/typescript/help-message/format-cli.d.ts.map +1 -1
  98. package/lib/typescript/help-message/format-options.d.ts +2 -2
  99. package/lib/typescript/help-message/format-options.d.ts.map +1 -1
  100. package/lib/typescript/help-message/format-subcommands.d.ts +2 -2
  101. package/lib/typescript/help-message/format-subcommands.d.ts.map +1 -1
  102. package/lib/typescript/help-message/styles.d.ts +14 -13
  103. package/lib/typescript/help-message/styles.d.ts.map +1 -1
  104. package/lib/typescript/index.d.ts +10 -10
  105. package/lib/typescript/index.d.ts.map +1 -1
  106. package/lib/typescript/markdown/generate-markdown.d.ts +1 -1
  107. package/lib/typescript/markdown/generate-markdown.d.ts.map +1 -1
  108. package/lib/typescript/metadata/get-arguments-metadata.d.ts +1 -1
  109. package/lib/typescript/metadata/get-arguments-metadata.d.ts.map +1 -1
  110. package/lib/typescript/metadata/get-options-metadata.d.ts.map +1 -1
  111. package/lib/typescript/metadata/get-subcommands-metadata.d.ts.map +1 -1
  112. package/lib/typescript/parser/parse/parse-types.d.ts +5 -5
  113. package/lib/typescript/parser/parse/parse-types.d.ts.map +1 -1
  114. package/lib/typescript/parser/parse/parse.d.ts +2 -2
  115. package/lib/typescript/parser/parse/parse.d.ts.map +1 -1
  116. package/lib/typescript/parser/parse/parser-helpers.d.ts +7 -7
  117. package/lib/typescript/parser/parse/parser-helpers.d.ts.map +1 -1
  118. package/lib/typescript/parser/safe-parse.d.ts +2 -2
  119. package/lib/typescript/parser/safe-parse.d.ts.map +1 -1
  120. package/lib/typescript/parser/unsafe-parse.d.ts +2 -2
  121. package/lib/typescript/parser/unsafe-parse.d.ts.map +1 -1
  122. package/lib/typescript/parser/validate/validate-type.d.ts +4 -4
  123. package/lib/typescript/parser/validate/validate-type.d.ts.map +1 -1
  124. package/lib/typescript/parser/validate/validate.d.ts +4 -4
  125. package/lib/typescript/parser/validate/validate.d.ts.map +1 -1
  126. package/lib/typescript/types.d.ts +19 -15
  127. package/lib/typescript/types.d.ts.map +1 -1
  128. package/lib/typescript/{utils.d.ts → utilities.d.ts} +9 -9
  129. package/lib/typescript/utilities.d.ts.map +1 -0
  130. package/lib/typescript/{zod-utils.d.ts → zod-utilities.d.ts} +11 -10
  131. package/lib/typescript/zod-utilities.d.ts.map +1 -0
  132. package/package.json +17 -18
  133. package/src/autocomplete-scripts/bash-autocomplete-script.ts +10 -10
  134. package/src/autocomplete-scripts/powershell-autocomplete-script.ts +17 -15
  135. package/src/autocomplete-scripts/zsh-autocomplete-script.ts +8 -5
  136. package/src/help-message/format-arguments.ts +20 -13
  137. package/src/help-message/format-cli.ts +65 -45
  138. package/src/help-message/format-options.ts +19 -12
  139. package/src/help-message/format-subcommands.ts +9 -9
  140. package/src/help-message/styles.ts +18 -18
  141. package/src/index.ts +21 -21
  142. package/src/markdown/generate-markdown.ts +55 -55
  143. package/src/metadata/get-arguments-metadata.ts +10 -10
  144. package/src/metadata/get-options-metadata.ts +8 -6
  145. package/src/metadata/get-subcommands-metadata.ts +3 -1
  146. package/src/parser/parse/parse-types.ts +5 -5
  147. package/src/parser/parse/parse.ts +67 -64
  148. package/src/parser/parse/parser-helpers.ts +24 -25
  149. package/src/parser/safe-parse.ts +24 -18
  150. package/src/parser/unsafe-parse.ts +34 -34
  151. package/src/parser/validate/validate-type.ts +4 -4
  152. package/src/parser/validate/validate.ts +17 -17
  153. package/src/types.ts +21 -17
  154. package/src/{utils.ts → utilities.ts} +44 -28
  155. package/src/zod-utilities.ts +214 -0
  156. package/lib/commonjs/autocomplete-scripts/bash-autocomplete-script.js.map +0 -1
  157. package/lib/commonjs/autocomplete-scripts/powershell-autocomplete-script.js.map +0 -1
  158. package/lib/commonjs/autocomplete-scripts/zsh-autocomplete-script.js.map +0 -1
  159. package/lib/commonjs/help-message/format-arguments.js +0 -1
  160. package/lib/commonjs/help-message/format-arguments.js.map +0 -1
  161. package/lib/commonjs/help-message/format-cli.js +0 -1
  162. package/lib/commonjs/help-message/format-cli.js.map +0 -1
  163. package/lib/commonjs/help-message/format-options.js +0 -1
  164. package/lib/commonjs/help-message/format-options.js.map +0 -1
  165. package/lib/commonjs/help-message/format-subcommands.js +0 -1
  166. package/lib/commonjs/help-message/format-subcommands.js.map +0 -1
  167. package/lib/commonjs/help-message/styles.js +0 -1
  168. package/lib/commonjs/help-message/styles.js.map +0 -1
  169. package/lib/commonjs/index.js +0 -1
  170. package/lib/commonjs/index.js.map +0 -1
  171. package/lib/commonjs/markdown/generate-markdown.js +0 -1
  172. package/lib/commonjs/markdown/generate-markdown.js.map +0 -1
  173. package/lib/commonjs/metadata/get-arguments-metadata.js +0 -1
  174. package/lib/commonjs/metadata/get-arguments-metadata.js.map +0 -1
  175. package/lib/commonjs/metadata/get-cli-metadata.js +0 -1
  176. package/lib/commonjs/metadata/get-options-metadata.js +0 -1
  177. package/lib/commonjs/metadata/get-options-metadata.js.map +0 -1
  178. package/lib/commonjs/metadata/get-subcommands-metadata.js +0 -1
  179. package/lib/commonjs/metadata/get-subcommands-metadata.js.map +0 -1
  180. package/lib/commonjs/parser/parse/parse.js +0 -1
  181. package/lib/commonjs/parser/parse/parse.js.map +0 -1
  182. package/lib/commonjs/parser/parse/parser-helpers.js +0 -1
  183. package/lib/commonjs/parser/parse/parser-helpers.js.map +0 -1
  184. package/lib/commonjs/parser/safe-parse.js +0 -1
  185. package/lib/commonjs/parser/safe-parse.js.map +0 -1
  186. package/lib/commonjs/parser/unsafe-parse.js +0 -1
  187. package/lib/commonjs/parser/unsafe-parse.js.map +0 -1
  188. package/lib/commonjs/parser/validate/validate-type.js.map +0 -1
  189. package/lib/commonjs/parser/validate/validate.js +0 -1
  190. package/lib/commonjs/parser/validate/validate.js.map +0 -1
  191. package/lib/commonjs/utils.js +0 -1
  192. package/lib/commonjs/utils.js.map +0 -1
  193. package/lib/commonjs/zod-utils.js +0 -1
  194. package/lib/commonjs/zod-utils.js.map +0 -1
  195. package/lib/module/autocomplete-scripts/bash-autocomplete-script.js.map +0 -1
  196. package/lib/module/autocomplete-scripts/powershell-autocomplete-script.js +0 -31
  197. package/lib/module/autocomplete-scripts/powershell-autocomplete-script.js.map +0 -1
  198. package/lib/module/autocomplete-scripts/zsh-autocomplete-script.js.map +0 -1
  199. package/lib/module/help-message/format-arguments.js +0 -1
  200. package/lib/module/help-message/format-arguments.js.map +0 -1
  201. package/lib/module/help-message/format-cli.js +0 -1
  202. package/lib/module/help-message/format-cli.js.map +0 -1
  203. package/lib/module/help-message/format-options.js +0 -1
  204. package/lib/module/help-message/format-options.js.map +0 -1
  205. package/lib/module/help-message/format-subcommands.js +0 -1
  206. package/lib/module/help-message/format-subcommands.js.map +0 -1
  207. package/lib/module/help-message/styles.js +0 -1
  208. package/lib/module/help-message/styles.js.map +0 -1
  209. package/lib/module/index.js +0 -1
  210. package/lib/module/index.js.map +0 -1
  211. package/lib/module/markdown/generate-markdown.js +0 -1
  212. package/lib/module/markdown/generate-markdown.js.map +0 -1
  213. package/lib/module/metadata/get-arguments-metadata.js +0 -1
  214. package/lib/module/metadata/get-arguments-metadata.js.map +0 -1
  215. package/lib/module/metadata/get-cli-metadata.js +0 -1
  216. package/lib/module/metadata/get-options-metadata.js +0 -1
  217. package/lib/module/metadata/get-options-metadata.js.map +0 -1
  218. package/lib/module/metadata/get-subcommands-metadata.js +0 -1
  219. package/lib/module/metadata/get-subcommands-metadata.js.map +0 -1
  220. package/lib/module/parser/parse/parse.js +0 -1
  221. package/lib/module/parser/parse/parse.js.map +0 -1
  222. package/lib/module/parser/parse/parser-helpers.js +0 -1
  223. package/lib/module/parser/parse/parser-helpers.js.map +0 -1
  224. package/lib/module/parser/safe-parse.js +0 -1
  225. package/lib/module/parser/safe-parse.js.map +0 -1
  226. package/lib/module/parser/unsafe-parse.js +0 -1
  227. package/lib/module/parser/unsafe-parse.js.map +0 -1
  228. package/lib/module/parser/validate/validate-type.js.map +0 -1
  229. package/lib/module/parser/validate/validate.js +0 -1
  230. package/lib/module/parser/validate/validate.js.map +0 -1
  231. package/lib/module/utils.js +0 -1
  232. package/lib/module/utils.js.map +0 -1
  233. package/lib/module/zod-utils.js +0 -1
  234. package/lib/module/zod-utils.js.map +0 -1
  235. package/lib/typescript/utils.d.ts.map +0 -1
  236. package/lib/typescript/zod-utils.d.ts.map +0 -1
  237. package/src/zod-utils.ts +0 -199
  238. /package/lib/commonjs/parser/validate/{validate-type.js → validate-type.cjs} +0 -0
  239. /package/lib/module/parser/validate/{validate-type.js → validate-type.mjs} +0 -0
@@ -7,7 +7,7 @@ import type { Option, Subcommand } from "../../types.js";
7
7
  * @param subcommandArr - An array of `Subcommand` objects to search within.
8
8
  * @returns The matching `Subcommand` object if found; otherwise, `undefined`.
9
9
  */
10
- export declare function findSubcommand(subCmdName: string | undefined, subcommandArr: Subcommand[]): Subcommand | undefined;
10
+ export declare function findSubcommand(subCmdName: string | undefined, subcommandArray: Subcommand[]): Subcommand | undefined;
11
11
  /**
12
12
  * Finds and returns an `Option` object from the provided list that matches the given argument string.
13
13
  *
@@ -17,24 +17,24 @@ export declare function findSubcommand(subCmdName: string | undefined, subcomman
17
17
  * @param options - An array of `Option` objects to search through.
18
18
  * @returns The matching `Option` object if found; otherwise, `undefined`.
19
19
  */
20
- export declare function findOption(optionArg: string, options: [Option, ...Option[]]): Option | undefined;
20
+ export declare function findOption(optionArgument: string, options: [Option, ...Option[]]): Option | undefined;
21
21
  /** - Decouple flags E.g. `-rf` -> `-r, -f` */
22
- export declare function decoupleFlags(args: string[]): string[];
22
+ export declare function decoupleFlags(arguments_: string[]): string[];
23
23
  /**
24
24
  * - Transforms an option argument name to a valid JavaScript variable name
25
25
  *
26
26
  * @param name - Should start with `'--'` or `'-'`
27
27
  */
28
- export declare function optionArgToVarNames(name: string): Set<string>;
28
+ export declare function optionArgumentToVariableNames(name: string): Set<string>;
29
29
  /** - Check if an arg string is a short arg. E.g. `-i` -> `true` */
30
- export declare function isFlagArg(name: string): boolean;
30
+ export declare function isFlagArgument(name: string): boolean;
31
31
  /** - Check if an arg string is an options arg. E.g. `--input-dir` -> `true` , `-i` -> `true` */
32
- export declare function isOptionArg(name: string | boolean): boolean;
32
+ export declare function isOptionArgument(name: string | boolean): boolean;
33
33
  /**
34
34
  * - Transform option name to no name. E.g. `include` -> `noInclude`
35
35
  * - For short name like `-i` it will be ignored
36
36
  */
37
37
  export declare function negateOption(name: string): string;
38
38
  /** - Reverse of `transformArg`. E.g. `InputDir` -> `--input-dir` , `i` -> `-i` */
39
- export declare function transformOptionToArg(name: string): string;
39
+ export declare function transformOptionToArgument(name: string): string;
40
40
  //# sourceMappingURL=parser-helpers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"parser-helpers.d.ts","sourceRoot":"","sources":["../../../../src/parser/parse/parser-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEzD;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,SAAS,EAAE,aAAa,EAAE,UAAU,EAAE,GAAG,UAAU,GAAG,SAAS,CAUlH;AAED;;;;;;;;GAQG;AACH,wBAAgB,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC,GAAG,MAAM,GAAG,SAAS,CA6BhG;AAED,8CAA8C;AAC9C,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAsBtD;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,CAyB7D;AAED,mEAAmE;AACnE,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAE/C;AAOD,gGAAgG;AAChG,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,GAAG,OAAO,CAM3D;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAMjD;AAED,kFAAkF;AAClF,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAezD"}
1
+ {"version":3,"file":"parser-helpers.d.ts","sourceRoot":"","sources":["../../../../src/parser/parse/parser-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEzD;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,SAAS,EAAE,eAAe,EAAE,UAAU,EAAE,GAAG,UAAU,GAAG,SAAS,CAUpH;AAED;;;;;;;;GAQG;AACH,wBAAgB,UAAU,CAAC,cAAc,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC,GAAG,MAAM,GAAG,SAAS,CA6BrG;AAED,8CAA8C;AAC9C,wBAAgB,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAqB5D;AAED;;;;GAIG;AACH,wBAAgB,6BAA6B,CAAC,IAAI,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,CAyBvE;AAED,mEAAmE;AACnE,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEpD;AAOD,gGAAgG;AAChG,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,GAAG,OAAO,CAMhE;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAMjD;AAED,kFAAkF;AAClF,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAe9D"}
@@ -1,4 +1,4 @@
1
1
  import type { Cli, NoSubcommand, SafeParseResult, Subcommand } from "../types.js";
2
- export declare function safeParse<T extends Subcommand[], U extends Cli>(argsv: string[], ...params: [U, ...T]): SafeParseResult<[...T, NoSubcommand & U]>;
3
- export declare function safeParseAsync<T extends Subcommand[], U extends Cli>(argsv: string[], ...params: [U, ...T]): Promise<SafeParseResult<[...T, NoSubcommand & U]>>;
2
+ export declare function safeParse<T extends Subcommand[], U extends Cli>(argsv: string[], ...parameters: [U, ...T]): SafeParseResult<[...T, NoSubcommand & U]>;
3
+ export declare function safeParseAsync<T extends Subcommand[], U extends Cli>(argsv: string[], ...parameters: [U, ...T]): Promise<SafeParseResult<[...T, NoSubcommand & U]>>;
4
4
  //# sourceMappingURL=safe-parse.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"safe-parse.d.ts","sourceRoot":"","sources":["../../../src/parser/safe-parse.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,GAAG,EAAE,YAAY,EAAgB,eAAe,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEhG,wBAAgB,SAAS,CAAC,CAAC,SAAS,UAAU,EAAE,EAAE,CAAC,SAAS,GAAG,EAC7D,KAAK,EAAE,MAAM,EAAE,EACf,GAAG,MAAM,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,GACnB,eAAe,CAAC,CAAC,GAAG,CAAC,EAAE,YAAY,GAAG,CAAC,CAAC,CAAC,CAyC3C;AAED,wBAAsB,cAAc,CAAC,CAAC,SAAS,UAAU,EAAE,EAAE,CAAC,SAAS,GAAG,EACxE,KAAK,EAAE,MAAM,EAAE,EACf,GAAG,MAAM,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,GACnB,OAAO,CAAC,eAAe,CAAC,CAAC,GAAG,CAAC,EAAE,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,CAyCpD"}
1
+ {"version":3,"file":"safe-parse.d.ts","sourceRoot":"","sources":["../../../src/parser/safe-parse.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,GAAG,EAAE,YAAY,EAAgB,eAAe,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEhG,wBAAgB,SAAS,CAAC,CAAC,SAAS,UAAU,EAAE,EAAE,CAAC,SAAS,GAAG,EAC7D,KAAK,EAAE,MAAM,EAAE,EACf,GAAG,UAAU,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,GACvB,eAAe,CAAC,CAAC,GAAG,CAAC,EAAE,YAAY,GAAG,CAAC,CAAC,CAAC,CA4C3C;AAED,wBAAsB,cAAc,CAAC,CAAC,SAAS,UAAU,EAAE,EAAE,CAAC,SAAS,GAAG,EACxE,KAAK,EAAE,MAAM,EAAE,EACf,GAAG,UAAU,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,GACvB,OAAO,CAAC,eAAe,CAAC,CAAC,GAAG,CAAC,EAAE,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,CA4CpD"}
@@ -1,4 +1,4 @@
1
1
  import type { Cli, NoSubcommand, Subcommand, UnsafeParseResult } from "../types.js";
2
- export declare function unsafeParse<T extends Subcommand[], U extends Cli>(argv: string[], ...params: [U, ...T]): UnsafeParseResult<[...T, NoSubcommand & U]>;
3
- export declare function unsafeParseAsync<T extends Subcommand[], U extends Cli>(argv: string[], ...params: [U, ...T]): Promise<UnsafeParseResult<[...T, NoSubcommand & U]>>;
2
+ export declare function unsafeParse<T extends Subcommand[], U extends Cli>(argv: string[], ...parameters: [U, ...T]): UnsafeParseResult<[...T, NoSubcommand & U]>;
3
+ export declare function unsafeParseAsync<T extends Subcommand[], U extends Cli>(argv: string[], ...parameters: [U, ...T]): Promise<UnsafeParseResult<[...T, NoSubcommand & U]>>;
4
4
  //# sourceMappingURL=unsafe-parse.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"unsafe-parse.d.ts","sourceRoot":"","sources":["../../../src/parser/unsafe-parse.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,GAAG,EAAE,YAAY,EAAgB,UAAU,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAElG,wBAAgB,WAAW,CAAC,CAAC,SAAS,UAAU,EAAE,EAAE,CAAC,SAAS,GAAG,EAC/D,IAAI,EAAE,MAAM,EAAE,EACd,GAAG,MAAM,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,GACnB,iBAAiB,CAAC,CAAC,GAAG,CAAC,EAAE,YAAY,GAAG,CAAC,CAAC,CAAC,CAyC7C;AAED,wBAAsB,gBAAgB,CAAC,CAAC,SAAS,UAAU,EAAE,EAAE,CAAC,SAAS,GAAG,EAC1E,IAAI,EAAE,MAAM,EAAE,EACd,GAAG,MAAM,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,GACnB,OAAO,CAAC,iBAAiB,CAAC,CAAC,GAAG,CAAC,EAAE,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,CAyCtD"}
1
+ {"version":3,"file":"unsafe-parse.d.ts","sourceRoot":"","sources":["../../../src/parser/unsafe-parse.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,GAAG,EAAoB,YAAY,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAEtG,wBAAgB,WAAW,CAAC,CAAC,SAAS,UAAU,EAAE,EAAE,CAAC,SAAS,GAAG,EAC/D,IAAI,EAAE,MAAM,EAAE,EACd,GAAG,UAAU,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,GACvB,iBAAiB,CAAC,CAAC,GAAG,CAAC,EAAE,YAAY,GAAG,CAAC,CAAC,CAAC,CAyC7C;AAED,wBAAsB,gBAAgB,CAAC,CAAC,SAAS,UAAU,EAAE,EAAE,CAAC,SAAS,GAAG,EAC1E,IAAI,EAAE,MAAM,EAAE,EACd,GAAG,UAAU,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,GACvB,OAAO,CAAC,iBAAiB,CAAC,CAAC,GAAG,CAAC,EAAE,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,CAyCtD"}
@@ -1,11 +1,11 @@
1
1
  import type { Argument, Option, Prettify, Schema, Subcommand, ToOptional, ZodInferOutput } from "../../types.js";
2
2
  import type { ParseResult } from "../parse/parse-types.js";
3
- type OptionsArr2RecordType<T extends Option[] | undefined> = T extends Option[] ? ToOptional<{
3
+ type OptionsArray2RecordType<T extends Option[] | undefined> = T extends Option[] ? ToOptional<{
4
4
  [K in T[number]["name"]]: ZodInferOutput<Extract<T[number], {
5
5
  name: K;
6
6
  }>["type"]>;
7
7
  }> : object;
8
- type ArgumentsArr2ArrType<T extends Argument[] | undefined> = T extends Argument[] ? {
8
+ type ArgumentsArray2ArrayType<T extends Argument[] | undefined> = T extends Argument[] ? {
9
9
  [K in keyof T]: T[K] extends {
10
10
  type: Schema;
11
11
  } ? ZodInferOutput<T[K]["type"]> : never;
@@ -13,10 +13,10 @@ type ArgumentsArr2ArrType<T extends Argument[] | undefined> = T extends Argument
13
13
  export type ValidateResult<S extends Partial<Subcommand>[]> = {
14
14
  [K in keyof S]: Prettify<{
15
15
  subcommand: S[K]["name"] extends string ? S[K]["name"] : undefined;
16
- arguments: ArgumentsArr2ArrType<S[K]["arguments"]>;
16
+ arguments: ArgumentsArray2ArrayType<S[K]["arguments"]>;
17
17
  positional: S[K]["allowPositional"] extends true ? string[] : never;
18
18
  ctx: ParseResult<S>;
19
- } & OptionsArr2RecordType<S[K]["options"]>>;
19
+ } & OptionsArray2RecordType<S[K]["options"]>>;
20
20
  }[number];
21
21
  export {};
22
22
  //# sourceMappingURL=validate-type.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"validate-type.d.ts","sourceRoot":"","sources":["../../../../src/parser/validate/validate-type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACjH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAE3D,KAAK,qBAAqB,CAAC,CAAC,SAAS,MAAM,EAAE,GAAG,SAAS,IAAI,CAAC,SAAS,MAAM,EAAE,GAC3E,UAAU,CAAC;KAAG,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE;QAAE,IAAI,EAAE,CAAC,CAAA;KAAE,CAAC,CAAC,MAAM,CAAC,CAAC;CAAE,CAAC,GACjG,MAAM,CAAC;AAEX,KAAK,oBAAoB,CAAC,CAAC,SAAS,QAAQ,EAAE,GAAG,SAAS,IAAI,CAAC,SAAS,QAAQ,EAAE,GAC9E;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,KAAK;CAAE,GACxF,KAAK,CAAC;AAEV,MAAM,MAAM,cAAc,CAAC,CAAC,SAAS,OAAO,CAAC,UAAU,CAAC,EAAE,IAAI;KAC3D,CAAC,IAAI,MAAM,CAAC,GAAG,QAAQ,CACtB;QACE,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC;QACnE,SAAS,EAAE,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC;QACnD,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,SAAS,IAAI,GAAG,MAAM,EAAE,GAAG,KAAK,CAAC;QACpE,GAAG,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;KACrB,GAAG,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAC3C;CACF,CAAC,MAAM,CAAC,CAAC"}
1
+ {"version":3,"file":"validate-type.d.ts","sourceRoot":"","sources":["../../../../src/parser/validate/validate-type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACjH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAE3D,KAAK,uBAAuB,CAAC,CAAC,SAAS,MAAM,EAAE,GAAG,SAAS,IAAI,CAAC,SAAS,MAAM,EAAE,GAC7E,UAAU,CAAC;KAAG,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE;QAAE,IAAI,EAAE,CAAC,CAAA;KAAE,CAAC,CAAC,MAAM,CAAC,CAAC;CAAE,CAAC,GACjG,MAAM,CAAC;AAEX,KAAK,wBAAwB,CAAC,CAAC,SAAS,QAAQ,EAAE,GAAG,SAAS,IAAI,CAAC,SAAS,QAAQ,EAAE,GAClF;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,KAAK;CAAE,GACxF,KAAK,CAAC;AAEV,MAAM,MAAM,cAAc,CAAC,CAAC,SAAS,OAAO,CAAC,UAAU,CAAC,EAAE,IAAI;KAC3D,CAAC,IAAI,MAAM,CAAC,GAAG,QAAQ,CACtB;QACE,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC;QACnE,SAAS,EAAE,wBAAwB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC;QACvD,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,SAAS,IAAI,GAAG,MAAM,EAAE,GAAG,KAAK,CAAC;QACpE,GAAG,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;KACrB,GAAG,uBAAuB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAC7C;CACF,CAAC,MAAM,CAAC,CAAC"}
@@ -1,11 +1,11 @@
1
- import type { ParseCtx } from "../parse/parse-types.js";
1
+ import type { ParsedContext } from "../parse/parse-types.js";
2
2
  /** The return result object temporarily type. used inside the `parse` function */
3
- type ResultsTempType = Record<string, unknown> & {
3
+ type ResultsTemporaryType = Record<string, unknown> & {
4
4
  subcommand: string | undefined;
5
5
  positional?: string[];
6
6
  arguments?: unknown[];
7
- ctx: ParseCtx;
7
+ ctx: ParsedContext;
8
8
  };
9
- export declare function validate(parsedData: ParseCtx): ResultsTempType;
9
+ export declare function validate(parsedData: ParsedContext): ResultsTemporaryType;
10
10
  export {};
11
11
  //# sourceMappingURL=validate.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../../../src/parser/validate/validate.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAExD,kFAAkF;AAClF,KAAK,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;IAC/C,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,SAAS,CAAC,EAAE,OAAO,EAAE,CAAC;IACtB,GAAG,EAAE,QAAQ,CAAC;CACf,CAAC;AAEF,wBAAgB,QAAQ,CAAC,UAAU,EAAE,QAAQ,mBAkD5C"}
1
+ {"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../../../src/parser/validate/validate.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAE7D,kFAAkF;AAClF,KAAK,oBAAoB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;IACpD,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,SAAS,CAAC,EAAE,OAAO,EAAE,CAAC;IACtB,GAAG,EAAE,aAAa,CAAC;CACpB,CAAC;AAEF,wBAAgB,QAAQ,CAAC,UAAU,EAAE,aAAa,wBAkDjD"}
@@ -64,7 +64,7 @@ export interface Subcommand {
64
64
  * const helpCommand = createSubcommand({ name: "help", options: [...] });
65
65
  * helpCommand.setAction(res => console.log(res));
66
66
  */
67
- action?: (results?: any) => any;
67
+ action?: (data?: any) => any;
68
68
  /**
69
69
  * - The preValidation hook is executed before the action.
70
70
  * - To get typescript types use `setPreValidationHook` instead of this.
@@ -73,7 +73,7 @@ export interface Subcommand {
73
73
  * const helpCommand = createSubcommand({ name: "help", options: [...] });
74
74
  * helpCommand.setPreValidationHook(ctx => console.log(ctx));
75
75
  */
76
- preValidation?: (ctx?: any) => any;
76
+ preValidation?: (context?: any) => any;
77
77
  }
78
78
  export type Cli = Prettify<Omit<Subcommand, "name" | "aliases" | "placeholder"> & {
79
79
  /** - The name of the CLI program. */
@@ -135,9 +135,9 @@ export interface Argument {
135
135
  */
136
136
  example?: string;
137
137
  }
138
- export type ColorFnType = (...text: unknown[]) => string;
138
+ export type ColorFunctionType = (...text: unknown[]) => string;
139
139
  /** - The colors to use for the help message. */
140
- export type HelpMsgStyle = Record<"title" | "description" | "default" | "optional" | "exampleTitle" | "example" | "command" | "option" | "argument" | "placeholder" | "punctuation", ColorFnType>;
140
+ export type HelpMessageStyle = Record<"title" | "description" | "default" | "optional" | "exampleTitle" | "example" | "command" | "option" | "argument" | "placeholder" | "punctuation", ColorFunctionType>;
141
141
  /**
142
142
  * - Infer the options type from a subcommand.
143
143
  *
@@ -214,8 +214,8 @@ export type NoSubcommand = {
214
214
  name: undefined;
215
215
  };
216
216
  export type PrintMethods<N extends Subcommand["name"]> = {
217
- printCliHelp: (style?: Partial<HelpMsgStyle>) => void;
218
- printSubcommandHelp: (subcommand: LiteralUnion<NonNullable<N>>, style?: Partial<HelpMsgStyle>) => void;
217
+ printCliHelp: (style?: Partial<HelpMessageStyle>) => void;
218
+ printSubcommandHelp: (subcommand: LiteralUnion<NonNullable<N>>, style?: Partial<HelpMessageStyle>) => void;
219
219
  };
220
220
  export type UnsafeParseResult<S extends Partial<Subcommand>[]> = CheckDuplicatedSubcommands<S> extends infer E extends string ? E : Prettify<ValidateResult<S> & PrintMethods<NonNullable<S[number]["name"]>>>;
221
221
  export type SafeParseResult<S extends Partial<Subcommand>[]> = CheckDuplicatedSubcommands<S> extends infer E extends string ? E : Prettify<({
@@ -225,12 +225,12 @@ export type SafeParseResult<S extends Partial<Subcommand>[]> = CheckDuplicatedSu
225
225
  success: true;
226
226
  data: ValidateResult<S>;
227
227
  }) & PrintMethods<NonNullable<S[number]["name"]>>>;
228
- export type ActionsFn<T extends Subcommand | Cli> = {
229
- setAction: (actions: (res: UnsafeParseResult<[T]>) => void) => void;
230
- setPreValidationHook: (hookFn: (ctx: ParseResult<[T]>) => void) => void;
228
+ export type ActionsFunctions<T extends Subcommand | Cli> = {
229
+ setAction: (actions: (data: UnsafeParseResult<[T]>) => void) => void;
230
+ setPreValidationHook: (hook: (context: ParseResult<[T]>) => void) => void;
231
231
  };
232
232
  /** - Combine `name` and `aliases` to a `string[]` */
233
- type MapNameAndAliases2StrArr<T extends {
233
+ type MapNameAndAliasesToStringArray<T extends {
234
234
  name?: string;
235
235
  aliases?: string[];
236
236
  }[]> = T extends [
@@ -239,12 +239,16 @@ type MapNameAndAliases2StrArr<T extends {
239
239
  ] ? Rest extends {
240
240
  name?: string;
241
241
  aliases?: string[];
242
- }[] ? [First["name"], ...(First["aliases"] extends string[] ? First["aliases"] : []), ...MapNameAndAliases2StrArr<Rest>] : [First["name"], ...(First["aliases"] extends string[] ? First["aliases"] : [])] : [];
242
+ }[] ? [
243
+ First["name"],
244
+ ...(First["aliases"] extends string[] ? First["aliases"] : []),
245
+ ...MapNameAndAliasesToStringArray<Rest>
246
+ ] : [First["name"], ...(First["aliases"] extends string[] ? First["aliases"] : [])] : [];
243
247
  /**
244
248
  * - Find duplicated items in an array and return it
245
249
  * - Return `false` if not found
246
250
  */
247
- type IsDuplicatesInArr<Input extends any[]> = Input extends [infer Item, ...infer Rest] ? Rest extends any[] ? Item extends Rest[number] ? Item : IsDuplicatesInArr<Rest> : false : false;
251
+ type IsDuplicatesInArray<Input extends any[]> = Input extends [infer Item, ...infer Rest] ? Rest extends any[] ? Item extends Rest[number] ? Item : IsDuplicatesInArray<Rest> : false : false;
248
252
  /**
249
253
  * - Check if there are duplicated options including aliases in `subcommand`
250
254
  * - Return an error message if duplicated is found
@@ -252,13 +256,13 @@ type IsDuplicatesInArr<Input extends any[]> = Input extends [infer Item, ...infe
252
256
  */
253
257
  export type CheckDuplicatedOptions<T extends {
254
258
  options?: Option[];
255
- }> = T["options"] extends infer O extends Option[] ? IsDuplicatesInArr<MapNameAndAliases2StrArr<O>> extends infer Name extends string ? `>>> Error: Duplicated Options. Check the options with the name \`${Name}\` <<<` : undefined : undefined;
259
+ }> = T["options"] extends infer O extends Option[] ? IsDuplicatesInArray<MapNameAndAliasesToStringArray<O>> extends infer Name extends string ? `>>> Error: Duplicated Options. Check the options with the name \`${Name}\` <<<` : undefined : undefined;
256
260
  /**
257
261
  * - Check for duplicated subcommands including aliases
258
262
  * - Return an error message if duplicated is found
259
263
  * - Return the `undefined` if no error
260
264
  */
261
- type CheckDuplicatedSubcommands<T extends Partial<Subcommand>[]> = IsDuplicatesInArr<MapNameAndAliases2StrArr<T>> extends infer Name extends string ? `>>> Error: Duplicated Subcommand. Check the subcommands with the name \`${Name}\` <<<` : undefined;
265
+ type CheckDuplicatedSubcommands<T extends Partial<Subcommand>[]> = IsDuplicatesInArray<MapNameAndAliasesToStringArray<T>> extends infer Name extends string ? `>>> Error: Duplicated Subcommand. Check the subcommands with the name \`${Name}\` <<<` : undefined;
262
266
  /**
263
267
  * - Check for duplicated arguments
264
268
  * - Return an error message if duplicated is found
@@ -266,7 +270,7 @@ type CheckDuplicatedSubcommands<T extends Partial<Subcommand>[]> = IsDuplicatesI
266
270
  */
267
271
  export type CheckDuplicatedArguments<T extends {
268
272
  arguments?: Argument[];
269
- }> = T["arguments"] extends infer A extends Argument[] ? IsDuplicatesInArr<MapNameAndAliases2StrArr<A>> extends infer Name extends string ? `>>> Error: Duplicated Arguments. Check the arguments with the name \`${Name}\` <<<` : undefined : undefined;
273
+ }> = T["arguments"] extends infer A extends Argument[] ? IsDuplicatesInArray<MapNameAndAliasesToStringArray<A>> extends infer Name extends string ? `>>> Error: Duplicated Arguments. Check the arguments with the name \`${Name}\` <<<` : undefined : undefined;
270
274
  type OptionalUnion = Z3.ZodOptional<Z3.ZodAny> | Z4.$ZodOptional | Z3.ZodDefault<Z3.ZodAny> | Z4.$ZodDefault;
271
275
  /**
272
276
  * - Insures that only the last argument is optional
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
@@ -2,19 +2,19 @@ import { SubcommandMetadata } from "./metadata/metadata-types.js";
2
2
  /**
3
3
  * Converts a string to its corresponding boolean value if the string is "true" or "false" (case-insensitive).
4
4
  *
5
- * @param str - The input string to convert.
5
+ * @param string - The input string to convert.
6
6
  * @returns `true` if the input is "true", `false` if the input is "false", or the original string otherwise.
7
7
  */
8
- export declare function stringToBoolean(str: string): boolean | string;
8
+ export declare function stringToBoolean(string: string): boolean | string;
9
9
  /**
10
- * Returns the ordinal representation of a given zero-based index.
10
+ * Converts a zero-based index into its human-readable ordinal form.
11
11
  *
12
- * For example, passing `0` returns `"1st"`, `1` returns `"2nd"`, and so on.
12
+ * Examples: 0 "1st" 1 "2nd" 2 "3rd" 3 → "4th" 10 → "11th"
13
13
  *
14
- * Handles special cases for numbers ending in 11, 12, or 13 (e.g., `10` returns `"11th"`).
14
+ * Handles special cases for 11, 12, and 13.
15
15
  *
16
- * @param index - The zero-based index to convert to an ordinal string.
17
- * @returns The ordinal string representation (e.g., `"1st"`, `"2nd"`, `"3rd"`, `"4th"`, ...).
16
+ * @param index - The zero-based index to convert.
17
+ * @returns The ordinal string (e.g., "1st", "2nd", "3rd", "4th", ...).
18
18
  */
19
19
  export declare function generateOrdinalSuffix(index: number): string;
20
20
  /** New line */
@@ -25,7 +25,7 @@ export declare function indent(count: number): string;
25
25
  export declare function concat(...messages: string[]): string;
26
26
  export declare function stringifyValue(value: unknown): string;
27
27
  /** Insert text at the end of the first line */
28
- export declare function insertAtEndOfFirstLine(str: string, insert: string): string;
28
+ export declare function insertAtEndOfFirstLine(string: string, insert: string): string;
29
29
  /** Get the placeholder for a subcommand */
30
30
  export declare function subcommandPlaceholder(metadata: SubcommandMetadata): string;
31
- //# sourceMappingURL=utils.d.ts.map
31
+ //# sourceMappingURL=utilities.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utilities.d.ts","sourceRoot":"","sources":["../../src/utilities.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAElE;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAUhE;AAED;;;;;;;;;GASG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CA2B3D;AAED,eAAe;AACf,wBAAgB,EAAE,CAAC,KAAK,EAAE,MAAM,UAE/B;AAED,YAAY;AACZ,wBAAgB,MAAM,CAAC,KAAK,EAAE,MAAM,UAGnC;AAED,qBAAqB;AACrB,wBAAgB,MAAM,CAAC,GAAG,QAAQ,EAAE,MAAM,EAAE,UAG3C;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAcrD;AAED,+CAA+C;AAC/C,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,UAIpE;AAED,2CAA2C;AAC3C,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,kBAAkB,GAAG,MAAM,CAoB1E"}
@@ -1,11 +1,12 @@
1
+ import type * as Z3 from "zod/v3";
1
2
  import type * as Z4 from "zod/v4/core";
2
- import type { Schema } from "./types.js";
3
+ import type { Schema } from "./types.ts";
3
4
  /** - Safe parse a value against a schema */
4
- export declare function safeParseSchema(schema: Schema, value: unknown): Z4.util.SafeParseError<unknown> | import("zod/v3").SafeParseSuccess<any> | import("zod/v3").SafeParseError<any>;
5
+ export declare function safeParseSchema(schema: Schema, value: unknown): Z4.util.SafeParseError<unknown> | Z3.SafeParseSuccess<any> | Z3.SafeParseError<any>;
5
6
  /** - Check if a schema is a boolean */
6
7
  export declare function isBooleanSchema(schema: Schema): boolean;
7
8
  /** - Get the default value of a schema */
8
- export declare function schemaDefaultValue(schema: Schema): unknown | undefined;
9
+ export declare function schemaDefaultValue(schema: Schema): unknown;
9
10
  /** - Get the description of a schema */
10
11
  export declare function schemaDescription(schema: Schema): string | undefined;
11
12
  /** - Check if a schema is optional */
@@ -13,15 +14,15 @@ export declare function isOptionalSchema(schema: Schema): schema is Z4.$ZodOptio
13
14
  /**
14
15
  * A preprocessing function for Zod that converts a string to an array of strings.
15
16
  *
16
- * @param val - The value given by zod.
17
- * @param sep - The separator to use when splitting the string. Defaults to ",".
17
+ * @param stringValue - The string value given by zod.
18
+ * @param separator - The separator to use when splitting the string. Defaults to ",".
18
19
  */
19
- export declare function stringToArray(val: unknown, sep?: string): unknown;
20
+ export declare function stringToArray(stringValue: string, separator?: string): string[];
20
21
  /**
21
22
  * A preprocessing function for Zod that converts a string to a `Set` of strings.
22
23
  *
23
- * @param val - The value given by zod.
24
- * @param sep - The separator to use when splitting the string. Defaults to ",".
24
+ * @param stringValue - The string value given by zod.
25
+ * @param separator - The separator to use when splitting the string. Defaults to ",".
25
26
  */
26
- export declare function stringToSet(val: unknown, sep?: string): unknown;
27
- //# sourceMappingURL=zod-utils.d.ts.map
27
+ export declare function stringToSet(stringValue: string, separator?: string): Set<string>;
28
+ //# sourceMappingURL=zod-utilities.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zod-utilities.d.ts","sourceRoot":"","sources":["../../src/zod-utilities.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,EAAE,MAAM,QAAQ,CAAC;AAClC,OAAO,KAAK,KAAK,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,KAAK,EAAE,MAAM,EAAsB,MAAM,YAAY,CAAC;AAM7D,4CAA4C;AAC5C,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,uFAM7D;AAED,uCAAuC;AACvC,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAMvD;AAgDD,0CAA0C;AAC1C,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAM1D;AA+CD,wCAAwC;AACxC,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAiBpE;AAED,sCAAsC;AACtC,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,IAAI,EAAE,CAAC,YAAY,CAM1E;AAmCD;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,GAAE,MAAY,GAAG,MAAM,EAAE,CAKpF;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,GAAE,MAAY,GAAG,GAAG,CAAC,MAAM,CAAC,CAGrF"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "zod-args-parser",
3
- "version": "1.2.6",
3
+ "version": "1.2.8",
4
4
  "description": "A strictly typed command-line arguments parser powered by Zod.",
5
5
  "author": "Ahmed ALABSI <alabsi91@gmail.com>",
6
6
  "license": "MIT",
@@ -15,14 +15,12 @@
15
15
  "test": "eslint src/** --fix && tsc --noEmit && tsx test/test.ts",
16
16
  "prepare": "npm run test && npm run build"
17
17
  },
18
- "main": "./lib/commonjs/index.js",
19
- "module": "./lib/module/index.js",
20
18
  "types": "./lib/typescript/index.d.ts",
21
19
  "exports": {
22
20
  ".": {
23
- "import": "./lib/module/index.js",
24
- "require": "./lib/commonjs/index.js",
25
- "default": "./lib/module/index",
21
+ "import": "./lib/module/index.mjs",
22
+ "require": "./lib/commonjs/index.cjs",
23
+ "default": "./lib/module/index.mjs",
26
24
  "types": "./lib/typescript/index.d.ts"
27
25
  }
28
26
  },
@@ -39,24 +37,25 @@
39
37
  "typescript"
40
38
  ],
41
39
  "devDependencies": {
42
- "@babel/core": "^7.28.3",
43
- "@babel/preset-env": "^7.28.3",
44
- "@babel/preset-typescript": "^7.27.1",
45
- "@eslint/compat": "^1.3.2",
46
- "@eslint/js": "^9.34.0",
40
+ "@babel/core": "^7.28.5",
41
+ "@babel/preset-env": "^7.28.5",
42
+ "@babel/preset-typescript": "^7.28.5",
43
+ "@eslint/js": "^9.38.0",
47
44
  "@types/babel__core": "^7.20.5",
48
- "@types/node": "^24.3.0",
49
- "eslint": "^9.34.0",
45
+ "@types/node": "^24.9.1",
46
+ "babel-plugin-replace-import-extension": "^1.1.5",
47
+ "eslint": "^9.38.0",
50
48
  "eslint-config-prettier": "^10.1.8",
51
49
  "eslint-plugin-prettier": "^5.5.4",
50
+ "eslint-plugin-unicorn": "^61.0.2",
52
51
  "glob": "^11.0.3",
53
- "globals": "^16.3.0",
52
+ "globals": "^16.4.0",
54
53
  "prettier": "^3.6.2",
55
54
  "prettier-plugin-jsdoc": "^1.3.3",
56
- "tsx": "^4.20.5",
57
- "typescript": "^5.9.2",
58
- "typescript-eslint": "^8.41.0",
59
- "zod": "^4.1.5"
55
+ "tsx": "^4.20.6",
56
+ "typescript": "^5.9.3",
57
+ "typescript-eslint": "^8.46.2",
58
+ "zod": "^4.1.12"
60
59
  },
61
60
  "peerDependencies": {
62
61
  "chalk": "*",
@@ -1,4 +1,4 @@
1
- import { transformOptionToArg } from "../parser/parse/parser-helpers.js";
1
+ import { transformOptionToArgument } from "../parser/parse/parser-helpers.js";
2
2
 
3
3
  import type { Cli, Subcommand } from "../types.js";
4
4
 
@@ -10,29 +10,29 @@ import type { Cli, Subcommand } from "../types.js";
10
10
  * - Add the following line: `source <generated script path>`
11
11
  * - Save and reopen bash to take effect
12
12
  */
13
- export function generateBashAutocompleteScript(...params: [Cli, ...Subcommand[]]): string {
14
- const [cli, ...subcommands] = params;
13
+ export function generateBashAutocompleteScript(...parameters: [Cli, ...Subcommand[]]): string {
14
+ const [cli, ...subcommands] = parameters;
15
15
 
16
16
  type MappedCommands = Record<string, { options: string[]; aliases: string[] }>;
17
17
 
18
- const mappedCommands = subcommands.reduce((acc: MappedCommands, subcommand) => {
19
- acc[subcommand.name] = {
20
- options: subcommand.options?.map(option => transformOptionToArg(option.name)) ?? [],
18
+ const mappedCommands: MappedCommands = {};
19
+ for (const subcommand of subcommands) {
20
+ mappedCommands[subcommand.name] = {
21
+ options: subcommand.options?.map(option => transformOptionToArgument(option.name)) ?? [],
21
22
  aliases: subcommand.aliases ?? [],
22
23
  };
23
- return acc;
24
- }, {});
24
+ }
25
25
 
26
26
  let switchCase = "";
27
27
  for (const [key, { options, aliases }] of Object.entries(mappedCommands)) {
28
- switchCase += ` ${key}${aliases.length ? "|" : ""}${aliases.join("|")})\n`;
28
+ switchCase += ` ${key}${aliases.length > 0 ? "|" : ""}${aliases.join("|")})\n`;
29
29
  switchCase += ` opts="${options.join(" ")}"\n`;
30
30
  switchCase += " ;;\n";
31
31
  }
32
32
 
33
33
  if (cli.options?.length) {
34
34
  switchCase += ` "-"*)\n`;
35
- switchCase += ` opts="${cli.options.map(option => transformOptionToArg(option.name)).join(" ")}"\n`;
35
+ switchCase += ` opts="${cli.options.map(option => transformOptionToArgument(option.name)).join(" ")}"\n`;
36
36
  switchCase += " ;;\n";
37
37
  }
38
38
 
@@ -1,4 +1,4 @@
1
- import { transformOptionToArg } from "../parser/parse/parser-helpers.js";
1
+ import { transformOptionToArgument } from "../parser/parse/parser-helpers.js";
2
2
 
3
3
  import type { Cli, Subcommand } from "../types.js";
4
4
 
@@ -13,31 +13,33 @@ import type { Cli, Subcommand } from "../types.js";
13
13
  * - Add the following line: `. "<generated script path>"`
14
14
  * - Save and reopen powershell to take effect
15
15
  */
16
- export function generatePowerShellAutocompleteScript(...params: [Cli, ...Subcommand[]]): string {
17
- const [cli, ...subcommands] = params;
16
+ export function generatePowerShellAutocompleteScript(...parameters: [Cli, ...Subcommand[]]): string {
17
+ const [cli, ...subcommands] = parameters;
18
18
 
19
19
  type MappedCommands = Record<string, { options: string[]; aliases: string[] }>;
20
20
 
21
- const mappedCommands = subcommands.reduce((acc: MappedCommands, subcommand) => {
22
- acc[subcommand.name] = {
23
- options: subcommand.options?.map(option => transformOptionToArg(option.name)) ?? [],
21
+ const mappedCommands: MappedCommands = {};
22
+ for (const subcommand of subcommands) {
23
+ mappedCommands[subcommand.name] = {
24
+ options: subcommand.options?.map(option => transformOptionToArgument(option.name)) ?? [],
24
25
  aliases: subcommand.aliases ?? [],
25
26
  };
26
- return acc;
27
- }, {});
27
+ }
28
28
 
29
- const subcommandsStr = Object.keys(mappedCommands)
29
+ const subcommandsString = Object.keys(mappedCommands)
30
30
  .map(key => `'${key}'`)
31
31
  .join(", ");
32
- const cliOptionsStr = cli.options?.map(option => `'${transformOptionToArg(option.name)}'`).join(", ") || "";
32
+ const cliOptionsString = cli.options?.map(option => `'${transformOptionToArgument(option.name)}'`).join(", ") || "";
33
33
 
34
34
  let switchCase = "switch ($subcommand) {\n";
35
35
  for (const [key, { options, aliases }] of Object.entries(mappedCommands)) {
36
- const optionsStr = options.map(option => `'${option}'`).join(", ");
37
- switchCase += ` '${key}' { @(${optionsStr}) }\n`;
38
- aliases.forEach(a => (switchCase += ` '${a}' { @(${optionsStr}) }\n`));
36
+ const optionsString = options.map(option => `'${option}'`).join(", ");
37
+ switchCase += ` '${key}' { @(${optionsString}) }\n`;
38
+ for (const a of aliases) {
39
+ switchCase += ` '${a}' { @(${optionsString}) }\n`;
40
+ }
39
41
  }
40
- switchCase += ` default { @(${cliOptionsStr}) }\n }`;
42
+ switchCase += ` default { @(${cliOptionsString}) }\n }`;
41
43
 
42
44
  let functionInfo = "";
43
45
  if (cli.description) {
@@ -65,7 +67,7 @@ function ${cli.cliName} {
65
67
 
66
68
  Register-ArgumentCompleter -CommandName '${cli.cliName}' -ParameterName 'subcommand' -ScriptBlock {
67
69
  param($commandName, $parameterName, $wordToComplete, $commandAst, $fakeBoundParameters)
68
- $subcommands = @(${subcommandsStr}${subcommandsStr && cliOptionsStr ? ", " : ""}${cliOptionsStr})
70
+ $subcommands = @(${subcommandsString}${subcommandsString && cliOptionsString ? ", " : ""}${cliOptionsString})
69
71
  $subcommands | Where-Object { $_ -like "$wordToComplete*" }
70
72
  }
71
73
 
@@ -1,4 +1,4 @@
1
- import { transformOptionToArg } from "../parser/parse/parser-helpers.js";
1
+ import { transformOptionToArgument } from "../parser/parse/parser-helpers.js";
2
2
 
3
3
  import type { Cli, Option, Subcommand } from "../types.js";
4
4
 
@@ -10,12 +10,12 @@ import type { Cli, Option, Subcommand } from "../types.js";
10
10
  * - Add the following line: `source <generated script path>`
11
11
  * - Save and reopen zsh to take effect
12
12
  */
13
- export function generateZshAutocompleteScript(...params: [Cli, ...Subcommand[]]): string {
14
- const [cli, ...subcommands] = params;
13
+ export function generateZshAutocompleteScript(...parameters: [Cli, ...Subcommand[]]): string {
14
+ const [cli, ...subcommands] = parameters;
15
15
 
16
16
  const genArguments = (options: Option[]) => {
17
17
  return options
18
- ?.map(option => `'${transformOptionToArg(option.name)}[${option.description ?? ""}]'`)
18
+ ?.map(option => `'${transformOptionToArgument(option.name)}[${option.description ?? ""}]'`)
19
19
  .join(" \\\n ");
20
20
  };
21
21
 
@@ -43,7 +43,10 @@ _${cli.cliName}_autocomplete() {
43
43
  case $state in
44
44
  subcmds)
45
45
  case "$words[1]" in
46
- ${subcommands.map(genSubCommand).filter(Boolean).join("\n ")}
46
+ ${subcommands
47
+ .map(subCommand => genSubCommand(subCommand))
48
+ .filter(Boolean)
49
+ .join("\n ")}
47
50
  *)
48
51
  _arguments \\
49
52
  '*: :_files' \\