mirror of
https://github.com/NativeScript/NativeScript.git
synced 2025-11-05 13:26:48 +08:00
chore: cleanup
This commit is contained in:
@@ -1,52 +1,50 @@
|
||||
// Types.
|
||||
import { FrameBase } from "./frame-common";
|
||||
import { FrameBase } from './frame-common';
|
||||
|
||||
export let frameStack: Array<FrameBase> = [];
|
||||
|
||||
export function topmost(): FrameBase {
|
||||
if (frameStack.length > 0) {
|
||||
return frameStack[frameStack.length - 1];
|
||||
}
|
||||
if (frameStack.length > 0) {
|
||||
return frameStack[frameStack.length - 1];
|
||||
}
|
||||
|
||||
return undefined;
|
||||
return undefined;
|
||||
}
|
||||
|
||||
export function _pushInFrameStack(frame: FrameBase): void {
|
||||
if (frame._isInFrameStack && frameStack[frameStack.length - 1] === frame) {
|
||||
return;
|
||||
}
|
||||
if (frame._isInFrameStack && frameStack[frameStack.length - 1] === frame) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (frame._isInFrameStack) {
|
||||
const indexOfFrame = frameStack.indexOf(frame);
|
||||
frameStack.splice(indexOfFrame, 1);
|
||||
}
|
||||
if (frame._isInFrameStack) {
|
||||
const indexOfFrame = frameStack.indexOf(frame);
|
||||
frameStack.splice(indexOfFrame, 1);
|
||||
}
|
||||
|
||||
frameStack.push(frame);
|
||||
frame._isInFrameStack = true;
|
||||
frameStack.push(frame);
|
||||
frame._isInFrameStack = true;
|
||||
}
|
||||
|
||||
export function _popFromFrameStack(frame: FrameBase): void {
|
||||
if (!frame._isInFrameStack) {
|
||||
return;
|
||||
}
|
||||
if (!frame._isInFrameStack) {
|
||||
return;
|
||||
}
|
||||
|
||||
const top = topmost();
|
||||
if (top !== frame) {
|
||||
throw new Error(
|
||||
"Cannot pop a Frame which is not at the top of the navigation stack."
|
||||
);
|
||||
}
|
||||
const top = topmost();
|
||||
if (top !== frame) {
|
||||
throw new Error('Cannot pop a Frame which is not at the top of the navigation stack.');
|
||||
}
|
||||
|
||||
frameStack.pop();
|
||||
frame._isInFrameStack = false;
|
||||
frameStack.pop();
|
||||
frame._isInFrameStack = false;
|
||||
}
|
||||
|
||||
export function _removeFromFrameStack(frame: FrameBase): void {
|
||||
if (!frame._isInFrameStack) {
|
||||
return;
|
||||
}
|
||||
if (!frame._isInFrameStack) {
|
||||
return;
|
||||
}
|
||||
|
||||
const index = frameStack.indexOf(frame);
|
||||
frameStack.splice(index, 1);
|
||||
frame._isInFrameStack = false;
|
||||
const index = frameStack.indexOf(frame);
|
||||
frameStack.splice(index, 1);
|
||||
frame._isInFrameStack = false;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user