chore: add jsdoc comments to utils
This commit is contained in:
parent
a30e0d1fda
commit
85c86de61e
2 changed files with 20 additions and 0 deletions
|
|
@ -63,12 +63,22 @@ export type DataType =
|
|||
| "array"
|
||||
| "null";
|
||||
|
||||
/**
|
||||
* Determines the specific data type of a JSON value
|
||||
* @param value The JSON value to analyze
|
||||
* @returns The specific data type including "array" and "null" as distinct types
|
||||
*/
|
||||
export function getDataType(value: JsonValue): DataType {
|
||||
if (Array.isArray(value)) return "array";
|
||||
if (value === null) return "null";
|
||||
return typeof value;
|
||||
}
|
||||
|
||||
/**
|
||||
* Attempts to parse a string as JSON, only for objects and arrays
|
||||
* @param str The string to parse
|
||||
* @returns Object with success boolean and either parsed data or original string
|
||||
*/
|
||||
export function tryParseJson(str: string): {
|
||||
success: boolean;
|
||||
data: JsonValue;
|
||||
|
|
|
|||
|
|
@ -24,6 +24,11 @@ type CallbackParams =
|
|||
error_uri: string | null;
|
||||
};
|
||||
|
||||
/**
|
||||
* Parses OAuth 2.1 callback parameters from a URL search string
|
||||
* @param location The URL search string (e.g., "?code=abc123" or "?error=access_denied")
|
||||
* @returns Parsed callback parameters with success/error information
|
||||
*/
|
||||
export const parseOAuthCallbackParams = (location: string): CallbackParams => {
|
||||
const params = new URLSearchParams(location);
|
||||
|
||||
|
|
@ -62,6 +67,11 @@ export const generateOAuthState = () => {
|
|||
);
|
||||
};
|
||||
|
||||
/**
|
||||
* Generates a human-readable error description from OAuth callback error parameters
|
||||
* @param params OAuth error callback parameters containing error details
|
||||
* @returns Formatted multiline error message with error code, description, and optional URI
|
||||
*/
|
||||
export const generateOAuthErrorDescription = (
|
||||
params: Extract<CallbackParams, { successful: false }>,
|
||||
): string => {
|
||||
|
|
|
|||
Loading…
Reference in a new issue