Skip to content

Instantly share code, notes, and snippets.

@197291
Last active April 16, 2018 07:33
Show Gist options
  • Save 197291/f78463252e5bef0b3a68ac4078527e86 to your computer and use it in GitHub Desktop.
Save 197291/f78463252e5bef0b3a68ac4078527e86 to your computer and use it in GitHub Desktop.
Helpers
export function empty(val) {
return (typeof val === 'undefined' || val === '' || val === 0 || val === '0' || val === null
|| val === false || (typeof val === 'object' && !Object.keys(val).length) || (Array.isArray(val) && !val.length )
);
}
export function apiUrl (path, params, absolut = false) {
return URL_BASE + path
}
export function findIndexByKey (collection, key, value) {
return collection.findIndex(el => {
return el[key] === value
});
}
export function getMonthLabel (month) {
let months = ['January', 'February', 'March', 'April', 'May', 'June',
'July', 'August', 'September', 'October', 'November', 'December'
]
return (typeof months[month] !== 'undefined') ? months[month] : null
}
export function depKeyP (event) {
// resolve: backspace, delete, tab и escape
if (event.keyCode == 46 || event.keyCode == 8 || event.keyCode == 9 || event.keyCode == 27 ||
// resolve: Ctrl+A
(event.keyCode == 65 && event.ctrlKey === true) ||
// resolve: home, end, left, right
(event.keyCode >= 35 && event.keyCode <= 39)) {
return
}
else {
// if it is number, stop event keypress
if ((event.keyCode < 48 || event.keyCode > 57) && (event.keyCode < 96 || event.keyCode > 105 )) {
event.preventDefault()
}
}
}
export function getTimeZone() {
var offset = new Date().getTimezoneOffset(),
o = Math.abs(offset);
return (offset < 0 ? "+" : "-") + ("00" + Math.floor(o / 60)).slice(-2) + ":" + ("00" + (o % 60)).slice(-2);
}
export function round(val: number, decimals: number) {
// This only works if |value| ≤ 1e21, otherwise this results in NaN !
return Number(Math.round(Number(val + 'e' + decimals)) + 'e-' + decimals);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment