{"version":3,"sources":["assets/images/sm_logo_color.png","assets/images/sm_logo_black.png","utils/Constants.js","utils/RequestResolver.js","utils/Utils.js","utils/Session.js","components/InputByLanguage.js","components/adminLayout/AdminMainMenu.js","views/prime/MapWidget.js","components/Language.js","views/prime/MenuBar.js","views/prime/PrimeIndex.js","views/search-results/SearchResultsIndex.js","views/search-results/Index.js","views/App.js","serviceWorker.js","slices/projectSlices.js","slices/menuSlice.js","slices/fileUploadSlices.js","slices/webPageSlice.js","rootReducer.js","store.js","index.js"],"names":["module","exports","DEFAULTS","lang","EU_DEFAULTS","CONSTANTS_REQ","INIT","URL_PREFIX","REFRESHTOKEN","LANG","LIST","EDIT","FORPROJECT","VALIDATEABB","FORAPP","DISK_FILE","SEARCH","UPLOAD","DOWNLOAD","PDF","DELETE","SETTINGS","SAVE_SETTINGS","CLIENT","PROJECT_LIST","SETTINGS_EDIT","PAGETYPE_LIST","WEBPAGE_LIST","WEBPAGECOMPONENT_LIST","DISK_FILE_DOWNLOAD","DISK_FILE_PDF","MAP_PIN_LIST","LOCATION_LIST","LOCATION_EDIT","FACILITY_LIST","SEARCH_TYPE_EDIT","SEARCH_CONTENT_TYPE","SEARCH_CONTENT_TYPE_FILTER","KEY_FACILITY_EDIT","FACILITY_GROUPS","FACILITY_TREE","VIDEO_RANGE_STREAM","PRIME","STATIC","STATIC_MEDIA","CONSTANTS_STORAGE","requestGet","url","params","arguments","length","undefined","returnJson","returnBlob","request","getUrl","FETCH_METHODS","GET","requestPost","data","POST","RESPONSE","OK","CREATED","ACCEPTED","BAD_REQUEST","UNAUTORIZED","NOTFOUND","NOT_ACCEPTABLE","INTERNAL_SERVER_ERROR","PUT","FETCH_HEADERS","FETCH_OBJECT","method","body","sendFile","ret","headers","Session","getUserToken","JSON","stringify","async","doNotRefreshPage","retValue","status","tokenExpire","getTokenExpiration","Date","now","requestRefreshToken","requestFinall","logoutUser","window","location","reload","response","fetch","getRefreshToken","json","fileObject","filename","file","get","responseHeader","split","replace","blob","text","e","console","log","error","size","key","hasOwnProperty","saveDefaults","newDefaults","object","parse","localStorage","setItem","loadDefaults","defaults","load","hostname","includes","loadSession","saveSession","session","value","getSelectedLanguage","i18n","getAppValue","toLowerCase","language","default","getSelectedClientLanguage","clientLang","getProjectDefaultLanguage","getSelectedLocale","values","getItem","getWindowDimensions","innerWidth","width","innerHeight","height","useWindowDimensions","windowDimensions","setWindowDimensions","useState","useEffect","handleResize","addEventListener","removeEventListener","app","user","project","init","resp","getUser","access_token","isUserAuthenticated","loginUser","username","password","loginData","LOGIN","isLanugageLoaded","I18N","messages","isTranslationsLoaded","translations","setProject","refresh_token","expires_at","grant_type","expires_in","token_type","getProjectId","id","getProjectInfo","defaultLanguage","config","defaultLang","setProjectPageTypes","pageTypes","getProjectPageTypes","getComponentsForSearch","map","obj","rObj","geti18nText","name","getComponentName","comp","getComponentAdmin","adminComponent","setAppLanguages","projectId","projectName","themeShortName","languages","Object","keys","args","i","getTranslation","getTranslated","withRouter","applicationLogo","logo","logoSmTourColor","logoSmTourBlack","L","Icon","iconUrl","shadowUrl","iconSize","iconAnchor","popupAnchor","shadowSize","homeIcon","divIcon","className","html","ButtonGroup","Button","Group","MapWidget","Map","addInitHook","GestureHandling","selLang","setLogo","setLang","mapPins","setMapPins","clicked","setClicked","destination","setDestination","mapZoom","setMapZoom","mapHeight","setMapHeight","mapLongLat","setMapLongLat","mapRef","max","content","getMapPins","leafletElement","invalidateSize","list","direction","getNextMapPinIndex","flyTo","latitude","longitude","markerRefs","openPopup","index","fIndex","handlePolygonOrPinClick","item","domain","subdomain","open","startsWith","substring","getClassNameForBtn","selected","React","createElement","Row","Col","span","onClick","style","border","ref","center","zoom","doubleClickZoom","trackResize","zoomControl","touchZoom","keyboard","gestureHandling","attributionControl","gestureHandlingOptions","touch","mapZoomText","scroll","scrollMac","TileLayer","attribution","ZoomControl","position","Marker","icon","onclick","latLng","target","getLatLng","pin","lat","lng","Popup","image_path","src","concat","xmlns","version","viewBox","enable-background","fill","d","class","MapPin","region","Polygon","positions","color","Fragment","Region","left","bottom","zIndex","boxShadow","alignItems","Tooltip","title","align","type","Option","Select","LanguageSelector","props","projInfo","client","disabled","defaultValue","onSelect","selectedLang","available","toUpperCase","selectedLanguage","selectedClientLang","langFlag","Flag","code","MenuBar","loginHref","setLoginHref","aboutUsHref","setAboutUsHref","primeResponsive","setPrimeResponsive","group","settingValue","getLoginHref","getAboutUsHref","marginTop","href","setResponsive","PrimeIndex","history","useHistory","display","Search","Form","projectType","TreeNode","Tree","SearchResultsIndex","typeId","locationId","useParams","searchResults","setSearchResults","numberOfElements","setNumberOfElements","loading","setLoading","gridView","setGridView","mapView","setMapView","categoriesFilter","setCategoriesFilter","keyFacilitiesFilter","setKeyFacilitiesFilter","keyFacilitiesParent","setKeyFacilitiesParent","facilitiesGroupsFilter","setFacilitiesGroupsFilter","setLat","setLng","setZoom","setMapRef","checkedStars","setCheckedStars","checkedKeyFacilities","setCheckedKeyFacilities","checkedCategories","setCheckedCategories","checkedFacilitiesGroup","sethCheckedFacilitiesGroup","forMap","setForMap","pagination","setPagination","offset","checkedOrCategories","setCheckedOrCategories","checkedAndCategories","setCheckedAndCategories","getSearchResults","getCategoriesFilter","getKeyFacilities","getFacilitiesGroup","isActive","searchTypesAnd","searchTypesOr","locations","projects","facilities","stars","searchFor","then","responseData","totalSize","tmp","forEach","push","has_parent","parent","GenerateStarts","_ref","searchStarsNumber","projectClick","alias","ResultCard","_ref2","searchDescription","searchImage","price","searchLink","encodeURI","marginLeft","borderLeft","onClickKeyFacilities","preventDefault","checkedKeys","indexOf","splice","checkedGroupKeys","setFacilitiesGroup","textAlign","defaultSelectTypeValue","defaultSelectLocationValue","Spin","marginBottom","float","onCheck","onCheckStars","info","checkable","fontSize","onCheckCategoriesFilter","or_keys","and_keys","children","searchAs","onCheckFacilitiesGroup","oldCheckedGroupKeys","parseInt","setKeyFacilities","textTransform","tabIndex","onGridView","onMapView","Pagination","defaultCurrent","total","pageSize","onChange","onChangePagination","page","Index","Menu","mode","padding","Item","ga","ReactGA","initialize","pageview","pathname","search","App","Component","constructor","super","this","state","setState","render","HashRouter","Switch","Route","exact","path","component","Boolean","match","initialState","selectedProject","createSlice","reducers","selectProject","action","payload","actions","menuSclice","refreshLastNode","refreshProjectNode","refreshNodes","refreshMenu","selectedFolder","folderName","selectFolder","webPage","selectedPageType","selectedFirstPage","pagePreviewToRefresh","selectPageType","refreshPagePreview","selectFirstPage","rootReducer","combineReducers","projectSlices","projectSlicesReducer","menuSlices","menuSlicesReducer","fileUploadSlices","fileUploadSlicesReducer","webPageSlices","webPageSlicesReducer","store","configureStore","reducer","ReactDOM","Provider","ConfigProvider","locale","document","getElementById"],"mappings":"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","file":"static/js/main.3b707327.chunk.js","sourcesContent":["module.exports = __webpack_public_path__ + \"static/media/sm_logo_color.319e1453.png\";","module.exports = __webpack_public_path__ + \"static/media/sm_logo_black.57431559.png\";","const URL_PREFIX = process.env.NODE_ENV === 'development' ? 'http://localhost:8080/api/' : '/api/';\n\nexport const DEFAULTS = {\n lang: 'hr',\n};\n\nexport const EU_DEFAULTS = {\n lang: 'en',\n};\n\nexport const CONSTANTS_REQ = {\n INIT: URL_PREFIX + 'init',\n REFRESHTOKEN: URL_PREFIX + 'refresh_token',\n LANG: {\n LIST: URL_PREFIX + 'lang/list',\n EDIT: URL_PREFIX + 'lang',\n FORPROJECT: URL_PREFIX + 'lang/forProject',\n VALIDATEABB: URL_PREFIX + 'lang/validateAbb',\n FORAPP: URL_PREFIX + 'lang/forApp',\n },\n DISK_FILE: {\n LIST: URL_PREFIX + 'diskFile/list',\n SEARCH: URL_PREFIX + 'diskFile/search',\n EDIT: URL_PREFIX + 'diskFile',\n UPLOAD: URL_PREFIX + 'diskFile/upload',\n DOWNLOAD: URL_PREFIX + 'diskFile/download',\n PDF: URL_PREFIX + 'diskFile/pdf',\n DELETE: URL_PREFIX + 'diskFile/delete/',\n },\n SETTINGS: {\n EDIT: URL_PREFIX + 'settings',\n SAVE_SETTINGS: URL_PREFIX + 'settings/saveSettings',\n },\n CLIENT: {\n PROJECT_LIST: URL_PREFIX + 'project/client/list',\n SETTINGS_EDIT: URL_PREFIX + 'settings/client',\n PAGETYPE_LIST: URL_PREFIX + 'pageType/client/list',\n WEBPAGE_LIST: URL_PREFIX + 'webPage/client/list',\n WEBPAGECOMPONENT_LIST: URL_PREFIX + 'pageComponent/client/list',\n DISK_FILE_DOWNLOAD: URL_PREFIX + 'diskFile/client/download',\n DISK_FILE_PDF: URL_PREFIX + 'diskFile/client/pdf',\n MAP_PIN_LIST: URL_PREFIX + 'mapPin/client/list',\n LOCATION_LIST: URL_PREFIX + 'location/client/list',\n LOCATION_EDIT: URL_PREFIX + 'location/client',\n FACILITY_LIST: URL_PREFIX + 'facility/client/listByPage',\n SEARCH_TYPE_EDIT: URL_PREFIX + 'searchContentType/client',\n SEARCH_CONTENT_TYPE: URL_PREFIX + 'searchContentType/client',\n SEARCH_CONTENT_TYPE_FILTER: URL_PREFIX + 'searchContentType/client/filter',\n KEY_FACILITY_EDIT: URL_PREFIX + 'facility/client',\n FACILITY_GROUPS: URL_PREFIX + 'facility/client/group',\n FACILITY_TREE: URL_PREFIX + 'facility/client/facilityTree',\n VIDEO_RANGE_STREAM: URL_PREFIX + 'diskFile/videoRangeStream',\n },\n PRIME: {\n PROJECT_LIST: URL_PREFIX + 'prime/projectList',\n },\n SEARCH: {\n LIST: URL_PREFIX + 'search/list',\n },\n STATIC: URL_PREFIX + 'media/',\n STATIC_MEDIA: URL_PREFIX,\n};\n\nexport const CONSTANTS_FILE_TYPE = {\n IMAGE: 0,\n VIDEO: 1,\n OTHER: 2,\n};\n\nexport const CONSTANTS_STORAGE = {\n DEFAULTS: 'hr.nybble.nytourist.defaults',\n SESSION: 'hr.nybble.nytourist.session',\n};\n","import { Session } from './Session';\n\n//Get method - HTTP Get\nexport const requestGet = (url, params = undefined, returnJson = true, returnBlob = false) => {\n return request(getUrl(url, params), FETCH_METHODS.GET, undefined, returnJson, returnBlob);\n};\n\n//Post method - HTTP Post\nexport const requestPost = (url, params = undefined, data = undefined, returnJson = true) => {\n return request(getUrl(url, params), FETCH_METHODS.POST, data, returnJson);\n};\n\n//Post method - HTTP Put\nexport const requestPut = (url, params = undefined, data = undefined, returnJson = true) => {\n return request(getUrl(url, params), FETCH_METHODS.PUT, data, returnJson);\n};\n\n//Post method - HTTP Post file\nexport const requestPostFile = (url, params = undefined, data = undefined, returnJson = true) => {\n return request(getUrl(url, params), FETCH_METHODS.POST, data, returnJson, false, true);\n};\n\n//Post method - HTTP Delete\nexport const requestDelete = (url, params = undefined, data = undefined, returnJson = true) => {\n return request(getUrl(url, params), FETCH_METHODS.DELETE, data, returnJson);\n};\n\n//Putting params into URL\nexport const generateUrl = (url, params = undefined) => {\n return getUrl(url, params);\n};\n\n//Supported response status\nexport const RESPONSE = {\n OK: 200,\n CREATED: 201,\n ACCEPTED: 202,\n BAD_REQUEST: 400,\n UNAUTORIZED: 401,\n NOTFOUND: 404,\n NOT_ACCEPTABLE: 406,\n INTERNAL_SERVER_ERROR: 500,\n};\n\n//Supported methods\nconst FETCH_METHODS = {\n POST: 'POST',\n GET: 'GET',\n PUT: 'PUT',\n DELETE: 'DELETE',\n};\n\n//Default headers\nlet FETCH_HEADERS = {\n 'Content-Type': 'application/json',\n};\n\n//Default fetch object\nconst FETCH_OBJECT = (method, body, sendFile = false) => {\n let ret = {\n method: method,\n };\n if (sendFile) {\n ret.headers = {};\n } else {\n ret.headers = FETCH_HEADERS;\n }\n\n if (Session.getUserToken()) {\n ret.headers['Authorization'] = 'Bearer ' + Session.getUserToken();\n }\n if (body) {\n if (sendFile) {\n ret.body = body;\n } else {\n ret.body = JSON.stringify(body);\n }\n }\n return ret;\n};\n\n//check if token is expired, refresh token and call request\nconst request = async function (\n url,\n method,\n body = undefined,\n returnJson = true,\n returnBlob = false,\n sendFile = false,\n doNotRefreshPage = false\n) {\n let retValue = { status: 0, data: {} };\n\n const tokenExpire = Session.getTokenExpiration();\n if (tokenExpire && tokenExpire < Date.now()) {\n //console.log('TOKEN EXPIRED');\n const success = await Session.requestRefreshToken();\n if (!success) {\n //console.log('TOKEN NOT REFRESHED');\n Session.logoutUser();\n window.location.reload();\n return retValue;\n } else {\n //console.log('TOKEN REFRESHED');\n return requestFinall(url, method, body, returnJson, returnBlob, sendFile, doNotRefreshPage);\n }\n } else {\n return requestFinall(url, method, body, returnJson, returnBlob, sendFile, doNotRefreshPage);\n }\n};\n\n//default request\nconst requestFinall = async function (\n url,\n method,\n body = undefined,\n returnJson = true,\n returnBlob = false,\n sendFile = false,\n doNotRefreshPage = false\n) {\n let retValue = { status: 0, data: {} };\n try {\n let response = await fetch(url, FETCH_OBJECT(method, body, sendFile));\n if (response.status === RESPONSE.UNAUTORIZED) {\n //console.log('UNAUTORIZED');\n if (Session.getRefreshToken() !== undefined) {\n //console.log('REFRESH TOKEN EXISTS');\n const success = await Session.requestRefreshToken();\n if (success) {\n return requestFinall(url, method, body, returnJson, returnBlob, sendFile, doNotRefreshPage);\n } else {\n Session.logoutUser();\n window.location.reload();\n return retValue;\n }\n } else {\n //console.log('REFRESH TOKEN NOT EXISTS');\n Session.logoutUser();\n\n if (!doNotRefreshPage) {\n window.location.reload();\n }\n }\n } else {\n retValue.status = response.status;\n try {\n if (returnJson) {\n retValue.data = await response.json();\n } else if (returnBlob) {\n let fileObject = { filename: '', file: undefined };\n retValue.data = { filename: '', file: '' };\n if (response.headers.get('Content-Disposition')) {\n const responseHeader = response.headers.get('Content-Disposition');\n if (responseHeader != null) {\n fileObject.filename = responseHeader.split('filename=')[1];\n }\n if (fileObject.filename) {\n fileObject.filename = fileObject.filename.replace(/\\\"/g, '');\n }\n }\n fileObject.file = await response.blob();\n retValue.data = fileObject;\n } else {\n retValue.data = await response.text();\n }\n return retValue;\n } catch (e) {\n console.log('Error while waiting for response');\n console.log(e);\n }\n }\n } catch (error) {\n console.error('Error while Request method!!!');\n console.error(error);\n retValue.data = error;\n }\n return retValue;\n};\n\n//Function for putting params into URL\nfunction getUrl(url, params) {\n let ret = url;\n let size = 0;\n if (params) {\n ret += '?';\n for (var key in params) {\n if (params.hasOwnProperty(key)) {\n if (size > 0) {\n ret += '&';\n }\n ret += key + '=' + params[key];\n size++;\n }\n }\n }\n return ret;\n}\n","import hr from 'antd/es/locale/hr_HR';\nimport moment from 'moment';\nimport { CONSTANTS_REQ } from './Constants';\nimport { requestGet, RESPONSE } from './RequestResolver';\nimport { Session } from './Session';\nimport { CONSTANTS_STORAGE, DEFAULTS, EU_DEFAULTS } from './Constants';\nimport { notification } from 'antd';\nimport React, { useState, useEffect } from 'react';\n\nexport const cloneObject = (object) => {\n return JSON.parse(JSON.stringify(object));\n};\n\nexport const saveDefaults = (newDefaults) => {\n let saveDefaults = cloneObject(DEFAULTS);\n for (var key in newDefaults) {\n if (newDefaults.hasOwnProperty(key) && saveDefaults.hasOwnProperty(key)) {\n saveDefaults[key] = newDefaults[key];\n } else {\n saveDefaults = { ...saveDefaults, ...newDefaults };\n }\n }\n\n localStorage.setItem(CONSTANTS_STORAGE.DEFAULTS, JSON.stringify(saveDefaults));\n};\n\nexport const loadDefaults = () => {\n const defaults = load(CONSTANTS_STORAGE.DEFAULTS);\n if (defaults) {\n return defaults;\n } else {\n return (window.location.hostname.includes('.eu')) ? EU_DEFAULTS : DEFAULTS;\n }\n};\n\nexport const loadSession = () => {\n return load(CONSTANTS_STORAGE.SESSION);\n};\n\nexport const saveSession = (session) => {\n save(CONSTANTS_STORAGE.SESSION, session);\n};\n\nexport const getSelectedLanguage = () => {\n const i18n = Session.getAppValue('I18N');\n const defaults = loadDefaults();\n return defaults\n ? defaults.lang\n ? defaults.lang.toLowerCase()\n : i18n.language.default.toLowerCase()\n : i18n.language.default.toLowerCase();\n};\n\nexport const getSelectedClientLanguage = () => {\n const defaults = loadDefaults();\n return defaults\n ? defaults.clientLang\n ? defaults.clientLang.toLowerCase()\n : Session.getProjectDefaultLanguage().toLowerCase()\n : Session.getProjectDefaultLanguage().toLowerCase();\n};\n\nexport const getSelectedLocale = () => {\n if (getSelectedLanguage() === 'hr') {\n return 'hr-HR';\n } else {\n return 'en-US';\n }\n};\n\nexport const getTimeValue = (stringValue) => {\n if (stringValue && stringValue !== '') {\n return moment(stringValue, 'HH:mm');\n }\n return undefined;\n};\n\nexport const downloadFile = (result) => {\n if (result.data) {\n const url = window.URL.createObjectURL(result.data.file);\n const a = document.createElement('a');\n a.style.display = 'none';\n a.href = url;\n if (result.data.filename) {\n a.download = result.data.filename;\n } else {\n a.download = 'download';\n }\n document.body.appendChild(a);\n a.click();\n window.URL.revokeObjectURL(url);\n return true;\n } else {\n return false;\n }\n};\n\nfunction load(key) {\n const values = localStorage.getItem(key);\n if (values && values !== 'undefined') {\n return JSON.parse(values);\n }\n return undefined;\n}\n\nfunction save(key, value) {\n localStorage.setItem(key, JSON.stringify(value));\n}\n\nexport const formatNumber = (num, scale = 0) => {\n return num.toLocaleString(getSelectedLocale().locale, {\n minimumFractionDigits: scale,\n maximumFractionDigits: scale,\n });\n};\n\nexport const normalizeComponents = (values) => {\n let normalizedValues = {};\n let translationKeys = {};\n for (var key in values) {\n if (values.hasOwnProperty(key)) {\n if (values[key] instanceof Array) {\n if (values[key].length === 1) {\n normalizedValues[key] = values[key][0].key;\n } else {\n normalizedValues[key] = values[key].map((element) => '' + element.key);\n }\n } else if (values[key] instanceof Object && values[key]['key']) {\n normalizedValues[key] = values[key]['key'];\n } else {\n // translations - to json\n if (key.startsWith('translation-')) {\n const fieldKey = key.substr(15);\n const fieldLanguage = key.substr(12, 2);\n if (normalizedValues[fieldKey] == undefined) {\n normalizedValues[fieldKey] = {};\n }\n normalizedValues[fieldKey][fieldLanguage] = values[key];\n if (!translationKeys[fieldKey]) {\n //&& !jsonFieldKeys.includes(fieldKey)\n translationKeys[fieldKey] = fieldKey;\n }\n } else {\n if (values[key] === undefined) {\n normalizedValues[key] = null;\n } else {\n normalizedValues[key] = values[key];\n }\n }\n }\n }\n }\n return normalizedValues;\n};\n\nexport const FormatFileSize = (bytes) => {\n if (!bytes) {\n return 'N/A';\n } else if (bytes === 0) {\n return '0 B';\n }\n let sizeName = ['B', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'];\n const divisor = 1024;\n const sizeNameIdx = Math.floor(Math.log(bytes) / Math.log(divisor));\n return parseFloat((bytes / Math.pow(divisor, sizeNameIdx)).toFixed(2)) + ' ' + sizeName[sizeNameIdx];\n};\n\nexport const showNotification = (title, message, duration, type) => {\n notification[type]({\n message: title,\n description: message,\n duration: duration,\n });\n};\n\nexport const cookieExists = (cookieToFind) => {\n let cookies = document.cookie;\n let cookieArr = cookies.split(';');\n\n for (var i = 0; i < cookieArr.length; i++) {\n var name = cookieArr[i].split('=')[0];\n console.log(\"'\" + name + \"'\");\n if (name.trim() === cookieToFind) {\n return true;\n }\n }\n return false;\n};\n\nexport const saveGDPRCookie = () => {\n var now = new Date();\n now.setMonth(now.getMonth() + 1);\n document.cookie = 'gdpr=true;expires=' + now.toUTCString() + ';';\n};\n\nexport async function setProjectLanguages(id) {\n const resp = await requestGet(CONSTANTS_REQ.LANG.FORPROJECT + '/' + id);\n if (resp.status === RESPONSE.OK) {\n let project = Session.getProjectInfo();\n project.languages = resp.data;\n if (resp.data && resp.data.length > 0) {\n project.defaultLanguage = Object.keys(resp.data[0])[0];\n }\n Session.setProject(project);\n }\n}\n\nfunction getWindowDimensions() {\n const { innerWidth: width, innerHeight: height } = window;\n return {\n width,\n height,\n };\n}\n\nexport default function useWindowDimensions() {\n const [windowDimensions, setWindowDimensions] = useState(getWindowDimensions());\n\n useEffect(() => {\n function handleResize() {\n setWindowDimensions(getWindowDimensions());\n }\n\n window.addEventListener('resize', handleResize);\n return () => window.removeEventListener('resize', handleResize);\n }, []);\n\n return windowDimensions;\n}\n","import { CONSTANTS_REQ } from './Constants';\nimport { requestGet, requestPost, RESPONSE } from './RequestResolver';\nimport { loadDefaults, loadSession, saveSession } from './Utils';\nimport config from '../config.json';\n\nexport const Session = (function () {\n let session = { app: undefined, user: undefined, project: undefined };\n return {\n init: async () => {\n const defaults = loadDefaults();\n session = loadSession();\n if (!session) {\n session = { app: undefined, user: undefined, project: undefined };\n }\n const resp = await requestGet(CONSTANTS_REQ.INIT, defaults);\n if (resp.status === RESPONSE.OK) {\n session.app = resp.data;\n saveSession(session);\n }\n },\n getAppValue: (key) => {\n if (session && session.app) {\n return session.app[key];\n }\n return '';\n },\n getUser: () => {\n return session.user;\n },\n getUserToken: () => {\n if (session.user && session.user.access_token) {\n return session.user.access_token;\n }\n return undefined;\n },\n isUserAuthenticated: () => {\n if (session.user && Session.getUserToken()) {\n return true;\n }\n return false;\n },\n loginUser: async (username, password) => {\n const loginData = {\n username: username,\n password: password,\n };\n\n const response = await requestPost(CONSTANTS_REQ.LOGIN, undefined, loginData);\n if (response.status === RESPONSE.OK) {\n session.user = response.data;\n saveSession(session);\n return true;\n }\n return false;\n },\n logoutUser: () => {\n session.user = undefined;\n saveSession(session);\n },\n isLanugageLoaded() {\n return session.app && session.app.I18N && session.app.I18N.messages;\n },\n isTranslationsLoaded() {\n return session.app && session.app.translations;\n },\n setProject(project) {\n session.project = project;\n saveSession(session);\n },\n getRefreshToken: () => {\n session = loadSession();\n if (session && session.user && session.user.refresh_token) {\n return session.user['refresh_token'];\n }\n return undefined;\n },\n getTokenExpiration: () => {\n if (session && session.user && session.user.expires_at) {\n return session.user['expires_at'];\n }\n return undefined;\n },\n requestRefreshToken: async () => {\n if (Session.getRefreshToken() === undefined) {\n return false;\n }\n const response = await fetch(CONSTANTS_REQ.REFRESHTOKEN, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify({\n grant_type: 'refresh_token',\n refresh_token: Session.getRefreshToken(),\n }),\n });\n if (response.status === RESPONSE.OK) {\n const data = await response.json();\n if (data.expires_in != undefined) {\n session.user.expires_in = data.expires_in;\n session.user.expires_at = Date.now() + (data.expires_in - 5) * 1000;\n }\n session.user.access_token = data.access_token;\n session.user.token_type = data.token_type;\n saveSession(session);\n return true;\n } else {\n return false;\n }\n },\n getProjectId() {\n if (session && session.project) {\n return session.project.id;\n }\n return undefined;\n },\n getProjectInfo() {\n if (session && session.project) {\n return session.project;\n }\n return '';\n },\n getProjectDefaultLanguage() {\n if (session && session.project && session.project.defaultLanguage) {\n return session.project.defaultLanguage;\n }\n return config.defaultLang ? config.defaultLang : 'hr';\n },\n setProjectPageTypes(pageTypes) {\n session.pageTypes = pageTypes;\n saveSession(session);\n },\n getProjectPageTypes() {\n if (session && session.pageTypes) {\n return session.pageTypes;\n }\n return [];\n },\n getComponentsForSearch() {\n if (session && Session.getAppValue('COMPONENTS') != null) {\n return Session.getAppValue('COMPONENTS').map((obj) => {\n let rObj = {};\n rObj.id = obj.id;\n rObj.text = geti18nText('component.' + obj.name);\n return rObj;\n });\n }\n return [];\n },\n getComponentName(id) {\n if (session && Session.getAppValue('COMPONENTS') != null) {\n let comp;\n for (comp of Session.getAppValue('COMPONENTS')) {\n if (comp.id == id) {\n return geti18nText('component.' + comp.name);\n }\n }\n }\n return '';\n },\n getComponentAdmin(id) {\n if (session && Session.getAppValue('COMPONENTS') != null) {\n let comp;\n for (comp of Session.getAppValue('COMPONENTS')) {\n if (comp.id == id) {\n return comp.adminComponent;\n }\n }\n }\n return '';\n },\n setAppLanguages: async () => {\n const resp = await requestGet(CONSTANTS_REQ.LANG.FORAPP);\n if (resp.status === RESPONSE.OK) {\n let project = Session.getProjectInfo();\n if (project == '') {\n project = {\n projectId: 0,\n projectName: '',\n themeShortName: '',\n };\n }\n project.languages = resp.data;\n if (resp.data && resp.data.length > 0) {\n project.defaultLanguage = Object.keys(resp.data[0])[0];\n }\n Session.setProject(project);\n }\n },\n };\n})();\n\nexport const geti18nText = (key, args = null) => {\n if (Session.isLanugageLoaded()) {\n let value = Session.getAppValue('I18N').messages[key];\n if (value) {\n if (args) {\n for (var i = 0; i < args.length; i++) {\n value = value.replace('{' + i + '}', args[i]);\n }\n }\n return value;\n }\n }\n return '';\n};\n\nexport const getTranslation = (key, lang = Session.getProjectDefaultLanguage()) => {\n if (key == undefined || key == '') {\n return '';\n }\n if(Session.isTranslationsLoaded()){\n let value = Session.getAppValue('translations')[key];\n if (value) {\n let translations = JSON.parse(value);\n return translations[lang];\n }\n }\n return '';\n};\n\nexport const hasAnyRole = (roles) => {\n if (Session.isUserAuthenticated() && Session.getUser().roles) {\n let role;\n for (role of roles) {\n if (Session.getUser().roles.includes(role)) {\n return true;\n }\n }\n }\n return false;\n};\n\nexport const ENUMS = (function () {\n return {\n ACTIVE: () => {\n return [\n { id: 0, text: geti18nText('app.default.active.0') },\n { id: 1, text: geti18nText('app.default.active.1') },\n ];\n },\n };\n})();\n","import { Session } from '../utils/Session';\n\nexport const getTranslated = (translations, language = Session.getProjectDefaultLanguage()) => {\n if (translations == undefined || translations.length == 0) {\n return '';\n }\n\n if (typeof translations == 'string') {\n translations = JSON.parse(translations);\n }\n\n if (translations[language]) {\n return translations[language];\n } else {\n return '';\n }\n};\n","import { withRouter } from 'react-router-dom';\nimport logoSmTourBlack from '../../assets/images/sm_logo_black.png';\nimport logoSmTourColor from '../../assets/images/sm_logo_color.png';\nimport config from '../../config.json';\n\nexport const AdminMainMenu = withRouter(() => {});\n\nexport const applicationLogo = (logo) => {\n if (logo === undefined) {\n if (config.logo) {\n switch (config.logo) {\n case 'none':\n return;\n case 'sm_tour_black':\n return logoSmTourBlack;\n default:\n return logoSmTourColor;\n }\n } else {\n return logoSmTourColor;\n }\n }\n};\n","import React, { useState, useEffect } from 'react';\nimport { Session, geti18nText, getTranslation } from '../../utils/Session';\nimport { getSelectedLanguage } from '../../utils/Utils';\nimport { Col, Button, Row, Tooltip, Icon } from 'antd';\nimport { getTranslated } from '../../components/InputByLanguage';\nimport { CONSTANTS_REQ } from '../../utils/Constants';\nimport 'leaflet/dist/leaflet.css';\nimport { applicationLogo } from '../../components/adminLayout/AdminMainMenu';\nimport { getSelectedClientLanguage } from '../../utils/Utils';\nimport { requestGet, RESPONSE } from '../../utils/RequestResolver';\nimport { Map, Marker, Popup, TileLayer, Polygon, ZoomControl } from 'react-leaflet';\nimport L, { map } from 'leaflet';\nimport './MapWidget.css';\nimport { GestureHandling } from 'leaflet-gesture-handling';\nimport useWindowDimensions from '../../utils/Utils';\n\nconst blueIcon = new L.Icon({\n iconUrl: 'https://cdn.rawgit.com/pointhi/leaflet-color-markers/master/img/marker-icon-2x-blue.png',\n shadowUrl: 'https://cdnjs.cloudflare.com/ajax/libs/leaflet/0.7.7/images/marker-shadow.png',\n iconSize: [25, 41],\n iconAnchor: [12, 41],\n popupAnchor: [1, -34],\n shadowSize: [41, 41],\n});\n\nvar homeIcon = L.divIcon({\n className: 'marker-pin-icon',\n html:\n '
',\n iconSize: [25, 41],\n iconAnchor: [12, 41],\n popupAnchor: [1, -34],\n shadowSize: [41, 41],\n});\n\nconst ButtonGroup = Button.Group;\n\nconst MapWidget = () => {\n L.Map.addInitHook('addHandler', 'gestureHandling', GestureHandling);\n\n const selLang = getSelectedLanguage();\n const [logo, setLogo] = useState(undefined);\n const setLang = getSelectedClientLanguage();\n const [mapPins, setMapPins] = useState([]);\n const [clicked, setClicked] = useState(undefined);\n const [destination, setDestination] = useState(true);\n const { height, width } = useWindowDimensions();\n const [mapZoom, setMapZoom] = useState(7);\n const [mapHeight, setMapHeight] = useState();\n const [mapLongLat, setMapLongLat] = useState([44.5257, 16.3366]);\n let mapRef = null;\n\n useEffect(() => {\n setLogo(applicationLogo(logo));\n getMapPins();\n }, []);\n\n useEffect(() => {\n if (width <= 1024 && height < width) {\n setMapZoom(6);\n } else if (width < 768) {\n setMapZoom(6);\n } else {\n setMapZoom(7);\n }\n\n if (mapRef != null) {\n mapRef.leafletElement.invalidateSize();\n }\n }, [width]);\n\n useEffect(() => {\n if (height <= 568 && height < width) {\n setMapHeight('100vh');\n } else if (height <= 568) {\n setMapHeight('67vh');\n } else {\n setMapHeight('calc(100vh - 328px)');\n }\n\n if (mapRef != null) {\n mapRef.leafletElement.invalidateSize();\n }\n }, [height]);\n\n async function getMapPins() {\n const resp = await requestGet(CONSTANTS_REQ.PRIME.PROJECT_LIST, { max: 1000 });\n if (resp.status === RESPONSE.OK) {\n if (resp.data.content != null) {\n console.log(resp.data.content);\n setMapPins(resp.data.content);\n }\n }\n }\n\n const list = (i, direction) => {\n i = getNextMapPinIndex(i, direction);\n setClicked(i);\n mapRef.leafletElement.flyTo([mapPins[i].latitude, mapPins[i].longitude], 10);\n markerRefs[mapPins[i].id].leafletElement.openPopup();\n };\n\n const getNextMapPinIndex = (index, direction) => {\n let fIndex = -1;\n do {\n if (typeof mapPins[index] === 'undefined') {\n if (index === -1) {\n index = mapPins.length - 1;\n } else {\n index = 0;\n }\n }\n if (mapPins[index].latitude && mapPins[index].longitude) {\n fIndex = index;\n } else if (direction === 0) {\n index -= 1;\n } else {\n index += 1;\n }\n } while (fIndex === -1);\n return fIndex;\n };\n\n let markerRefs = [];\n\n const MapPin = (item) => {\n const popupContent = {\n height: 'auto',\n width: '200px',\n marginTop: '20px',\n };\n\n const popupHead = {\n fontWeight: 'bold',\n fontSize: '16px',\n marginTop: '10px',\n marginBottom: '10px',\n };\n\n const popupText = {\n fontSize: '15px',\n marginBottom: '5px',\n };\n\n const link = {\n height: '45px',\n backgroundColor: '#fafafa',\n borderTop: '1px solid #f2f2f2',\n marginTop: '10px',\n textAlign: 'center',\n padding: '10px',\n };\n\n const clickZoom = (e) => {\n let latLng = e.target.getLatLng();\n mapRef.leafletElement.flyTo(latLng, 10);\n let index = 0;\n for (let pin of mapPins) {\n if (pin.latitude == latLng.lat && pin.longitude == latLng.lng) {\n setClicked(index);\n break;\n }\n index += 1;\n }\n };\n\n return (\n item.latitude &&\n item.longitude && (\n{getTranslated(searchDescription, selLang)}
\n