return decodeURIComponent(results[2].replace(/\+/g, ' '))
}
-function viewportHeight () {
- return Math.max(document.documentElement.clientHeight, window.innerHeight || 0)
-}
-
function populateAsyncUserVideoChannels (authService: AuthService, channel: any[]) {
return new Promise(res => {
authService.userInformationLoaded
return Object.assign({}, target, source)
}
-function isInSmallView () {
- return window.innerWidth < 600
-}
-
-function isInMobileView () {
- return window.innerWidth < 500
-}
-
// Thanks: https://gist.github.com/ghinda/8442a57f22099bdb2e34
function objectToFormData (obj: any, form?: FormData, namespace?: string) {
let fd = form || new FormData()
return fd
}
+function lineFeedToHtml (obj: object, keyToNormalize: string) {
+ return immutableAssign(obj, {
+ [keyToNormalize]: obj[keyToNormalize].replace(/\r?\n|\r/g, '<br />')
+ })
+}
+
+// Try to cache a little bit window.innerWidth
+let windowInnerWidth = window.innerWidth
+setInterval(() => windowInnerWidth = window.innerWidth, 500)
+
+function isInSmallView () {
+ return windowInnerWidth < 600
+}
+
+function isInMobileView () {
+ return windowInnerWidth < 500
+}
+
export {
- viewportHeight,
getParameterByName,
populateAsyncUserVideoChannels,
getAbsoluteAPIUrl,
isInSmallView,
isInMobileView,
immutableAssign,
- objectToFormData
+ objectToFormData,
+ lineFeedToHtml
}