Initial project scaffolding

This commit is contained in:
Leonid Logvinov
2018-10-10 14:44:50 +02:00
parent afb34da729
commit 6c0d317380
16 changed files with 342 additions and 91 deletions

View File

@@ -0,0 +1,32 @@
import * as bowser from 'bowser';
import * as _ from 'lodash';
export const utils = {
getColSize(items: number): number {
const bassCssGridSize = 12; // Source: http://basscss.com/#basscss-grid
const colSize = bassCssGridSize / items;
if (!_.isInteger(colSize)) {
throw new Error(`Number of cols must be divisible by ${bassCssGridSize}`);
}
return colSize;
},
getCurrentBaseUrl(): string {
const port = window.location.port;
const hasPort = !_.isUndefined(port);
const baseUrl = `https://${window.location.hostname}${hasPort ? `:${port}` : ''}`;
return baseUrl;
},
onPageLoadPromise: new Promise<void>((resolve, _reject) => {
if (document.readyState === 'complete') {
resolve();
return;
}
window.onload = () => resolve();
}),
openUrl(url: string): void {
window.open(url, '_blank');
},
isMobileOperatingSystem(): boolean {
return bowser.mobile;
},
};