@acrool/js-utils
Version:
Common javascript utils methods for project development
73 lines (71 loc) • 1.71 kB
TypeScript
/**
* RGB轉HEX(16進位)色碼
* ex: rbg(0,0,0) -> #000000
*
* @param rgbStr RGB字串
*/
export declare function rgbToHex(rgbStr: string): string | undefined;
/**
* HEX(16進位)色碼轉轉RGB
* ex: #000000 -> rgb(0,0,0)
* @param hexStr HEX字串
* @param opacity 透明度 (提供透明度參數的話, 會轉回 RGBA)
*/
export declare function hexToRGB(hexStr: string, opacity?: number): string | undefined;
/**
* 空值轉Null
* ex: '' -> null
* ex: 0 -> null
* ex: undefined -> null
*
* @param value
* @param defaultValue
*/
export declare function emptyToNull<T extends string | number | null>(value?: T): T | null;
/**
* 轉數字
* ex: 1234 -> 1234
*
* @param value
* @param defaultValue
*/
export declare function anyToNumber(value: any, defaultValue?: number): number;
/**
* 轉布林
* ex: 'true' => true
*
* @param value
* @param isNotBooleanToUndefined
*/
export declare function anyToBoolean(value: any, isNotBooleanToUndefined?: boolean): boolean | undefined;
/**
* File 轉 Base64Str
*
* @param file
*/
export declare function fileToBase64(file: File): Promise<string>;
/**
* Base64 轉 Blob
* ex: JVBERi0xLjYNJeL...
* @param base64Str
* @param contentType
*/
export declare function base64ToBlob(base64Str: string, contentType: string): Blob;
/**
* Base64 轉 Blob (包含 contentType)
* ex: data:application/acrobat;base64, JVBERi0xLjYNJeL...
*
* @param base64Str
*/
export declare function base64ToBlobWithContentType(base64Str: string): Blob | null;
/**
* 將物件資料轉成 FormData
* ex: {
* profile: {name: 'jack'}
* }
*
* @param data
*/
export declare function objToFormData(data: {
[key: string]: any;
}): FormData;