diff --git a/src/index.ts b/src/index.ts index c9ad2a50a16..ee391a24245 100644 --- a/src/index.ts +++ b/src/index.ts @@ -159,7 +159,7 @@ export { Events, setupEvents, setupProvideEvents } from './util/events'; export { IonicErrorHandler } from './util/ionic-error-handler'; export { Keyboard } from './platform/keyboard'; export { Form, IonicFormInput, IonicTapInput } from './util/form'; -export { reorderArray } from './util/util'; +export { reorderArray, normalizeURL } from './util/util'; export { Animation, AnimationOptions, EffectProperty, EffectState, PlayOptions } from './animations/animation'; export { PageTransition } from './transitions/page-transition'; export { Transition } from './transitions/transition'; diff --git a/src/util/util.ts b/src/util/util.ts index 6858060f86f..ef2fa614cc5 100644 --- a/src/util/util.ts +++ b/src/util/util.ts @@ -49,6 +49,17 @@ export function debounce(fn: Function, wait: number, immediate: boolean = false) }; } +/** + * Rewrites an absolute URL so it works across file and http based engines. + */ +export function normalizeURL(url: string): string { + const ionic = (window)['Ionic']; + if (ionic && ionic.normalizeURL) { + return ionic.normalizeURL(url); + } + return url; +} + /** * @hidden * Apply default arguments if they don't exist in