diff --git a/utils/utils-common.ts b/utils/utils-common.ts index 92d38d4df..0a22f8594 100644 --- a/utils/utils-common.ts +++ b/utils/utils-common.ts @@ -62,4 +62,14 @@ export function isFileOrResourcePath(path: string): boolean { return path.indexOf("~/") === 0 || // relative to AppRoot path.indexOf("/") === 0 || // absolute path path.indexOf(RESOURCE_PREFIX) === 0; // resource +} + +export function isDataURI(uri: string): boolean { + if (!types.isString(uri)) { + return false; + } + + var firstSegment = uri.trim().split(',')[0]; + + return firstSegment && firstSegment.indexOf("data:") === 0 && firstSegment.indexOf('base64') >= 0; } \ No newline at end of file diff --git a/utils/utils.d.ts b/utils/utils.d.ts index 25a22009d..bf572e0bf 100644 --- a/utils/utils.d.ts +++ b/utils/utils.d.ts @@ -140,4 +140,10 @@ * @param path The path. */ export function isFileOrResourcePath(path: string): boolean + + /** + * Returns true if the specified URI is data URI (http://en.wikipedia.org/wiki/Data_URI_scheme). + * @param uri The URI. + */ + export function isDataURI(uri: string): boolean }