diff options
author | Leonid Logvinov <logvinov.leon@gmail.com> | 2018-10-11 18:44:00 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-10-11 18:44:00 +0800 |
commit | 8941b6cee5b56fab6d3b89ac8a899f21d5c86350 (patch) | |
tree | d958e69af58dfc6a959b2b7bb4f5f9fedd3884a6 /packages/dev-tools-pages/ts/utils | |
parent | a5a033c359a1a00a144ae0655080b4e6d0e43c88 (diff) | |
parent | e4351789d20df12ab8d70021acb5674bb59cae0c (diff) | |
download | dexon-sol-tools-8941b6cee5b56fab6d3b89ac8a899f21d5c86350.tar dexon-sol-tools-8941b6cee5b56fab6d3b89ac8a899f21d5c86350.tar.gz dexon-sol-tools-8941b6cee5b56fab6d3b89ac8a899f21d5c86350.tar.bz2 dexon-sol-tools-8941b6cee5b56fab6d3b89ac8a899f21d5c86350.tar.lz dexon-sol-tools-8941b6cee5b56fab6d3b89ac8a899f21d5c86350.tar.xz dexon-sol-tools-8941b6cee5b56fab6d3b89ac8a899f21d5c86350.tar.zst dexon-sol-tools-8941b6cee5b56fab6d3b89ac8a899f21d5c86350.zip |
Merge pull request #1125 from 0xProject/feature/starter-dev-tools-pages
Initial project scaffolding for dev tools pages
Diffstat (limited to 'packages/dev-tools-pages/ts/utils')
-rw-r--r-- | packages/dev-tools-pages/ts/utils/utils.ts | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/packages/dev-tools-pages/ts/utils/utils.ts b/packages/dev-tools-pages/ts/utils/utils.ts new file mode 100644 index 000000000..b274706a2 --- /dev/null +++ b/packages/dev-tools-pages/ts/utils/utils.ts @@ -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; + }, +}; |