electron-reactive-event-cli 1.0.38 → 1.0.41

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 (73) hide show
  1. package/Distribution/Initialize.Types.d.ts +0 -11
  2. package/Distribution/Initialize.Types.d.ts.map +1 -1
  3. package/Distribution/Register/RegisterCommand.Types.d.ts +2 -0
  4. package/Distribution/Register/RegisterCommand.Types.d.ts.map +1 -0
  5. package/Distribution/Register/RegisterCommand.Types.js +7 -0
  6. package/Distribution/Register/RegisterCommand.Types.js.map +1 -0
  7. package/Distribution/Register/RegisterCommand.d.ts +3 -0
  8. package/Distribution/Register/RegisterCommand.d.ts.map +1 -0
  9. package/Distribution/Register/RegisterCommand.js +120 -0
  10. package/Distribution/Register/RegisterCommand.js.map +1 -0
  11. package/Distribution/Register/RegisterCommandBin.d.ts +2 -0
  12. package/Distribution/Register/RegisterCommandBin.d.ts.map +1 -0
  13. package/Distribution/Register/RegisterCommandBin.js +8 -0
  14. package/Distribution/Register/RegisterCommandBin.js.map +1 -0
  15. package/Distribution/Register/index.d.ts +2 -0
  16. package/Distribution/Register/index.d.ts.map +1 -0
  17. package/Distribution/Register/index.js +7 -0
  18. package/Distribution/Register/index.js.map +1 -0
  19. package/Distribution/Schema.Types.d.ts +0 -7
  20. package/Distribution/Schema.Types.d.ts.map +1 -1
  21. package/Distribution/Select.Types.d.ts +1 -4
  22. package/Distribution/Select.Types.d.ts.map +1 -1
  23. package/Distribution/Select.d.ts +1 -8
  24. package/Distribution/Select.d.ts.map +1 -1
  25. package/Distribution/Select.js +1 -344
  26. package/Distribution/Select.js.map +1 -1
  27. package/Distribution/Setup/Prompt.Types.d.ts +12 -0
  28. package/Distribution/Setup/Prompt.Types.d.ts.map +1 -0
  29. package/Distribution/Setup/Prompt.Types.js +7 -0
  30. package/Distribution/Setup/Prompt.Types.js.map +1 -0
  31. package/Distribution/Setup/Prompt.d.ts +10 -0
  32. package/Distribution/Setup/Prompt.d.ts.map +1 -0
  33. package/Distribution/Setup/Prompt.js +250 -0
  34. package/Distribution/Setup/Prompt.js.map +1 -0
  35. package/Distribution/Setup/SetupCommand.Types.d.ts +5 -0
  36. package/Distribution/Setup/SetupCommand.Types.d.ts.map +1 -0
  37. package/Distribution/Setup/SetupCommand.Types.js +7 -0
  38. package/Distribution/Setup/SetupCommand.Types.js.map +1 -0
  39. package/Distribution/Setup/SetupCommand.d.ts +3 -0
  40. package/Distribution/Setup/SetupCommand.d.ts.map +1 -0
  41. package/Distribution/Setup/SetupCommand.js +259 -0
  42. package/Distribution/Setup/SetupCommand.js.map +1 -0
  43. package/Distribution/Setup/TsConfig.Types.d.ts +10 -0
  44. package/Distribution/Setup/TsConfig.Types.d.ts.map +1 -0
  45. package/Distribution/Setup/TsConfig.Types.js +7 -0
  46. package/Distribution/Setup/TsConfig.Types.js.map +1 -0
  47. package/Distribution/Setup/TsConfig.d.ts +7 -0
  48. package/Distribution/Setup/TsConfig.d.ts.map +1 -0
  49. package/Distribution/Setup/TsConfig.js +62 -0
  50. package/Distribution/Setup/TsConfig.js.map +1 -0
  51. package/Distribution/Setup/index.d.ts +6 -0
  52. package/Distribution/Setup/index.d.ts.map +1 -0
  53. package/Distribution/Setup/index.js +11 -0
  54. package/Distribution/Setup/index.js.map +1 -0
  55. package/Distribution/Setup.js +1 -115
  56. package/Distribution/Setup.js.map +1 -1
  57. package/Distribution/Shared.d.ts +1 -2
  58. package/Distribution/Shared.d.ts.map +1 -1
  59. package/Distribution/Shared.js +1 -11
  60. package/Distribution/Shared.js.map +1 -1
  61. package/Distribution/Utility.Types.d.ts +2 -0
  62. package/Distribution/Utility.Types.d.ts.map +1 -0
  63. package/Distribution/Utility.Types.js +7 -0
  64. package/Distribution/Utility.Types.js.map +1 -0
  65. package/Distribution/Utility.d.ts +2 -1
  66. package/Distribution/Utility.d.ts.map +1 -1
  67. package/Distribution/Utility.js +16 -1
  68. package/Distribution/Utility.js.map +1 -1
  69. package/Distribution/index.d.ts +2 -3
  70. package/Distribution/index.d.ts.map +1 -1
  71. package/Distribution/index.js +2 -3
  72. package/Distribution/index.js.map +1 -1
  73. package/package.json +6 -5
@@ -1,15 +1,4 @@
1
- export type FOutputType = "console" | "clipboard" | "file";
2
1
  export type FSetupOptions = {
3
2
  interactive: boolean;
4
3
  };
5
- export type FCommandName = "preload" | "provider";
6
- export interface IOptions {
7
- Output: FOutputType;
8
- }
9
- export interface IGenerationRequest {
10
- CommandName: FCommandName;
11
- OutputType: FOutputType;
12
- OutputPath: string | undefined;
13
- OutputPathExists: boolean;
14
- }
15
4
  //# sourceMappingURL=Initialize.Types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Initialize.Types.d.ts","sourceRoot":"","sources":["../Source/Initialize.Types.ts"],"names":[],"mappings":"AAMA,MAAM,MAAM,WAAW,GACjB,SAAS,GACT,WAAW,GACX,MAAM,CAAC;AAEb,MAAM,MAAM,aAAa,GACrB;IACI,WAAW,EAAE,OAAO,CAAC;CACxB,CAAC;AAEN,MAAM,MAAM,YAAY,GAClB,SAAS,GACT,UAAU,CAAC;AAEjB,MAAM,WAAW,QAAQ;IAErB,MAAM,EAAE,WAAW,CAAC;CACvB;AAED,MAAM,WAAW,kBAAkB;IAE/B,WAAW,EAAE,YAAY,CAAC;IAC1B,UAAU,EAAE,WAAW,CAAC;IACxB,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,gBAAgB,EAAE,OAAO,CAAC;CAC7B"}
1
+ {"version":3,"file":"Initialize.Types.d.ts","sourceRoot":"","sources":["../Source/Initialize.Types.ts"],"names":[],"mappings":"AAMA,MAAM,MAAM,aAAa,GACrB;IACI,WAAW,EAAE,OAAO,CAAC;CACxB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=RegisterCommand.Types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RegisterCommand.Types.d.ts","sourceRoot":"","sources":["../../Source/Register/RegisterCommand.Types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,7 @@
1
+ /* File: RegisterCommand.Types.ts
2
+ * Author: Gage Sorrell <gage@sorrell.sh>
3
+ * Copyright: (c) 2026 Gage Sorrell
4
+ * License: MIT
5
+ */
6
+ export {};
7
+ //# sourceMappingURL=RegisterCommand.Types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RegisterCommand.Types.js","sourceRoot":"","sources":["../../Source/Register/RegisterCommand.Types.ts"],"names":[],"mappings":"AAAA;;;;GAIG"}
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env node
2
+ export declare function Register(): Promise<void>;
3
+ //# sourceMappingURL=RegisterCommand.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RegisterCommand.d.ts","sourceRoot":"","sources":["../../Source/Register/RegisterCommand.ts"],"names":[],"mappings":";AAgKA,wBAAsB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAc9C"}
@@ -0,0 +1,120 @@
1
+ #!/usr/bin/env node
2
+ /* File: RegisterCommand.ts
3
+ * Author: Gage Sorrell <gage@sorrell.sh>
4
+ * Copyright: (c) 2026 Gage Sorrell
5
+ * License: MIT
6
+ */
7
+ import { DefaultConfigFileName } from "../index.js";
8
+ import { GetPackageRootDirectory, OraTask, Try } from "@sorrell/utilities";
9
+ import Chalk from "chalk";
10
+ import { Code } from "@sorrell/cli-utilities";
11
+ import { readFile } from "fs/promises";
12
+ import { resolve } from "path";
13
+ async function GetConfigFromContents(Contents) {
14
+ try {
15
+ const ParsedJson = JSON.parse(Contents);
16
+ if (typeof ParsedJson === "object") {
17
+ if (ParsedJson !== null) {
18
+ if ("main" in ParsedJson && typeof ParsedJson.main === "object" && ParsedJson.main !== null) {
19
+ if ("name" in ParsedJson.main) {
20
+ if ("path" in ParsedJson.main) {
21
+ if ("renderer" in ParsedJson && typeof ParsedJson.renderer === "object" && ParsedJson.renderer !== null) {
22
+ if ("name" in ParsedJson.renderer) {
23
+ if ("path" in ParsedJson.renderer) {
24
+ if ("outPath" in ParsedJson) {
25
+ if (typeof ParsedJson.outPath === "string") {
26
+ return ParsedJson;
27
+ }
28
+ else {
29
+ throw new Error(`The ${Code("outPath")} property of the config file was specified, but it must be a string.`);
30
+ }
31
+ }
32
+ else {
33
+ throw new Error(`The config file is missing the property ${Code("outPath")}.`);
34
+ }
35
+ }
36
+ else {
37
+ throw new Error(`The ${Code("renderer")} property in the config file is missing property ${Code("path")}.`);
38
+ }
39
+ }
40
+ else {
41
+ throw new Error(`The ${Code("renderer")} property in the config file is missing property ${Code("name")}.`);
42
+ }
43
+ }
44
+ else {
45
+ throw new Error(`The config file is missing the property ${Code("main")}.`);
46
+ }
47
+ }
48
+ else {
49
+ throw new Error(`The ${Code("main")} property in the config file is missing property ${Code("path")}.`);
50
+ }
51
+ }
52
+ else {
53
+ throw new Error(`The ${Code("main")} property in the config file is missing property ${Code("name")}.`);
54
+ }
55
+ }
56
+ else {
57
+ throw new Error(`The config file is missing the property ${Code("main")}.`);
58
+ }
59
+ }
60
+ else {
61
+ throw new Error(`A config file was found, but parsed into ${Code("null")}.`);
62
+ }
63
+ }
64
+ else {
65
+ throw new Error("A config file was found, but could not be parsed into an object.");
66
+ }
67
+ }
68
+ catch (_Error) {
69
+ throw new Error("A config file was found, but its contents are invalid.");
70
+ }
71
+ }
72
+ async function GetConfigContents() {
73
+ const DefaultPath = resolve(await GetPackageRootDirectory(), DefaultConfigFileName);
74
+ const { Data: DefaultPathConfigContents } = await Try(readFile(DefaultPath, { encoding: "utf-8" }));
75
+ if (DefaultPathConfigContents !== undefined) {
76
+ return DefaultPathConfigContents;
77
+ }
78
+ const { Data: PackageJsonContents } = await Try(readFile(resolve(await GetPackageRootDirectory(), "package.json"), { encoding: "utf-8" }));
79
+ if (PackageJsonContents === undefined) {
80
+ /* eslint-disable-next-line @stylistic/max-len */
81
+ throw new Error(`Could not find a config file at the default path, and the project's ${Code("package.json")} could not be loaded. Exiting...`);
82
+ }
83
+ const PackageJson = JSON.parse(PackageJsonContents);
84
+ if ("config" in PackageJson) {
85
+ if ("electron-reactive-event-cli" in PackageJson.config) {
86
+ const CustomPath = PackageJson.config["electron-reactive-event-cli"];
87
+ const { Data: CustomPathCliConfigContents } = await Try(readFile(CustomPath, { encoding: "utf-8" }));
88
+ if (CustomPathCliConfigContents !== undefined) {
89
+ try {
90
+ return CustomPathCliConfigContents;
91
+ }
92
+ catch (_Error) {
93
+ throw new Error("A custom config file was found, but it could not be parsed.");
94
+ }
95
+ }
96
+ else {
97
+ /* eslint-disable-next-line @stylistic/max-len */
98
+ throw new Error(`Found a custom path for the config file in ${Code("package.json")} in the ${Code("config")} property, but the file could not be loaded. Exiting...`);
99
+ }
100
+ }
101
+ else {
102
+ throw new Error(`Could not find a config file in the default path, and the ${Code("package.json")} ${Chalk.italic("does")} feature a ${Code("config")} property, but not a ${Code("config.electron-reactive-event-cli")} property.`);
103
+ }
104
+ }
105
+ else {
106
+ throw new Error(`Could not find a config file in the default path, and the ${Code("package.json")} does not have a ${Code("config")} property in which a custom path would be provided.`);
107
+ }
108
+ }
109
+ async function GetCliConfig() {
110
+ return GetConfigFromContents(await GetConfigContents());
111
+ }
112
+ export async function Register() {
113
+ const { Data: CliConfig } = await OraTask(GetCliConfig, "Loading your config file...");
114
+ if (CliConfig === undefined) {
115
+ process.exit(1);
116
+ }
117
+ // Find all event declarations
118
+ // Rewrite built module
119
+ }
120
+ //# sourceMappingURL=RegisterCommand.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RegisterCommand.js","sourceRoot":"","sources":["../../Source/Register/RegisterCommand.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=RegisterCommandBin.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RegisterCommandBin.d.ts","sourceRoot":"","sources":["../../Source/Register/RegisterCommandBin.ts"],"names":[],"mappings":""}
@@ -0,0 +1,8 @@
1
+ /* File: RegisterCommandBin.ts
2
+ * Author: Gage Sorrell <gage@sorrell.sh>
3
+ * Copyright: (c) 2026 Gage Sorrell
4
+ * License: MIT
5
+ */
6
+ import { Register } from "./RegisterCommand.js";
7
+ Register();
8
+ //# sourceMappingURL=RegisterCommandBin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RegisterCommandBin.js","sourceRoot":"","sources":["../../Source/Register/RegisterCommandBin.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEhD,QAAQ,EAAE,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from "./RegisterCommand.Types.js";
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../Source/Register/index.ts"],"names":[],"mappings":"AAMA,cAAc,4BAA4B,CAAC"}
@@ -0,0 +1,7 @@
1
+ /* File: index.ts
2
+ * Author: Gage Sorrell <gage@sorrell.sh>
3
+ * Copyright: (c) 2026 Gage Sorrell
4
+ * License: MIT
5
+ */
6
+ export * from "./RegisterCommand.Types.js";
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../Source/Register/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,4BAA4B,CAAC"}
@@ -15,12 +15,5 @@ export type FCliConfig = {
15
15
  };
16
16
  /** Where the module containing the `declare module` blocks will be written. */
17
17
  outPath: string;
18
- /**
19
- * The glob(s) of path(s) to modules containing your event declarations.
20
- *
21
- * If this property is not specified, then the paths given in the
22
- * `include` property of your package's `tsconfig.json` will be used.
23
- */
24
- files?: Array<string>;
25
18
  };
26
19
  //# sourceMappingURL=Schema.Types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Schema.Types.d.ts","sourceRoot":"","sources":["../Source/Schema.Types.ts"],"names":[],"mappings":"AASA,MAAM,MAAM,UAAU,GAClB;IACI,6EAA6E;IAC7E,IAAI,EACJ;QACI,sCAAsC;QACtC,IAAI,EAAE,MAAM,CAAC;QAEb,+DAA+D;QAC/D,IAAI,EAAE,MAAM,CAAC;KAChB,CAAC;IAEF,iFAAiF;IACjF,QAAQ,EACR;QACI,sCAAsC;QACtC,IAAI,EAAE,MAAM,CAAC;QAEb,+DAA+D;QAC/D,IAAI,EAAE,MAAM,CAAC;KAChB,CAAC;IAEF,+EAA+E;IAC/E,OAAO,EAAE,MAAM,CAAC;IAEhB;;;;;OAKG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;CACzB,CAAC"}
1
+ {"version":3,"file":"Schema.Types.d.ts","sourceRoot":"","sources":["../Source/Schema.Types.ts"],"names":[],"mappings":"AASA,MAAM,MAAM,UAAU,GAClB;IACI,6EAA6E;IAC7E,IAAI,EACJ;QACI,sCAAsC;QACtC,IAAI,EAAE,MAAM,CAAC;QAEb,+DAA+D;QAC/D,IAAI,EAAE,MAAM,CAAC;KAChB,CAAC;IAEF,iFAAiF;IACjF,QAAQ,EACR;QACI,sCAAsC;QACtC,IAAI,EAAE,MAAM,CAAC;QAEb,+DAA+D;QAC/D,IAAI,EAAE,MAAM,CAAC;KAChB,CAAC;IAEF,+EAA+E;IAC/E,OAAO,EAAE,MAAM,CAAC;CACnB,CAAC"}
@@ -1,5 +1,2 @@
1
- export type FSelectedInterfaces = {
2
- Main: string | undefined;
3
- Renderer: string | undefined;
4
- };
1
+ export {};
5
2
  //# sourceMappingURL=Select.Types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Select.Types.d.ts","sourceRoot":"","sources":["../Source/Select.Types.ts"],"names":[],"mappings":"AAMA,MAAM,MAAM,mBAAmB,GAC3B;IACI,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;IACzB,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;CAChC,CAAC"}
1
+ {"version":3,"file":"Select.Types.d.ts","sourceRoot":"","sources":["../Source/Select.Types.ts"],"names":[],"mappings":""}
@@ -1,9 +1,2 @@
1
- import type { FSelectedInterfaces } from "./Select.Types.js";
2
- export declare function PromptModule(ProjectRootDirectoryPathArgument: string, SelectedInterfaces: FSelectedInterfaces | undefined): Promise<string>;
3
- export type FRegistrarInterfaceNames = Readonly<{
4
- Main: ReadonlyArray<string>;
5
- Renderer: ReadonlyArray<string>;
6
- }>;
7
- export declare const GoBackChoice: string;
8
- export declare function SelectInterfacesFromModule(Path: string, SelectedThusFar: FSelectedInterfaces | undefined): Promise<FSelectedInterfaces>;
1
+ export {};
9
2
  //# sourceMappingURL=Select.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Select.d.ts","sourceRoot":"","sources":["../Source/Select.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAkI7D,wBAAsB,YAAY,CAC9B,gCAAgC,EAAE,MAAM,EACxC,kBAAkB,EAAE,mBAAmB,GAAG,SAAS,GACpD,OAAO,CAAC,MAAM,CAAC,CAyHjB;AAED,MAAM,MAAM,wBAAwB,GAAG,QAAQ,CAAC;IAC5C,IAAI,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAC5B,QAAQ,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;CACnC,CAAC,CAAC;AAuJH,eAAO,MAAM,YAAY,EAAE,MAA2C,CAAC;AAEvE,wBAAsB,0BAA0B,CAC5C,IAAI,EAAE,MAAM,EACZ,eAAe,EAAE,mBAAmB,GAAG,SAAS,GACjD,OAAO,CAAC,mBAAmB,CAAC,CA4E9B"}
1
+ {"version":3,"file":"Select.d.ts","sourceRoot":"","sources":["../Source/Select.ts"],"names":[],"mappings":""}
@@ -1,350 +1,7 @@
1
+ export {};
1
2
  /* File: Select.ts
2
3
  * Author: Gage Sorrell <gage@sorrell.sh>
3
4
  * Copyright: (c) 2026 Gage Sorrell
4
5
  * License: MIT
5
6
  */
6
- /* eslint-disable no-console */
7
- import { fileSelector } from "@sorrell/inquirer-file-selector";
8
- import { basename, normalize, resolve } from "path";
9
- import { confirm, select } from "@inquirer/prompts";
10
- import { Code } from "@sorrell/cli-utilities";
11
- import { stat } from "fs/promises";
12
- import ts from "typescript";
13
- // type FMenuSelection =
14
- // | {
15
- // Kind: "Parent";
16
- // }
17
- // | {
18
- // Kind: "Directory";
19
- // AbsolutePath: string;
20
- // }
21
- // | {
22
- // Kind: "File";
23
- // AbsolutePath: string;
24
- // };
25
- // type TChoice<ValueType> =
26
- // {
27
- // description?: string;
28
- // disabled?: boolean | string;
29
- // name: string;
30
- // value: ValueType;
31
- // };
32
- // function IsTypeScriptModuleFile(FileName: string): boolean
33
- // {
34
- // const Extension: string = extname(FileName).toLowerCase();
35
- // return Extension === ".ts" || Extension === ".tsx";
36
- // }
37
- // function GetDisplayDirectory(ProjectRootDirectoryPath: string, CurrentDirectoryPath: string): string
38
- // {
39
- // const RelativeDirectoryPath: string = relative(ProjectRootDirectoryPath, CurrentDirectoryPath);
40
- // return RelativeDirectoryPath === "" ? "." : RelativeDirectoryPath;
41
- // }
42
- // async function ReadMenuChoices(
43
- // ProjectRootDirectoryPath: string,
44
- // CurrentDirectoryPath: string
45
- // ): Promise<ReadonlyArray<TChoice<FMenuSelection>>>
46
- // {
47
- // type FDirectory = Dirent<string>;
48
- // const DirectoryEntries: ReadonlyArray<FDirectory> =
49
- // await readdir(CurrentDirectoryPath, { withFileTypes: true });
50
- // const SortDirectories = (A: FDirectory, B: FDirectory): number =>
51
- // {
52
- // return A.name.localeCompare(
53
- // B.name,
54
- // undefined,
55
- // {
56
- // numeric: true,
57
- // sensitivity: "base"
58
- // });
59
- // };
60
- // const GetDirectoryChoice = (DirectoryEntry: FDirectory): TChoice<FMenuSelection> =>
61
- // {
62
- // const AbsolutePath: string = resolve(CurrentDirectoryPath, DirectoryEntry.name);
63
- // return {
64
- // description: "Open directory",
65
- // name: `${DirectoryEntry.name}/`,
66
- // value: {
67
- // AbsolutePath,
68
- // Kind: "Directory"
69
- // }
70
- // };
71
- // };
72
- // const IsDirectory = (DirectoryEntry: FDirectory): boolean =>
73
- // {
74
- // return DirectoryEntry.isDirectory();
75
- // };
76
- // const DirectoryChoices: Array<TChoice<FMenuSelection>> =
77
- // DirectoryEntries
78
- // .filter(IsDirectory)
79
- // .sort(SortDirectories)
80
- // .map(GetDirectoryChoice);
81
- // const IsModule = (DirectoryEntry: FDirectory): boolean =>
82
- // {
83
- // return (
84
- // DirectoryEntry.isFile() &&
85
- // IsTypeScriptModuleFile(DirectoryEntry.name)
86
- // );
87
- // };
88
- // const GetModuleChoice = (DirectoryEntry: FDirectory): TChoice<FMenuSelection> =>
89
- // {
90
- // const AbsolutePath: string = resolve(CurrentDirectoryPath, DirectoryEntry.name);
91
- // return {
92
- // description: "Select module",
93
- // name: DirectoryEntry.name,
94
- // value: {
95
- // AbsolutePath,
96
- // Kind: "File"
97
- // }
98
- // };
99
- // };
100
- // const FileChoices: Array<TChoice<FMenuSelection>> =
101
- // DirectoryEntries
102
- // .filter(IsModule)
103
- // .sort(SortDirectories)
104
- // .map(GetModuleChoice);
105
- // const Choices: Array<TChoice<FMenuSelection>> = [ ];
106
- // if (CurrentDirectoryPath !== ProjectRootDirectoryPath)
107
- // {
108
- // Choices.push({
109
- // description: "Go to parent directory",
110
- // name: "../",
111
- // value: {
112
- // Kind: "Parent"
113
- // }
114
- // });
115
- // }
116
- // Choices.push(...DirectoryChoices);
117
- // Choices.push(...FileChoices);
118
- // return Choices;
119
- // }
120
- export async function PromptModule(ProjectRootDirectoryPathArgument, SelectedInterfaces) {
121
- const ProjectRootDirectoryPath = resolve(ProjectRootDirectoryPathArgument);
122
- const ProjectRootDirectoryStats = await stat(ProjectRootDirectoryPath);
123
- if (!ProjectRootDirectoryStats.isDirectory()) {
124
- throw new Error(`The path "${ProjectRootDirectoryPath}" is not a directory.`);
125
- }
126
- const IsModuleOrDirectory = (InItem) => {
127
- return ((InItem.name.endsWith(".ts") ||
128
- InItem.name.endsWith(".tsx") ||
129
- InItem.isDirectory) &&
130
- normalize(InItem.path) !== normalize(ProjectRootDirectoryPath));
131
- };
132
- const InterfaceTypesRemaining = SelectedInterfaces?.Main === undefined
133
- ? SelectedInterfaces?.Renderer === undefined
134
- ? "one (or both) of your registrar interfaces"
135
- : "your Main registrar interface"
136
- : "your Renderer registrar interface";
137
- console.log(`Choose the module that contains ${InterfaceTypesRemaining}.`);
138
- const Selection = await fileSelector({
139
- basePath: ProjectRootDirectoryPath,
140
- filter: IsModuleOrDirectory,
141
- keybinds: {
142
- back: ["left"],
143
- confirm: ["enter", "return"],
144
- down: ["down"],
145
- forward: ["right"],
146
- up: ["up"]
147
- },
148
- loop: true,
149
- message: "Select a file or directory:",
150
- theme: {
151
- labels: {
152
- hints: {
153
- confirm: "{{confirm}} to select"
154
- },
155
- keys: {
156
- back: "←",
157
- confirm: "↵",
158
- down: "↓",
159
- forward: "→",
160
- up: "↑"
161
- }
162
- }
163
- },
164
- type: "file"
165
- });
166
- return Selection.path;
167
- // let CurrentDirectoryPath: string = ProjectRootDirectoryPath;
168
- // while (true)
169
- // {
170
- // const Choices: ReadonlyArray<TChoice<FMenuSelection>> = await ReadMenuChoices(
171
- // ProjectRootDirectoryPath,
172
- // CurrentDirectoryPath
173
- // );
174
- // if (Choices.length === 0)
175
- // {
176
- // throw new Error(
177
- // `No subdirectories or TypeScript modules were found under "${ProjectRootDirectoryPath}".`
178
- // );
179
- // }
180
- // const DisplayDirectory: string = GetDisplayDirectory(
181
- // ProjectRootDirectoryPath,
182
- // CurrentDirectoryPath
183
- // );
184
- // // const Selection: FMenuSelection = await select<FMenuSelection>({
185
- // // choices: Choices,
186
- // // loop: true,
187
- // // message: `Select a TypeScript module (${ DisplayDirectory })`
188
- // // });
189
- // // switch (Selection.Kind)
190
- // // {
191
- // // case "Parent":
192
- // // CurrentDirectoryPath = resolve(CurrentDirectoryPath, "..");
193
- // // break;
194
- // // case "Directory":
195
- // // CurrentDirectoryPath = Selection.AbsolutePath;
196
- // // break;
197
- // // case "File":
198
- // // {
199
- // // const RelativeModulePath: string = relative(
200
- // // ProjectRootDirectoryPath,
201
- // // Selection.AbsolutePath
202
- // // );
203
- // // const Confirmed: boolean = await confirm({
204
- // // message: `Use "${RelativeModulePath}"?`
205
- // // });
206
- // // if (Confirmed)
207
- // // {
208
- // // return Selection.AbsolutePath;
209
- // // }
210
- // // break;
211
- // // }
212
- // // }
213
- // }
214
- }
215
- function NormalizePathForComparison(FilePath) {
216
- const ResolvedPath = resolve(FilePath);
217
- return ts.sys.useCaseSensitiveFileNames
218
- ? ResolvedPath
219
- : ResolvedPath.toLowerCase();
220
- }
221
- function GetSourceFileFromProgram(Program, ModulePath) {
222
- const NormalizedModulePath = NormalizePathForComparison(ModulePath);
223
- const SourceFile = Program
224
- .getSourceFiles()
225
- .find((CurrentSourceFile) => {
226
- return NormalizePathForComparison(CurrentSourceFile.fileName) === NormalizedModulePath;
227
- });
228
- if (SourceFile === undefined) {
229
- throw new Error(`Could not load source file "${ModulePath}".`);
230
- }
231
- return SourceFile;
232
- }
233
- function IsInterfaceExportedFromModule(Checker, SourceFile, InterfaceDeclaration) {
234
- const ModuleSymbol = Checker.getSymbolAtLocation(SourceFile);
235
- const InterfaceSymbol = Checker.getSymbolAtLocation(InterfaceDeclaration.name);
236
- if (ModuleSymbol === undefined || InterfaceSymbol === undefined) {
237
- return false;
238
- }
239
- const ExportSymbols = Checker.getExportsOfModule(ModuleSymbol);
240
- return ExportSymbols.some((ExportSymbol) => {
241
- const TargetSymbol = (ExportSymbol.flags & ts.SymbolFlags.Alias) !== 0
242
- ? Checker.getAliasedSymbol(ExportSymbol)
243
- : ExportSymbol;
244
- return TargetSymbol === InterfaceSymbol;
245
- });
246
- }
247
- function GetExtendedBaseInterfaceNames(Checker, InterfaceDeclaration) {
248
- const BaseInterfaceNames = new Set();
249
- const ExtendsClauses = InterfaceDeclaration.heritageClauses?.filter((HeritageClause) => {
250
- return HeritageClause.token === ts.SyntaxKind.ExtendsKeyword;
251
- }) ?? [];
252
- for (const ExtendsClause of ExtendsClauses) {
253
- for (const HeritageType of ExtendsClause.types) {
254
- let Symbol = Checker.getSymbolAtLocation(HeritageType.expression);
255
- if (Symbol === undefined) {
256
- continue;
257
- }
258
- if ((Symbol.flags & ts.SymbolFlags.Alias) !== 0) {
259
- Symbol = Checker.getAliasedSymbol(Symbol);
260
- }
261
- BaseInterfaceNames.add(Symbol.getName());
262
- }
263
- }
264
- return BaseInterfaceNames;
265
- }
266
- function GetExportedRegistrarInterfaceNames(ModulePath) {
267
- const ResolvedModulePath = resolve(ModulePath);
268
- const Program = ts.createProgram([ResolvedModulePath], {
269
- jsx: ts.JsxEmit.ReactJSX,
270
- module: ts.ModuleKind.NodeNext,
271
- moduleResolution: ts.ModuleResolutionKind.NodeNext,
272
- noEmit: true,
273
- skipLibCheck: true,
274
- target: ts.ScriptTarget.ESNext
275
- });
276
- const Checker = Program.getTypeChecker();
277
- const SourceFile = GetSourceFileFromProgram(Program, ResolvedModulePath);
278
- const MainNames = new Set();
279
- const RendererNames = new Set();
280
- for (const Statement of SourceFile.statements) {
281
- if (!ts.isInterfaceDeclaration(Statement)) {
282
- continue;
283
- }
284
- if (!IsInterfaceExportedFromModule(Checker, SourceFile, Statement)) {
285
- continue;
286
- }
287
- const BaseInterfaceNames = GetExtendedBaseInterfaceNames(Checker, Statement);
288
- if (BaseInterfaceNames.has("IMainRegistrarBase")) {
289
- MainNames.add(Statement.name.text);
290
- }
291
- if (BaseInterfaceNames.has("IRendererRegistrarBase")) {
292
- RendererNames.add(Statement.name.text);
293
- }
294
- }
295
- return {
296
- Main: [...MainNames],
297
- Renderer: [...RendererNames]
298
- };
299
- }
300
- export const GoBackChoice = "Choose another module (go back).";
301
- export async function SelectInterfacesFromModule(Path, SelectedThusFar) {
302
- const Interfaces = await GetExportedRegistrarInterfaceNames(Path);
303
- const GetChoices = (Interfaces) => {
304
- return [...Interfaces, GoBackChoice];
305
- };
306
- const Out = {
307
- Main: undefined,
308
- Renderer: undefined
309
- };
310
- const NoneFound = Interfaces.Main.length === 0 && Interfaces.Renderer.length === 0;
311
- if (NoneFound) {
312
- return Out;
313
- }
314
- const GetSelection = async (Owner) => {
315
- if (Interfaces[Owner].length > 1) {
316
- const choices = [...GetChoices(Interfaces[Owner]), GoBackChoice];
317
- /* eslint-disable-next-line @stylistic/max-len */
318
- const message = `There were ${Interfaces[Owner].length} interfaces found in the module that ${Code("extend IMainRegistrar")}.\nSelect the interface that you would like to use.`;
319
- const Selection = await select({
320
- choices,
321
- loop: true,
322
- message
323
- });
324
- return Selection;
325
- }
326
- else {
327
- /* eslint-disable-next-line @stylistic/max-len */
328
- const message = `The interface ${Code(Interfaces[Owner][0] || "")} is the only exported interface in ${Code(basename(Path))} that ${Code(`extends I${Owner}RegistrarBase`)}.\nUse this interface?`;
329
- return (await confirm({ default: true, message }))
330
- ? Interfaces[Owner][0]
331
- : GoBackChoice;
332
- }
333
- };
334
- const PromptMainInterface = (Interfaces.Main.length > 0 &&
335
- (SelectedThusFar === undefined ||
336
- SelectedThusFar.Main === undefined ||
337
- SelectedThusFar.Main === GoBackChoice));
338
- if (PromptMainInterface) {
339
- Out.Main = await GetSelection("Main");
340
- }
341
- const PromptRendererInterface = (Interfaces.Renderer.length > 0 &&
342
- (SelectedThusFar === undefined ||
343
- SelectedThusFar.Renderer === undefined ||
344
- SelectedThusFar.Renderer === GoBackChoice));
345
- if (PromptRendererInterface) {
346
- Out.Renderer = await GetSelection("Renderer");
347
- }
348
- return Out;
349
- }
350
7
  //# sourceMappingURL=Select.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Select.js","sourceRoot":"","sources":["../Source/Select.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Select.js","sourceRoot":"","sources":["../Source/Select.ts"],"names":[],"mappings":";AAAA;;;;GAIG"}