UNPKG

cv-dialog-sdk

Version:

Catavolt Dialog Javascript API

44 lines (35 loc) 1.23 kB
/** * ***************************************************** */ export class DataUrl { private static PROTO_TOKEN: string = 'data:'; private static ENCODING_TOKEN: string = ';base64,'; private _mimeType: string; private _data: string; public static createDataUrl(mimeType: string, encodedData: string): string { return DataUrl.PROTO_TOKEN + mimeType + DataUrl.ENCODING_TOKEN + encodedData; } public static getMimeType(dataUrl: string): string { const startIndex: number = dataUrl.indexOf(':'); const endIndex: number = dataUrl.indexOf(';'); if (startIndex > -1 && endIndex > startIndex) { return dataUrl.substring(startIndex + 1, endIndex); } } public static getEncodedData(dataUrl: string): string { const startIndex: number = dataUrl.indexOf(','); if (startIndex > -1) { return dataUrl.substring(startIndex + 1); } } constructor(dataUrl: string) { this._mimeType = DataUrl.getMimeType(dataUrl); this._data = DataUrl.getEncodedData(dataUrl); } get mimeType(): string { return this._mimeType; } get data(): string { return this._data; } }