mirror of
https://github.com/NativeScript/NativeScript.git
synced 2025-08-14 18:12:09 +08:00
50 lines
1.2 KiB
TypeScript
50 lines
1.2 KiB
TypeScript
const MODAL = 'modal';
|
|
const ROOT = 'root';
|
|
const cssClasses = [];
|
|
|
|
export namespace CSSUtils {
|
|
export const CLASS_PREFIX = 'ns-';
|
|
export const MODAL_ROOT_VIEW_CSS_CLASS = `${CLASS_PREFIX}${MODAL}`;
|
|
export const ROOT_VIEW_CSS_CLASS = `${CLASS_PREFIX}${ROOT}`;
|
|
|
|
export function getSystemCssClasses(): string[] {
|
|
return cssClasses;
|
|
}
|
|
|
|
export function pushToSystemCssClasses(value: string): number {
|
|
const index = cssClasses.indexOf(value);
|
|
if (index == -1) {
|
|
cssClasses.push(value);
|
|
}
|
|
|
|
return cssClasses.length;
|
|
}
|
|
|
|
export function removeSystemCssClass(value: string): string {
|
|
const index = cssClasses.indexOf(value);
|
|
let removedElement;
|
|
|
|
if (index > -1) {
|
|
removedElement = cssClasses.splice(index, 1);
|
|
}
|
|
|
|
return removedElement;
|
|
}
|
|
|
|
export function getModalRootViewCssClass(): string {
|
|
return MODAL_ROOT_VIEW_CSS_CLASS;
|
|
}
|
|
|
|
export function getRootViewCssClasses(): string[] {
|
|
return [ROOT_VIEW_CSS_CLASS, ...cssClasses];
|
|
}
|
|
|
|
export function pushToRootViewCssClasses(value: string): number {
|
|
return pushToSystemCssClasses(value) + 1; // because of ROOT_VIEW_CSS_CLASS
|
|
}
|
|
|
|
export function removeFromRootViewCssClasses(value: string): string {
|
|
return removeSystemCssClass(value);
|
|
}
|
|
}
|