@plusscommunities/pluss-core-app 8.0.14-beta.2 → 8.0.14-beta.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,7 +1,7 @@
1
1
  import _ from "lodash";
2
2
  import React from "react";
3
3
  import { Platform, StatusBar, Dimensions } from "react-native";
4
- import { Text } from "../components";
4
+ import { Text } from "./components";
5
5
  import Constants from "expo-constants";
6
6
  import Config from "./config";
7
7
  import { LINEGREY } from "./colours";
@@ -1 +1 @@
1
- {"version":3,"names":["_","React","Platform","StatusBar","Dimensions","Text","Constants","Config","LINEGREY","getSessionTokenAWS","detectFaces","findLandmarkRange","getScaledOffset","getSiteLevelFromState","isTVEnabled","TIMESTAMP_FORMAT","DATE_FORMAT","getUrl","baseAction","action","query","baseAPIUrl","baseStage","env","queryPart","keys","forEach","key","index","encodeURIComponent","getAuthTokenHeader","Promise","resolve","reject","then","idToken","getShadowStyle","OS","shadowColor","shadowOffset","width","height","shadowOpacity","shadowRadius","backgroundColor","borderColor","elevation","StatusBarHeight","size","getStatusBarHeight","statusBarHeight","currentHeight","getSiteSettingFromState","state","defaultValue","user","siteSettings","isUndefined","getValueOrDefault","value","def","getExtension","url","fileSplit","split","length","toLowerCase","getFileName","noExtension","name","isVideo","extension","includes","isVideoUrl","urlToCheck","getValidUrl","isYoutube","isVimeo","isStockImage","indexOf","getThumb300","replace","baseUploadsUrl","urlToUse","substring","get1400","get300","getMimeType","getCompressed","imageExists","fetch","method","cache","response","status","catch","formatTime","hours","minutes","period","adjustedHours","adjustedMinutes","String","padStart","minutesToString","isTimeOfDay","Math","floor","remainingMinutes","hoursString","minutesString","getPluralS","count","getPluralOptions","singular","plural","isEmail","email","isEmpty","atpos","dotpos","lastIndexOf","randomString","c","r","random","v","toString","generateImageName","source","result","last","getSite","site","preferredSite","getTakeoverThumb","uri","filename","pop","getTakeoverImage","getImageSource","isThumb","getFirstName","usersToSearchResult","contacts","excludedUserIds","push","displayName","id","objectID","ID","userId","Id","profilePic","photoURL","unit","contact","searchUsers","term","filter","some","part","getTabSettingsFromState","tabSettings","interface","getEnabledTabsFromState","tab","isEnabled","getReactions","icon","require","hasReacted","reactions","isTablet","get","getVimeoEmbed","vimeoId","regExp","match","getYoutubeEmbed","newUrl","decodeURIComponent","trim","test","getUserPreview","uid","allowComments","canComment","defaultAllowComments","toParagraphed","text","style","textSplit","map","t","i","createElement"],"sources":["helper.js"],"sourcesContent":["import _ from \"lodash\";\nimport React from \"react\";\nimport { Platform, StatusBar, Dimensions } from \"react-native\";\nimport { Text } from \"../components\";\nimport Constants from \"expo-constants\";\nimport Config from \"./config\";\nimport { LINEGREY } from \"./colours\";\nimport { getSessionTokenAWS } from \"./session\";\n\n// seperated files to export\nimport detectFaces from \"./js/images/detectFaces\";\nimport findLandmarkRange from \"./js/images/findLandmarkRange\";\nimport getScaledOffset from \"./js/images/getScaledOffset\";\n\nimport getSiteLevelFromState from \"./js/site/getSiteLevelFromState\";\nimport isTVEnabled from \"./js/site/isTVEnabled\";\n\nconst TIMESTAMP_FORMAT = \"D MMM • h:mma\";\nconst DATE_FORMAT = \"D MMM YYYY\";\n\nconst getUrl = (baseAction, action, query) => {\n\tconst { baseAPIUrl, baseStage } = Config.env;\n\tlet queryPart = \"\";\n\tif (query) {\n\t\t_.keys(query).forEach((key, index) => {\n\t\t\tqueryPart += `${index === 0 ? \"?\" : \"&\"}${key}=${encodeURIComponent(query[key])}`;\n\t\t});\n\t}\n\treturn `${baseAPIUrl}/${baseAction}-${baseStage}/${action}${queryPart}`;\n};\n\nconst getAuthTokenHeader = () => {\n\treturn new Promise((resolve, reject) => {\n\t\tgetSessionTokenAWS().then((idToken) => {\n\t\t\tresolve(`Bearer ${idToken}`);\n\t\t});\n\t});\n};\n\nconst getShadowStyle = () => {\n\tif (Platform.OS === \"ios\") {\n\t\treturn {\n\t\t\tshadowColor: \"#000\",\n\t\t\tshadowOffset: {\n\t\t\t\twidth: 0,\n\t\t\t\theight: 1,\n\t\t\t},\n\t\t\tshadowOpacity: 0.1,\n\t\t\tshadowRadius: 3,\n\t\t\tbackgroundColor: \"#fff\",\n\t\t};\n\t}\n\treturn {\n\t\tborderColor: LINEGREY,\n\t\tbackgroundColor: \"#fff\",\n\t\televation: 8,\n\t};\n};\n\nconst StatusBarHeight = (size) => {\n\treturn getStatusBarHeight() + size;\n};\n\nconst getStatusBarHeight = () => {\n\treturn Platform.OS === \"ios\"\n\t\t? Constants.statusBarHeight\n\t\t: StatusBar.currentHeight;\n};\n\nconst getSiteSettingFromState = (state, key, defaultValue) => {\n\tif (\n\t\tstate &&\n\t\tstate.user &&\n\t\tstate.user.siteSettings &&\n\t\t!_.isUndefined(state.user.siteSettings[key])\n\t) {\n\t\treturn state.user.siteSettings[key];\n\t}\n\treturn defaultValue || null;\n};\n\nconst getValueOrDefault = (value, def) => {\n\treturn !_.isUndefined(value) ? value : def;\n};\n\nconst getExtension = (url) => {\n\tif (!url) {\n\t\treturn null;\n\t}\n\tconst fileSplit = url.split(\".\");\n\treturn fileSplit[fileSplit.length - 1].toLowerCase();\n};\n\nconst getFileName = (url, noExtension) => {\n\tif (!url) {\n\t\treturn null;\n\t}\n\tconst fileSplit = url.split(\"/\");\n\tconst name = fileSplit[fileSplit.length - 1].toLowerCase();\n\tif (!noExtension) {\n\t\treturn name;\n\t}\n\treturn name.split(\".\")[0];\n};\n\nconst isVideo = (url) => {\n\tconst extension = getExtension(url);\n\treturn [\"mov\", \"mp4\"].includes(extension);\n};\n\nconst isVideoUrl = (url) => {\n\tconst urlToCheck = getValidUrl(url);\n\tif (isVideo(urlToCheck)) {\n\t\treturn true;\n\t}\n\tif (isYoutube(urlToCheck)) {\n\t\treturn true;\n\t}\n\tif (isVimeo(urlToCheck)) {\n\t\treturn true;\n\t}\n\treturn false;\n};\n\nconst isStockImage = (url) => {\n\treturn (\n\t\turl.indexOf(\n\t\t\t\"https://pluss60-dev-uploads.s3.ap-southeast-2.amazonaws.com/uploads/library\",\n\t\t) !== -1\n\t);\n};\n\nconst getThumb300 = (url) => {\n\tif (!url) {\n\t\treturn url;\n\t}\n\tif (isVideo(url)) {\n\t\treturn \"https://pluss60-demo-uploads.s3.ap-southeast-2.amazonaws.com/uploads/users/ap-southeast-2:97769b56-25ec-41c0-a73c-6c2c4140f629/public/9d0bbec64614b1ed654a03f7e7/movie.jpg\";\n\t}\n\tif (url.indexOf(\"https://plussprdstorage.blob.core.windows.net/\") !== -1) {\n\t\treturn url.replace(\n\t\t\t\"https://plussprdstorage.blob.core.windows.net/\",\n\t\t\t\"https://plusscdn.azureedge.net/\",\n\t\t);\n\t}\n\tif (url.indexOf(\"https://plusscdn.azureedge.net/\") !== -1) {\n\t\treturn url\n\t\t\t.replace(\"/uploads/\", \"/uploads-thumb/\")\n\t\t\t.replace(\"/general/\", \"/general300/\")\n\t\t\t.replace(\"/uploads1400/\", \"/uploads-thumb/\")\n\t\t\t.replace(\"/general1400/\", \"/general300/\");\n\t}\n\tif (isStockImage(url) || url.indexOf(Config.env.baseUploadsUrl) !== -1) {\n\t\tconst extension = getExtension(url);\n\t\tlet urlToUse = url;\n\t\tif (extension !== \"jpg\") {\n\t\t\turlToUse = `${url.substring(0, url.length - extension.length)}jpg`;\n\t\t}\n\t\treturn urlToUse\n\t\t\t.replace(\"/1400/\", \"/thumb300/\")\n\t\t\t.replace(\"/uploads/\", \"/thumb300/\");\n\t}\n\treturn url;\n};\n\nconst get1400 = (url) => {\n\tif (!url) {\n\t\treturn url;\n\t}\n\tif (url.indexOf(\"https://plussprdstorage.blob.core.windows.net/\") !== -1) {\n\t\treturn url.replace(\n\t\t\t\"https://plussprdstorage.blob.core.windows.net/\",\n\t\t\t\"https://plusscdn.azureedge.net/\",\n\t\t);\n\t}\n\tif (url.indexOf(\"https://plusscdn.azureedge.net/\") !== -1) {\n\t\treturn url\n\t\t\t.replace(\"/uploads/\", \"/uploads1400/\")\n\t\t\t.replace(\"/general/\", \"/general1400/\");\n\t}\n\tif (isStockImage(url) || url.indexOf(Config.env.baseUploadsUrl) !== -1) {\n\t\tconst extension = getExtension(url);\n\t\tlet urlToUse = url;\n\t\tif (extension !== \"jpg\") {\n\t\t\turlToUse = `${url.substring(0, url.length - extension.length)}jpg`;\n\t\t}\n\t\treturn urlToUse.replace(\"/uploads/\", \"/1400/\");\n\t}\n\treturn url;\n};\n\nconst get300 = (url) => {\n\tif (!url) {\n\t\treturn url;\n\t}\n\tif (isStockImage(url) || url.indexOf(Config.env.baseUploadsUrl) !== -1) {\n\t\tconst extension = getExtension(url);\n\t\tlet urlToUse = url;\n\t\tif (extension !== \"jpg\") {\n\t\t\turlToUse = `${url.substring(0, url.length - extension.length)}jpg`;\n\t\t}\n\t\treturn urlToUse.replace(\"/uploads/\", \"/300/\").replace(\"/1400/\", \"/300/\");\n\t}\n\treturn url;\n};\n\nconst getMimeType = (url) => {\n\tconst extension = getExtension(url);\n\tswitch (extension) {\n\t\tcase \"mov\":\n\t\t\treturn \"video/quicktime\";\n\t\tcase \"mp4\":\n\t\t\treturn \"video/mp4\";\n\t\tdefault:\n\t\t\treturn \"image/jpeg\";\n\t}\n};\n\nconst getCompressed = (url) => {\n\tif (!url || typeof url !== \"string\") return \"\";\n\treturn url.replace(\"/uploads/\", \"/compressed/\");\n};\n\nconst imageExists = (url) => {\n\treturn new Promise((resolve) => {\n\t\tfetch(url, { method: \"HEAD\", cache: \"no-cache\" })\n\t\t\t.then((response) => {\n\t\t\t\tresolve(response.status === 200);\n\t\t\t})\n\t\t\t.catch(() => {\n\t\t\t\tresolve(false);\n\t\t\t});\n\t});\n};\n\nconst formatTime = (hours, minutes) => {\n\tconst period = hours >= 12 ? \"pm\" : \"am\";\n\n\t// Convert 24-hour format to 12-hour format\n\tconst adjustedHours = hours > 12 ? hours - 12 : hours === 0 ? 12 : hours;\n\n\t// Ensure minutes are two digits\n\tconst adjustedMinutes = String(minutes).padStart(2, \"0\");\n\n\treturn `${adjustedHours}:${adjustedMinutes}${period}`;\n};\n\nconst minutesToString = (minutes, isTimeOfDay) => {\n\tconst hours = Math.floor(minutes / 60);\n\tconst remainingMinutes = minutes % 60;\n\n\tif (isTimeOfDay) {\n\t\treturn formatTime(hours, remainingMinutes);\n\t}\n\n\tconst hoursString = hours > 1 ? `${hours} hours` : `${hours} hour`;\n\tconst minutesString =\n\t\tremainingMinutes > 1\n\t\t\t? `${remainingMinutes} minutes`\n\t\t\t: `${remainingMinutes} minute`;\n\n\tif (hours && remainingMinutes) {\n\t\treturn `${hoursString} ${minutesString}`;\n\t}\n\tif (hours) {\n\t\treturn hoursString;\n\t}\n\tif (remainingMinutes) {\n\t\treturn minutesString;\n\t}\n\treturn \"0 minutes\";\n};\n\nconst getPluralS = (count) => {\n\treturn count === 1 ? \"\" : \"s\";\n};\n\nconst getPluralOptions = (count, singular, plural) => {\n\tif (count === 1) {\n\t\treturn singular;\n\t}\n\treturn plural;\n};\n\nconst isEmail = (email) => {\n\tif (_.isEmpty(email)) {\n\t\treturn false;\n\t}\n\tconst atpos = email.indexOf(\"@\");\n\tconst dotpos = email.lastIndexOf(\".\");\n\tif (atpos < 1 || dotpos < atpos + 2 || dotpos + 2 >= email.length) {\n\t\treturn false;\n\t}\n\treturn true;\n};\n\nconst randomString = (name = \"\") => {\n\treturn `xxxxxxxx4xxxyxxxxxxxxxxxxx${name}`.replace(/[xy]/g, (c) => {\n\t\t// eslint-disable-next-line\n\t\tvar r = (Math.random() * 16) | 0,\n\t\t\tv = c === \"x\" ? r : (r & 0x3) | 0x8;\n\t\treturn v.toString(16);\n\t});\n};\n\nconst generateImageName = (name, source) => {\n\tlet result = randomString(name);\n\tif (source) {\n\t\tresult += `.${_.last(source.split(\".\"))}`;\n\t}\n\treturn result;\n};\n\nconst getSite = (site) => {\n\treturn site === \"plussSpace\" || site === \"hq\"\n\t\t? Config.env.preferredSite\n\t\t: site;\n};\n\nconst getTakeoverThumb = (uri) => {\n\tconst filename = uri.split(\"/\").pop();\n\tswitch (filename) {\n\t\tdefault:\n\t\t\treturn { uri };\n\t}\n};\n\nconst getTakeoverImage = (uri) => {\n\tconst filename = uri.split(\"/\").pop();\n\tswitch (filename) {\n\t\tdefault:\n\t\t\treturn { uri };\n\t}\n};\n\nconst getImageSource = (uri, isThumb) => {\n\tif (uri == null) return null;\n\tif (isThumb) return getTakeoverThumb(uri);\n\treturn getTakeoverImage(uri);\n};\n\nconst getFirstName = (name) => {\n\tif (_.isEmpty(name)) {\n\t\treturn name;\n\t}\n\treturn name.split(\" \")[0];\n};\n\nconst usersToSearchResult = (contacts, excludedUserIds) => {\n\tlet result = [];\n\tcontacts.forEach((user) => {\n\t\tresult.push({\n\t\t\tdisplayName: user.displayName,\n\t\t\tid: user.objectID || user.id || user.ID || user.userId || user.Id,\n\t\t\tprofilePic: user.profilePic || user.photoURL || null,\n\t\t\tunit: user.unit,\n\t\t});\n\t});\n\tresult = _.reject(result, (contact) => {\n\t\treturn _.includes(excludedUserIds, contact.id);\n\t});\n\treturn result;\n};\n\nconst searchUsers = (source, term) => {\n\tif (_.isEmpty(term)) {\n\t\treturn source;\n\t}\n\treturn _.filter(source, (user) => {\n\t\tconst split = user.displayName.split(\" \");\n\t\treturn _.some(split, (part) => {\n\t\t\treturn part.toLowerCase().indexOf(term.toLowerCase()) === 0;\n\t\t});\n\t});\n};\n\nconst getTabSettingsFromState = (state) => {\n\tconst tabSettings =\n\t\t(state.user && state.user.interface) ||\n\t\tgetSiteSettingFromState(state, \"TabSettings\", null);\n\treturn tabSettings;\n};\n\nconst getEnabledTabsFromState = (state) => {\n\tconst tabSettings = getTabSettingsFromState(state);\n\treturn tabSettings ? tabSettings.filter((tab) => tab.isEnabled) : [];\n};\n\nconst getReactions = () => {\n\treturn [\n\t\t{\n\t\t\tkey: \"heart\",\n\t\t\ticon: require(\"./assets/icons/reactions/heart.png\"),\n\t\t},\n\t\t{\n\t\t\tkey: \"smile\",\n\t\t\ticon: require(\"./assets/icons/reactions/smile.png\"),\n\t\t},\n\t\t{\n\t\t\tkey: \"sad\",\n\t\t\ticon: require(\"./assets/icons/reactions/sad.png\"),\n\t\t},\n\t\t{\n\t\t\tkey: \"party\",\n\t\t\ticon: require(\"./assets/icons/reactions/party.png\"),\n\t\t},\n\t];\n};\n\nconst hasReacted = (reactions, userId) => {\n\treturn _.some(reactions, (r) => {\n\t\treturn !!r[userId];\n\t});\n};\n\nconst isTablet = () => {\n\treturn Dimensions.get(\"screen\").width > 600;\n};\n\nconst isVimeo = (url) => {\n\tif (_.isEmpty(url)) {\n\t\treturn false;\n\t}\n\tif (url.indexOf(\"https://vimeo.com/\") === 0) {\n\t\treturn true;\n\t}\n\tif (url.indexOf(\"https://player.vimeo.com/video/\") === 0) {\n\t\treturn true;\n\t}\n};\n\nconst getVimeoEmbed = (url) => {\n\tif (_.isEmpty(url)) {\n\t\treturn \"\";\n\t}\n\tif (url.indexOf(\"https://vimeo.com/\") === 0) {\n\t\tconst vimeoId = \"lol\"; //TODO\n\t\treturn `https://player.vimeo.com/video/${vimeoId}`;\n\t}\n\treturn url; //TODO\n};\n\nconst isYoutube = (url) => {\n\tif (_.isUndefined(url) || _.isEmpty(url)) {\n\t\treturn false;\n\t}\n\tconst regExp =\n\t\t/^.*(youtu.be\\/|v\\/|u\\/\\w\\/|embed\\/|watch\\?v=|\\&v=|\\?v=)([^#\\&\\?]*).*/;\n\tconst match = url.match(regExp);\n\tif (match && match[2].length === 11) {\n\t\treturn true;\n\t}\n\treturn false;\n};\n\nconst getYoutubeEmbed = (url) => {\n\tconst regExp =\n\t\t/^.*(youtu.be\\/|v\\/|u\\/\\w\\/|embed\\/|watch\\?v=|\\&v=|\\?v=)([^#\\&\\?]*).*/;\n\tconst match = url.match(regExp);\n\treturn `https://www.youtube.com/embed/${match[2]}?autoplay=0`;\n};\n\nconst getValidUrl = (url = \"\") => {\n\tlet newUrl = decodeURIComponent(url);\n\tnewUrl = newUrl.trim().replace(/\\s/g, \"\");\n\n\tif (/^(:\\/\\/)/.test(newUrl)) {\n\t\treturn `https${newUrl}`;\n\t}\n\tif (!/^(f|ht)tps?:\\/\\//i.test(newUrl)) {\n\t\treturn `https://${newUrl}`;\n\t}\n\n\treturn newUrl;\n};\n\nconst getUserPreview = (user) => {\n\treturn {\n\t\tid: user.uid,\n\t\tdisplayName: user.displayName,\n\t\tprofilePic: user.profilePic || null,\n\t};\n};\n\nconst allowComments = (canComment) => {\n\tif (canComment === false) {\n\t\treturn false;\n\t}\n\tif (canComment === true) {\n\t\treturn true;\n\t}\n\treturn Config.env.defaultAllowComments;\n};\n\nconst toParagraphed = (text, style) => {\n\tif (!text) {\n\t\treturn text;\n\t}\n\tconst textSplit = text.split(\"\\n\");\n\treturn _.map(textSplit, (t, i) => {\n\t\treturn (\n\t\t\t<Text key={`paragraph_${i}`} style={style}>\n\t\t\t\t{t}\n\t\t\t</Text>\n\t\t);\n\t});\n};\n\nexport {\n\tTIMESTAMP_FORMAT,\n\tDATE_FORMAT,\n\tgetUrl,\n\tgetAuthTokenHeader,\n\tgetShadowStyle,\n\tStatusBarHeight,\n\tgetStatusBarHeight,\n\tgetSiteSettingFromState,\n\tgetValueOrDefault,\n\tgetExtension,\n\tgetFileName,\n\tisVideo,\n\tget300,\n\tgetThumb300,\n\tget1400,\n\tgetMimeType,\n\tgetCompressed,\n\timageExists,\n\tgetPluralS,\n\tgetPluralOptions,\n\tisEmail,\n\tformatTime,\n\tminutesToString,\n\trandomString,\n\tgenerateImageName,\n\tgetSite,\n\tgetImageSource,\n\tgetFirstName,\n\tusersToSearchResult,\n\tsearchUsers,\n\tgetEnabledTabsFromState,\n\tgetReactions,\n\thasReacted,\n\tisTablet,\n\tisYoutube,\n\tgetYoutubeEmbed,\n\tgetValidUrl,\n\tgetUserPreview,\n\tallowComments,\n\ttoParagraphed,\n\tisVideoUrl,\n\tdetectFaces,\n\tfindLandmarkRange,\n\tgetScaledOffset,\n\tgetSiteLevelFromState,\n\tisTVEnabled,\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_","React","Platform","StatusBar","Dimensions","Text","Constants","Config","LINEGREY","getSessionTokenAWS","detectFaces","findLandmarkRange","getScaledOffset","getSiteLevelFromState","isTVEnabled","TIMESTAMP_FORMAT","DATE_FORMAT","getUrl","baseAction","action","query","baseAPIUrl","baseStage","env","queryPart","keys","forEach","key","index","encodeURIComponent","getAuthTokenHeader","Promise","resolve","reject","then","idToken","getShadowStyle","OS","shadowColor","shadowOffset","width","height","shadowOpacity","shadowRadius","backgroundColor","borderColor","elevation","StatusBarHeight","size","getStatusBarHeight","statusBarHeight","currentHeight","getSiteSettingFromState","state","defaultValue","user","siteSettings","isUndefined","getValueOrDefault","value","def","getExtension","url","fileSplit","split","length","toLowerCase","getFileName","noExtension","name","isVideo","extension","includes","isVideoUrl","urlToCheck","getValidUrl","isYoutube","isVimeo","isStockImage","indexOf","getThumb300","replace","baseUploadsUrl","urlToUse","substring","get1400","get300","getMimeType","getCompressed","imageExists","fetch","method","cache","response","status","catch","formatTime","hours","minutes","period","adjustedHours","adjustedMinutes","String","padStart","minutesToString","isTimeOfDay","Math","floor","remainingMinutes","hoursString","minutesString","getPluralS","count","getPluralOptions","singular","plural","isEmail","email","isEmpty","atpos","dotpos","lastIndexOf","randomString","c","r","random","v","toString","generateImageName","source","result","last","getSite","site","preferredSite","getTakeoverThumb","uri","filename","pop","getTakeoverImage","getImageSource","isThumb","getFirstName","usersToSearchResult","contacts","excludedUserIds","push","displayName","id","objectID","ID","userId","Id","profilePic","photoURL","unit","contact","searchUsers","term","filter","some","part","getTabSettingsFromState","tabSettings","interface","getEnabledTabsFromState","tab","isEnabled","getReactions","icon","require","hasReacted","reactions","isTablet","get","getVimeoEmbed","vimeoId","regExp","match","getYoutubeEmbed","newUrl","decodeURIComponent","trim","test","getUserPreview","uid","allowComments","canComment","defaultAllowComments","toParagraphed","text","style","textSplit","map","t","i","createElement"],"sources":["helper.js"],"sourcesContent":["import _ from \"lodash\";\nimport React from \"react\";\nimport { Platform, StatusBar, Dimensions } from \"react-native\";\nimport { Text } from \"./components\";\nimport Constants from \"expo-constants\";\nimport Config from \"./config\";\nimport { LINEGREY } from \"./colours\";\nimport { getSessionTokenAWS } from \"./session\";\n\n// seperated files to export\nimport detectFaces from \"./js/images/detectFaces\";\nimport findLandmarkRange from \"./js/images/findLandmarkRange\";\nimport getScaledOffset from \"./js/images/getScaledOffset\";\n\nimport getSiteLevelFromState from \"./js/site/getSiteLevelFromState\";\nimport isTVEnabled from \"./js/site/isTVEnabled\";\n\nconst TIMESTAMP_FORMAT = \"D MMM • h:mma\";\nconst DATE_FORMAT = \"D MMM YYYY\";\n\nconst getUrl = (baseAction, action, query) => {\n\tconst { baseAPIUrl, baseStage } = Config.env;\n\tlet queryPart = \"\";\n\tif (query) {\n\t\t_.keys(query).forEach((key, index) => {\n\t\t\tqueryPart += `${index === 0 ? \"?\" : \"&\"}${key}=${encodeURIComponent(query[key])}`;\n\t\t});\n\t}\n\treturn `${baseAPIUrl}/${baseAction}-${baseStage}/${action}${queryPart}`;\n};\n\nconst getAuthTokenHeader = () => {\n\treturn new Promise((resolve, reject) => {\n\t\tgetSessionTokenAWS().then((idToken) => {\n\t\t\tresolve(`Bearer ${idToken}`);\n\t\t});\n\t});\n};\n\nconst getShadowStyle = () => {\n\tif (Platform.OS === \"ios\") {\n\t\treturn {\n\t\t\tshadowColor: \"#000\",\n\t\t\tshadowOffset: {\n\t\t\t\twidth: 0,\n\t\t\t\theight: 1,\n\t\t\t},\n\t\t\tshadowOpacity: 0.1,\n\t\t\tshadowRadius: 3,\n\t\t\tbackgroundColor: \"#fff\",\n\t\t};\n\t}\n\treturn {\n\t\tborderColor: LINEGREY,\n\t\tbackgroundColor: \"#fff\",\n\t\televation: 8,\n\t};\n};\n\nconst StatusBarHeight = (size) => {\n\treturn getStatusBarHeight() + size;\n};\n\nconst getStatusBarHeight = () => {\n\treturn Platform.OS === \"ios\"\n\t\t? Constants.statusBarHeight\n\t\t: StatusBar.currentHeight;\n};\n\nconst getSiteSettingFromState = (state, key, defaultValue) => {\n\tif (\n\t\tstate &&\n\t\tstate.user &&\n\t\tstate.user.siteSettings &&\n\t\t!_.isUndefined(state.user.siteSettings[key])\n\t) {\n\t\treturn state.user.siteSettings[key];\n\t}\n\treturn defaultValue || null;\n};\n\nconst getValueOrDefault = (value, def) => {\n\treturn !_.isUndefined(value) ? value : def;\n};\n\nconst getExtension = (url) => {\n\tif (!url) {\n\t\treturn null;\n\t}\n\tconst fileSplit = url.split(\".\");\n\treturn fileSplit[fileSplit.length - 1].toLowerCase();\n};\n\nconst getFileName = (url, noExtension) => {\n\tif (!url) {\n\t\treturn null;\n\t}\n\tconst fileSplit = url.split(\"/\");\n\tconst name = fileSplit[fileSplit.length - 1].toLowerCase();\n\tif (!noExtension) {\n\t\treturn name;\n\t}\n\treturn name.split(\".\")[0];\n};\n\nconst isVideo = (url) => {\n\tconst extension = getExtension(url);\n\treturn [\"mov\", \"mp4\"].includes(extension);\n};\n\nconst isVideoUrl = (url) => {\n\tconst urlToCheck = getValidUrl(url);\n\tif (isVideo(urlToCheck)) {\n\t\treturn true;\n\t}\n\tif (isYoutube(urlToCheck)) {\n\t\treturn true;\n\t}\n\tif (isVimeo(urlToCheck)) {\n\t\treturn true;\n\t}\n\treturn false;\n};\n\nconst isStockImage = (url) => {\n\treturn (\n\t\turl.indexOf(\n\t\t\t\"https://pluss60-dev-uploads.s3.ap-southeast-2.amazonaws.com/uploads/library\",\n\t\t) !== -1\n\t);\n};\n\nconst getThumb300 = (url) => {\n\tif (!url) {\n\t\treturn url;\n\t}\n\tif (isVideo(url)) {\n\t\treturn \"https://pluss60-demo-uploads.s3.ap-southeast-2.amazonaws.com/uploads/users/ap-southeast-2:97769b56-25ec-41c0-a73c-6c2c4140f629/public/9d0bbec64614b1ed654a03f7e7/movie.jpg\";\n\t}\n\tif (url.indexOf(\"https://plussprdstorage.blob.core.windows.net/\") !== -1) {\n\t\treturn url.replace(\n\t\t\t\"https://plussprdstorage.blob.core.windows.net/\",\n\t\t\t\"https://plusscdn.azureedge.net/\",\n\t\t);\n\t}\n\tif (url.indexOf(\"https://plusscdn.azureedge.net/\") !== -1) {\n\t\treturn url\n\t\t\t.replace(\"/uploads/\", \"/uploads-thumb/\")\n\t\t\t.replace(\"/general/\", \"/general300/\")\n\t\t\t.replace(\"/uploads1400/\", \"/uploads-thumb/\")\n\t\t\t.replace(\"/general1400/\", \"/general300/\");\n\t}\n\tif (isStockImage(url) || url.indexOf(Config.env.baseUploadsUrl) !== -1) {\n\t\tconst extension = getExtension(url);\n\t\tlet urlToUse = url;\n\t\tif (extension !== \"jpg\") {\n\t\t\turlToUse = `${url.substring(0, url.length - extension.length)}jpg`;\n\t\t}\n\t\treturn urlToUse\n\t\t\t.replace(\"/1400/\", \"/thumb300/\")\n\t\t\t.replace(\"/uploads/\", \"/thumb300/\");\n\t}\n\treturn url;\n};\n\nconst get1400 = (url) => {\n\tif (!url) {\n\t\treturn url;\n\t}\n\tif (url.indexOf(\"https://plussprdstorage.blob.core.windows.net/\") !== -1) {\n\t\treturn url.replace(\n\t\t\t\"https://plussprdstorage.blob.core.windows.net/\",\n\t\t\t\"https://plusscdn.azureedge.net/\",\n\t\t);\n\t}\n\tif (url.indexOf(\"https://plusscdn.azureedge.net/\") !== -1) {\n\t\treturn url\n\t\t\t.replace(\"/uploads/\", \"/uploads1400/\")\n\t\t\t.replace(\"/general/\", \"/general1400/\");\n\t}\n\tif (isStockImage(url) || url.indexOf(Config.env.baseUploadsUrl) !== -1) {\n\t\tconst extension = getExtension(url);\n\t\tlet urlToUse = url;\n\t\tif (extension !== \"jpg\") {\n\t\t\turlToUse = `${url.substring(0, url.length - extension.length)}jpg`;\n\t\t}\n\t\treturn urlToUse.replace(\"/uploads/\", \"/1400/\");\n\t}\n\treturn url;\n};\n\nconst get300 = (url) => {\n\tif (!url) {\n\t\treturn url;\n\t}\n\tif (isStockImage(url) || url.indexOf(Config.env.baseUploadsUrl) !== -1) {\n\t\tconst extension = getExtension(url);\n\t\tlet urlToUse = url;\n\t\tif (extension !== \"jpg\") {\n\t\t\turlToUse = `${url.substring(0, url.length - extension.length)}jpg`;\n\t\t}\n\t\treturn urlToUse.replace(\"/uploads/\", \"/300/\").replace(\"/1400/\", \"/300/\");\n\t}\n\treturn url;\n};\n\nconst getMimeType = (url) => {\n\tconst extension = getExtension(url);\n\tswitch (extension) {\n\t\tcase \"mov\":\n\t\t\treturn \"video/quicktime\";\n\t\tcase \"mp4\":\n\t\t\treturn \"video/mp4\";\n\t\tdefault:\n\t\t\treturn \"image/jpeg\";\n\t}\n};\n\nconst getCompressed = (url) => {\n\tif (!url || typeof url !== \"string\") return \"\";\n\treturn url.replace(\"/uploads/\", \"/compressed/\");\n};\n\nconst imageExists = (url) => {\n\treturn new Promise((resolve) => {\n\t\tfetch(url, { method: \"HEAD\", cache: \"no-cache\" })\n\t\t\t.then((response) => {\n\t\t\t\tresolve(response.status === 200);\n\t\t\t})\n\t\t\t.catch(() => {\n\t\t\t\tresolve(false);\n\t\t\t});\n\t});\n};\n\nconst formatTime = (hours, minutes) => {\n\tconst period = hours >= 12 ? \"pm\" : \"am\";\n\n\t// Convert 24-hour format to 12-hour format\n\tconst adjustedHours = hours > 12 ? hours - 12 : hours === 0 ? 12 : hours;\n\n\t// Ensure minutes are two digits\n\tconst adjustedMinutes = String(minutes).padStart(2, \"0\");\n\n\treturn `${adjustedHours}:${adjustedMinutes}${period}`;\n};\n\nconst minutesToString = (minutes, isTimeOfDay) => {\n\tconst hours = Math.floor(minutes / 60);\n\tconst remainingMinutes = minutes % 60;\n\n\tif (isTimeOfDay) {\n\t\treturn formatTime(hours, remainingMinutes);\n\t}\n\n\tconst hoursString = hours > 1 ? `${hours} hours` : `${hours} hour`;\n\tconst minutesString =\n\t\tremainingMinutes > 1\n\t\t\t? `${remainingMinutes} minutes`\n\t\t\t: `${remainingMinutes} minute`;\n\n\tif (hours && remainingMinutes) {\n\t\treturn `${hoursString} ${minutesString}`;\n\t}\n\tif (hours) {\n\t\treturn hoursString;\n\t}\n\tif (remainingMinutes) {\n\t\treturn minutesString;\n\t}\n\treturn \"0 minutes\";\n};\n\nconst getPluralS = (count) => {\n\treturn count === 1 ? \"\" : \"s\";\n};\n\nconst getPluralOptions = (count, singular, plural) => {\n\tif (count === 1) {\n\t\treturn singular;\n\t}\n\treturn plural;\n};\n\nconst isEmail = (email) => {\n\tif (_.isEmpty(email)) {\n\t\treturn false;\n\t}\n\tconst atpos = email.indexOf(\"@\");\n\tconst dotpos = email.lastIndexOf(\".\");\n\tif (atpos < 1 || dotpos < atpos + 2 || dotpos + 2 >= email.length) {\n\t\treturn false;\n\t}\n\treturn true;\n};\n\nconst randomString = (name = \"\") => {\n\treturn `xxxxxxxx4xxxyxxxxxxxxxxxxx${name}`.replace(/[xy]/g, (c) => {\n\t\t// eslint-disable-next-line\n\t\tvar r = (Math.random() * 16) | 0,\n\t\t\tv = c === \"x\" ? r : (r & 0x3) | 0x8;\n\t\treturn v.toString(16);\n\t});\n};\n\nconst generateImageName = (name, source) => {\n\tlet result = randomString(name);\n\tif (source) {\n\t\tresult += `.${_.last(source.split(\".\"))}`;\n\t}\n\treturn result;\n};\n\nconst getSite = (site) => {\n\treturn site === \"plussSpace\" || site === \"hq\"\n\t\t? Config.env.preferredSite\n\t\t: site;\n};\n\nconst getTakeoverThumb = (uri) => {\n\tconst filename = uri.split(\"/\").pop();\n\tswitch (filename) {\n\t\tdefault:\n\t\t\treturn { uri };\n\t}\n};\n\nconst getTakeoverImage = (uri) => {\n\tconst filename = uri.split(\"/\").pop();\n\tswitch (filename) {\n\t\tdefault:\n\t\t\treturn { uri };\n\t}\n};\n\nconst getImageSource = (uri, isThumb) => {\n\tif (uri == null) return null;\n\tif (isThumb) return getTakeoverThumb(uri);\n\treturn getTakeoverImage(uri);\n};\n\nconst getFirstName = (name) => {\n\tif (_.isEmpty(name)) {\n\t\treturn name;\n\t}\n\treturn name.split(\" \")[0];\n};\n\nconst usersToSearchResult = (contacts, excludedUserIds) => {\n\tlet result = [];\n\tcontacts.forEach((user) => {\n\t\tresult.push({\n\t\t\tdisplayName: user.displayName,\n\t\t\tid: user.objectID || user.id || user.ID || user.userId || user.Id,\n\t\t\tprofilePic: user.profilePic || user.photoURL || null,\n\t\t\tunit: user.unit,\n\t\t});\n\t});\n\tresult = _.reject(result, (contact) => {\n\t\treturn _.includes(excludedUserIds, contact.id);\n\t});\n\treturn result;\n};\n\nconst searchUsers = (source, term) => {\n\tif (_.isEmpty(term)) {\n\t\treturn source;\n\t}\n\treturn _.filter(source, (user) => {\n\t\tconst split = user.displayName.split(\" \");\n\t\treturn _.some(split, (part) => {\n\t\t\treturn part.toLowerCase().indexOf(term.toLowerCase()) === 0;\n\t\t});\n\t});\n};\n\nconst getTabSettingsFromState = (state) => {\n\tconst tabSettings =\n\t\t(state.user && state.user.interface) ||\n\t\tgetSiteSettingFromState(state, \"TabSettings\", null);\n\treturn tabSettings;\n};\n\nconst getEnabledTabsFromState = (state) => {\n\tconst tabSettings = getTabSettingsFromState(state);\n\treturn tabSettings ? tabSettings.filter((tab) => tab.isEnabled) : [];\n};\n\nconst getReactions = () => {\n\treturn [\n\t\t{\n\t\t\tkey: \"heart\",\n\t\t\ticon: require(\"./assets/icons/reactions/heart.png\"),\n\t\t},\n\t\t{\n\t\t\tkey: \"smile\",\n\t\t\ticon: require(\"./assets/icons/reactions/smile.png\"),\n\t\t},\n\t\t{\n\t\t\tkey: \"sad\",\n\t\t\ticon: require(\"./assets/icons/reactions/sad.png\"),\n\t\t},\n\t\t{\n\t\t\tkey: \"party\",\n\t\t\ticon: require(\"./assets/icons/reactions/party.png\"),\n\t\t},\n\t];\n};\n\nconst hasReacted = (reactions, userId) => {\n\treturn _.some(reactions, (r) => {\n\t\treturn !!r[userId];\n\t});\n};\n\nconst isTablet = () => {\n\treturn Dimensions.get(\"screen\").width > 600;\n};\n\nconst isVimeo = (url) => {\n\tif (_.isEmpty(url)) {\n\t\treturn false;\n\t}\n\tif (url.indexOf(\"https://vimeo.com/\") === 0) {\n\t\treturn true;\n\t}\n\tif (url.indexOf(\"https://player.vimeo.com/video/\") === 0) {\n\t\treturn true;\n\t}\n};\n\nconst getVimeoEmbed = (url) => {\n\tif (_.isEmpty(url)) {\n\t\treturn \"\";\n\t}\n\tif (url.indexOf(\"https://vimeo.com/\") === 0) {\n\t\tconst vimeoId = \"lol\"; //TODO\n\t\treturn `https://player.vimeo.com/video/${vimeoId}`;\n\t}\n\treturn url; //TODO\n};\n\nconst isYoutube = (url) => {\n\tif (_.isUndefined(url) || _.isEmpty(url)) {\n\t\treturn false;\n\t}\n\tconst regExp =\n\t\t/^.*(youtu.be\\/|v\\/|u\\/\\w\\/|embed\\/|watch\\?v=|\\&v=|\\?v=)([^#\\&\\?]*).*/;\n\tconst match = url.match(regExp);\n\tif (match && match[2].length === 11) {\n\t\treturn true;\n\t}\n\treturn false;\n};\n\nconst getYoutubeEmbed = (url) => {\n\tconst regExp =\n\t\t/^.*(youtu.be\\/|v\\/|u\\/\\w\\/|embed\\/|watch\\?v=|\\&v=|\\?v=)([^#\\&\\?]*).*/;\n\tconst match = url.match(regExp);\n\treturn `https://www.youtube.com/embed/${match[2]}?autoplay=0`;\n};\n\nconst getValidUrl = (url = \"\") => {\n\tlet newUrl = decodeURIComponent(url);\n\tnewUrl = newUrl.trim().replace(/\\s/g, \"\");\n\n\tif (/^(:\\/\\/)/.test(newUrl)) {\n\t\treturn `https${newUrl}`;\n\t}\n\tif (!/^(f|ht)tps?:\\/\\//i.test(newUrl)) {\n\t\treturn `https://${newUrl}`;\n\t}\n\n\treturn newUrl;\n};\n\nconst getUserPreview = (user) => {\n\treturn {\n\t\tid: user.uid,\n\t\tdisplayName: user.displayName,\n\t\tprofilePic: user.profilePic || null,\n\t};\n};\n\nconst allowComments = (canComment) => {\n\tif (canComment === false) {\n\t\treturn false;\n\t}\n\tif (canComment === true) {\n\t\treturn true;\n\t}\n\treturn Config.env.defaultAllowComments;\n};\n\nconst toParagraphed = (text, style) => {\n\tif (!text) {\n\t\treturn text;\n\t}\n\tconst textSplit = text.split(\"\\n\");\n\treturn _.map(textSplit, (t, i) => {\n\t\treturn (\n\t\t\t<Text key={`paragraph_${i}`} style={style}>\n\t\t\t\t{t}\n\t\t\t</Text>\n\t\t);\n\t});\n};\n\nexport {\n\tTIMESTAMP_FORMAT,\n\tDATE_FORMAT,\n\tgetUrl,\n\tgetAuthTokenHeader,\n\tgetShadowStyle,\n\tStatusBarHeight,\n\tgetStatusBarHeight,\n\tgetSiteSettingFromState,\n\tgetValueOrDefault,\n\tgetExtension,\n\tgetFileName,\n\tisVideo,\n\tget300,\n\tgetThumb300,\n\tget1400,\n\tgetMimeType,\n\tgetCompressed,\n\timageExists,\n\tgetPluralS,\n\tgetPluralOptions,\n\tisEmail,\n\tformatTime,\n\tminutesToString,\n\trandomString,\n\tgenerateImageName,\n\tgetSite,\n\tgetImageSource,\n\tgetFirstName,\n\tusersToSearchResult,\n\tsearchUsers,\n\tgetEnabledTabsFromState,\n\tgetReactions,\n\thasReacted,\n\tisTablet,\n\tisYoutube,\n\tgetYoutubeEmbed,\n\tgetValidUrl,\n\tgetUserPreview,\n\tallowComments,\n\ttoParagraphed,\n\tisVideoUrl,\n\tdetectFaces,\n\tfindLandmarkRange,\n\tgetScaledOffset,\n\tgetSiteLevelFromState,\n\tisTVEnabled,\n};\n"],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@plusscommunities/pluss-core-app",
3
- "version": "8.0.14-beta.2",
3
+ "version": "8.0.14-beta.3",
4
4
  "description": "Core extension package for Pluss Communities platform",
5
5
  "main": "dist/module/index.js",
6
6
  "module": "dist/module/index.js",
package/src/helper.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import _ from "lodash";
2
2
  import React from "react";
3
3
  import { Platform, StatusBar, Dimensions } from "react-native";
4
- import { Text } from "../components";
4
+ import { Text } from "./components";
5
5
  import Constants from "expo-constants";
6
6
  import Config from "./config";
7
7
  import { LINEGREY } from "./colours";