@sorrell/cli-utilities 1.0.12 → 1.0.13

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.
@@ -0,0 +1,8 @@
1
+ import type { PartialDeep } from "@inquirer/type";
2
+ import type { Theme } from "@inquirer/core";
3
+ export type FConfirmConfig = {
4
+ message: string;
5
+ default?: boolean;
6
+ theme?: PartialDeep<Theme>;
7
+ };
8
+ //# sourceMappingURL=Confirm.Types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Confirm.Types.d.ts","sourceRoot":"","sources":["../Source/Confirm.Types.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAE5C,MAAM,MAAM,cAAc,GACtB;IACI,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC;CAC9B,CAAC"}
@@ -0,0 +1,7 @@
1
+ /* File: Confirm.Types.ts
2
+ * Author: Gage Sorrell <gage@sorrell.sh>
3
+ * Copyright: (c) 2026 Gage Sorrell
4
+ * License: MIT
5
+ */
6
+ export {};
7
+ //# sourceMappingURL=Confirm.Types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Confirm.Types.js","sourceRoot":"","sources":["../Source/Confirm.Types.ts"],"names":[],"mappings":"AAAA;;;;GAIG"}
@@ -0,0 +1,5 @@
1
+ import type { FConfirmConfig } from "./index.js";
2
+ import type { Prompt } from "@inquirer/type";
3
+ /** An `inquirer` prompt identical to `confirm`, but with more natural handling of keypresses. */
4
+ export declare const Confirm: Prompt<boolean, FConfirmConfig>;
5
+ //# sourceMappingURL=Confirm.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Confirm.d.ts","sourceRoot":"","sources":["../Source/Confirm.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAO7C,iGAAiG;AACjG,eAAO,MAAM,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,cAAc,CAwDnD,CAAC"}
@@ -0,0 +1,52 @@
1
+ /* File: Confirm.ts
2
+ * Author: Gage Sorrell <gage@sorrell.sh>
3
+ * Copyright: (c) 2026 Gage Sorrell
4
+ * License: MIT
5
+ */
6
+ import { createPrompt, isEnterKey, makeTheme, useKeypress, usePrefix, useState } from "@inquirer/core";
7
+ function GetAnswerString(Value) {
8
+ return Value ? "Yes" : "No";
9
+ }
10
+ /** An `inquirer` prompt identical to `confirm`, but with more natural handling of keypresses. */
11
+ export const Confirm = createPrompt((Configuration, Done) => {
12
+ const [StatusValue, SetStatusValue] = useState("idle");
13
+ const [DisplayValue, SetDisplayValue] = useState("");
14
+ const ThemeValue = makeTheme(Configuration.theme);
15
+ const Prefix = usePrefix({ status: StatusValue, theme: ThemeValue });
16
+ useKeypress((Key) => {
17
+ if (StatusValue !== "idle") {
18
+ return;
19
+ }
20
+ const KeyName = Key.name?.toLowerCase();
21
+ if (KeyName === "y") {
22
+ SetDisplayValue(ThemeValue.style.answer("Yes"));
23
+ SetStatusValue("done");
24
+ Done(true);
25
+ return;
26
+ }
27
+ if (KeyName === "n") {
28
+ SetDisplayValue(ThemeValue.style.answer("No"));
29
+ SetStatusValue("done");
30
+ Done(false);
31
+ return;
32
+ }
33
+ if (isEnterKey(Key)) {
34
+ const Answer = Configuration.default ?? true;
35
+ SetDisplayValue(ThemeValue.style.answer(GetAnswerString(Answer)));
36
+ SetStatusValue("done");
37
+ Done(Answer);
38
+ }
39
+ });
40
+ const DefaultHint = StatusValue === "idle"
41
+ ? ` ${ThemeValue.style.defaultAnswer(Configuration.default === false ? "y/N" : "Y/n")}`
42
+ : "";
43
+ return [
44
+ Prefix,
45
+ " ",
46
+ ThemeValue.style.message(Configuration.message, StatusValue),
47
+ DefaultHint,
48
+ " ",
49
+ DisplayValue
50
+ ].join("");
51
+ });
52
+ //# sourceMappingURL=Confirm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Confirm.js","sourceRoot":"","sources":["../Source/Confirm.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAIH,YAAY,EACZ,UAAU,EACV,SAAS,EACT,WAAW,EACX,SAAS,EACT,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAIrC,SAAS,eAAe,CAAC,KAAc;IAEnC,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;AAChC,CAAC;AAED,iGAAiG;AACjG,MAAM,CAAC,MAAM,OAAO,GAAoC,YAAY,CAChE,CAAC,aAA6B,EAAE,IAAgC,EAAE,EAAE;IAEhE,MAAM,CAAE,WAAW,EAAE,cAAc,CAAE,GAAG,QAAQ,CAAS,MAAM,CAAC,CAAC;IACjE,MAAM,CAAE,YAAY,EAAE,eAAe,CAAE,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACvD,MAAM,UAAU,GAAU,SAAS,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IACzD,MAAM,MAAM,GAAW,SAAS,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC;IAE7E,WAAW,CAAC,CAAC,GAAkB,EAAE,EAAE;QAE/B,IAAI,WAAW,KAAK,MAAM,EAC1B,CAAC;YACG,OAAO;QACX,CAAC;QAED,MAAM,OAAO,GAAW,GAAG,CAAC,IAAI,EAAE,WAAW,EAAE,CAAC;QAEhD,IAAI,OAAO,KAAK,GAAG,EACnB,CAAC;YACG,eAAe,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YAChD,cAAc,CAAC,MAAM,CAAC,CAAC;YACvB,IAAI,CAAC,IAAI,CAAC,CAAC;YACX,OAAO;QACX,CAAC;QAED,IAAI,OAAO,KAAK,GAAG,EACnB,CAAC;YACG,eAAe,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;YAC/C,cAAc,CAAC,MAAM,CAAC,CAAC;YACvB,IAAI,CAAC,KAAK,CAAC,CAAC;YACZ,OAAO;QACX,CAAC;QAED,IAAI,UAAU,CAAC,GAAG,CAAC,EACnB,CAAC;YACG,MAAM,MAAM,GAAY,aAAa,CAAC,OAAO,IAAI,IAAI,CAAC;YACtD,eAAe,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YAClE,cAAc,CAAC,MAAM,CAAC,CAAC;YACvB,IAAI,CAAC,MAAM,CAAC,CAAC;QACjB,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,MAAM,WAAW,GACb,WAAW,KAAK,MAAM;QAClB,CAAC,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC,aAAa,CAAC,aAAa,CAAC,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE;QACvF,CAAC,CAAC,EAAE,CAAC;IAEb,OAAO;QACH,MAAM;QACN,GAAG;QACH,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,OAAO,EAAE,WAAW,CAAC;QAC5D,WAAW;QACX,GAAG;QACH,YAAY;KACf,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACf,CAAC,CACJ,CAAC"}
@@ -1,2 +1,4 @@
1
+ export * from "./Confirm.js";
2
+ export * from "./Confirm.Types.js";
1
3
  export * from "./Print.js";
2
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../Source/index.ts"],"names":[],"mappings":"AAMA,cAAc,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../Source/index.ts"],"names":[],"mappings":"AAMA,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC;AACnC,cAAc,YAAY,CAAC"}
@@ -3,5 +3,7 @@
3
3
  * Copyright: (c) 2026 Gage Sorrell
4
4
  * License: MIT
5
5
  */
6
+ export * from "./Confirm.js";
7
+ export * from "./Confirm.Types.js";
6
8
  export * from "./Print.js";
7
9
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../Source/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../Source/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC;AACnC,cAAc,YAAY,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sorrell/cli-utilities",
3
- "version": "1.0.12",
3
+ "version": "1.0.13",
4
4
  "description": "Utilities for CLI tools.",
5
5
  "keywords": [
6
6
  "cli",
@@ -33,7 +33,9 @@
33
33
  "@typescript/native-preview": "^7.0.0-dev.20260326.1"
34
34
  },
35
35
  "dependencies": {
36
+ "@inquirer/core": "^11.1.7",
36
37
  "@inquirer/prompts": "^8.3.2",
38
+ "@inquirer/type": "^4.0.4",
37
39
  "chalk": "^5.6.2",
38
40
  "cli-table3": "^0.6.5",
39
41
  "clipboardy": "^5.3.1",