35 lines
No EOL
3.8 KiB
JavaScript
Executable file
35 lines
No EOL
3.8 KiB
JavaScript
Executable file
export class IonicRouteStrategy {
|
|
shouldDetach(_route) {
|
|
return false;
|
|
}
|
|
shouldAttach(_route) {
|
|
return false;
|
|
}
|
|
store(_route, _detachedTree) {
|
|
return;
|
|
}
|
|
retrieve(_route) {
|
|
return null;
|
|
}
|
|
shouldReuseRoute(future, curr) {
|
|
if (future.routeConfig !== curr.routeConfig) {
|
|
return false;
|
|
}
|
|
// checking router params
|
|
const futureParams = future.params;
|
|
const currentParams = curr.params;
|
|
const keysA = Object.keys(futureParams);
|
|
const keysB = Object.keys(currentParams);
|
|
if (keysA.length !== keysB.length) {
|
|
return false;
|
|
}
|
|
// Test for A's keys different from B.
|
|
for (const key of keysA) {
|
|
if (currentParams[key] !== futureParams[key]) {
|
|
return false;
|
|
}
|
|
}
|
|
return true;
|
|
}
|
|
}
|
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW9uaWMtcm91dGVyLXJldXNlLXN0cmF0ZWd5LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGlvbmljL2FuZ3VsYXIvIiwic291cmNlcyI6WyJ1dGlsL2lvbmljLXJvdXRlci1yZXVzZS1zdHJhdGVneS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLE9BQU8sa0JBQWtCO0lBRTdCLFlBQVksQ0FBQyxNQUE4QjtRQUN6QyxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFRCxZQUFZLENBQUMsTUFBOEI7UUFDekMsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRUQsS0FBSyxDQUFDLE1BQThCLEVBQUUsYUFBa0M7UUFDdEUsT0FBTztJQUNULENBQUM7SUFFRCxRQUFRLENBQUMsTUFBOEI7UUFDckMsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsZ0JBQWdCLENBQ2QsTUFBOEIsRUFDOUIsSUFBNEI7UUFFNUIsSUFBSSxNQUFNLENBQUMsV0FBVyxLQUFLLElBQUksQ0FBQyxXQUFXLEVBQUU7WUFDM0MsT0FBTyxLQUFLLENBQUM7U0FDZDtRQUVELHlCQUF5QjtRQUN6QixNQUFNLFlBQVksR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDO1FBQ25DLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7UUFDbEMsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUN4QyxNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBRXpDLElBQUksS0FBSyxDQUFDLE1BQU0sS0FBSyxLQUFLLENBQUMsTUFBTSxFQUFFO1lBQ2pDLE9BQU8sS0FBSyxDQUFDO1NBQ2Q7UUFFRCxzQ0FBc0M7UUFDdEMsS0FBSyxNQUFNLEdBQUcsSUFBSSxLQUFLLEVBQUU7WUFDdkIsSUFBSSxhQUFhLENBQUMsR0FBRyxDQUFDLEtBQUssWUFBWSxDQUFDLEdBQUcsQ0FBQyxFQUFFO2dCQUM1QyxPQUFPLEtBQUssQ0FBQzthQUNkO1NBQ0Y7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFjdGl2YXRlZFJvdXRlU25hcHNob3QsIERldGFjaGVkUm91dGVIYW5kbGUsIFJvdXRlUmV1c2VTdHJhdGVneSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5cbmV4cG9ydCBjbGFzcyBJb25pY1JvdXRlU3RyYXRlZ3kgaW1wbGVtZW50cyBSb3V0ZVJldXNlU3RyYXRlZ3kge1xuXG4gIHNob3VsZERldGFjaChfcm91dGU6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QpOiBib29sZWFuIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBzaG91bGRBdHRhY2goX3JvdXRlOiBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgc3RvcmUoX3JvdXRlOiBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LCBfZGV0YWNoZWRUcmVlOiBEZXRhY2hlZFJvdXRlSGFuZGxlKTogdm9pZCB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgcmV0cmlldmUoX3JvdXRlOiBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90KTogRGV0YWNoZWRSb3V0ZUhhbmRsZSB8IG51bGwge1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgc2hvdWxkUmV1c2VSb3V0ZShcbiAgICBmdXR1cmU6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QsXG4gICAgY3VycjogQWN0aXZhdGVkUm91dGVTbmFwc2hvdFxuICApOiBib29sZWFuIHtcbiAgICBpZiAoZnV0dXJlLnJvdXRlQ29uZmlnICE9PSBjdXJyLnJvdXRlQ29uZmlnKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgLy8gY2hlY2tpbmcgcm91dGVyIHBhcmFtc1xuICAgIGNvbnN0IGZ1dHVyZVBhcmFtcyA9IGZ1dHVyZS5wYXJhbXM7XG4gICAgY29uc3QgY3VycmVudFBhcmFtcyA9IGN1cnIucGFyYW1zO1xuICAgIGNvbnN0IGtleXNBID0gT2JqZWN0LmtleXMoZnV0dXJlUGFyYW1zKTtcbiAgICBjb25zdCBrZXlzQiA9IE9iamVjdC5rZXlzKGN1cnJlbnRQYXJhbXMpO1xuXG4gICAgaWYgKGtleXNBLmxlbmd0aCAhPT0ga2V5c0IubGVuZ3RoKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgLy8gVGVzdCBmb3IgQSdzIGtleXMgZGlmZmVyZW50IGZyb20gQi5cbiAgICBmb3IgKGNvbnN0IGtleSBvZiBrZXlzQSkge1xuICAgICAgaWYgKGN1cnJlbnRQYXJhbXNba2V5XSAhPT0gZnV0dXJlUGFyYW1zW2tleV0pIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxufVxuIl19
|