2025-04-29 08:29:09 -07:00
|
|
|
/**
|
|
|
|
|
* @license
|
|
|
|
|
* Copyright 2025 Google LLC
|
|
|
|
|
* SPDX-License-Identifier: Apache-2.0
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Checks if a query string potentially represents an '@' command.
|
|
|
|
|
* It triggers if the query starts with '@' or contains '@' preceded by whitespace
|
|
|
|
|
* and followed by a non-whitespace character.
|
|
|
|
|
*
|
|
|
|
|
* @param query The input query string.
|
|
|
|
|
* @returns True if the query looks like an '@' command, false otherwise.
|
|
|
|
|
*/
|
2025-04-29 15:39:36 -07:00
|
|
|
export const isAtCommand = (query: string): boolean =>
|
2025-04-29 08:29:09 -07:00
|
|
|
// Check if starts with @ OR has a space, then @, then a non-space character.
|
|
|
|
|
query.startsWith('@') || /\s@\S/.test(query);
|
2025-04-29 13:29:57 -07:00
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Checks if a query string represents a slash command (starts with '/').
|
|
|
|
|
*
|
|
|
|
|
* @param query The input query string.
|
|
|
|
|
* @returns True if the query is a slash command, false otherwise.
|
|
|
|
|
*/
|
|
|
|
|
export const isSlashCommand = (query: string): boolean =>
|
|
|
|
|
query.trim().startsWith('/');
|