summaryrefslogtreecommitdiff
path: root/packages/cli/src/ui/utils/commandUtils.ts
diff options
context:
space:
mode:
Diffstat (limited to 'packages/cli/src/ui/utils/commandUtils.ts')
-rw-r--r--packages/cli/src/ui/utils/commandUtils.ts26
1 files changed, 25 insertions, 1 deletions
diff --git a/packages/cli/src/ui/utils/commandUtils.ts b/packages/cli/src/ui/utils/commandUtils.ts
index 4280388f..80ed51ae 100644
--- a/packages/cli/src/ui/utils/commandUtils.ts
+++ b/packages/cli/src/ui/utils/commandUtils.ts
@@ -27,7 +27,7 @@ export const isAtCommand = (query: string): boolean =>
*/
export const isSlashCommand = (query: string): boolean => query.startsWith('/');
-//Copies a string snippet to the clipboard for different platforms
+// Copies a string snippet to the clipboard for different platforms
export const copyToClipboard = async (text: string): Promise<void> => {
const run = (cmd: string, args: string[]) =>
new Promise<void>((resolve, reject) => {
@@ -80,3 +80,27 @@ export const copyToClipboard = async (text: string): Promise<void> => {
throw new Error(`Unsupported platform: ${process.platform}`);
}
};
+
+export const getUrlOpenCommand = (): string => {
+ // --- Determine the OS-specific command to open URLs ---
+ let openCmd: string;
+ switch (process.platform) {
+ case 'darwin':
+ openCmd = 'open';
+ break;
+ case 'win32':
+ openCmd = 'start';
+ break;
+ case 'linux':
+ openCmd = 'xdg-open';
+ break;
+ default:
+ // Default to xdg-open, which appears to be supported for the less popular operating systems.
+ openCmd = 'xdg-open';
+ console.warn(
+ `Unknown platform: ${process.platform}. Attempting to open URLs with: ${openCmd}.`,
+ );
+ break;
+ }
+ return openCmd;
+};