{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/_helpers/RestrictHelper.js","webpack:///./src/_helpers/DateHelper.js","webpack:///./src/_helpers/CsharpEnum.js","webpack:///./src/languages/locales/en.js","webpack:///./src/languages/locales/sv.js","webpack:///./src/languages/locales/da.js","webpack:///./src/languages/index.js","webpack:///./src/api/repositories/featureAccessRepository.js","webpack:///./src/_helpers/apiHelper.js","webpack:///./src/api/repositories/tagRepository.js","webpack:///./src/router.js","webpack:///./src/api/repositories/opcRepository.js","webpack:///./src/api/repositories/mqttRepository.js","webpack:///./src/components/common/Notification.vue?e0be","webpack:///./src/App.vue","webpack:///./src/components/NavBar.vue","webpack:///./src/components/common/Notification.vue","webpack:///src/components/common/Notification.vue","webpack:///./src/components/common/Notification.vue?073e","webpack:///./src/components/common/Notification.vue?e1f0","webpack:///./src/components/dashboard/DashboardTreeSelect.vue","webpack:///src/components/dashboard/DashboardTreeSelect.vue","webpack:///./src/components/dashboard/DashboardTreeSelect.vue?9cee","webpack:///./src/components/dashboard/DashboardTreeSelect.vue?0793","webpack:///./src/components/common/Search.vue","webpack:///src/components/common/Search.vue","webpack:///./src/components/common/Search.vue?8663","webpack:///./src/components/common/Search.vue?5233","webpack:///src/components/NavBar.vue","webpack:///./src/components/NavBar.vue?d62f","webpack:///./src/components/NavBar.vue?bca4","webpack:///./src/components/events/DataHub.vue","webpack:///src/components/events/DataHub.vue","webpack:///./src/components/events/DataHub.vue?8368","webpack:///./src/components/events/DataHub.vue?e11e","webpack:///./src/components/license/LicenseNotification.vue","webpack:///src/components/license/LicenseNotification.vue","webpack:///./src/components/license/LicenseNotification.vue?9df7","webpack:///./src/components/license/LicenseNotification.vue?00a4","webpack:///src/App.vue","webpack:///./src/App.vue?0daa","webpack:///./src/App.vue?315a","webpack:///./src/plugins/vuetify.js","webpack:///./src/components/common/DatePicker.vue","webpack:///src/components/common/DatePicker.vue","webpack:///./src/components/common/DatePicker.vue?9ff7","webpack:///./src/components/common/DatePicker.vue?89a0","webpack:///./src/_helpers/moduleSettingsHelper.js","webpack:///./src/_helpers/commonHelper.js","webpack:///./src/components/common/PhonenumberInput.vue","webpack:///src/components/common/PhonenumberInput.vue","webpack:///./src/components/common/PhonenumberInput.vue?0baf","webpack:///./src/components/common/PhonenumberInput.vue?a203","webpack:///./src/_helpers/mapsHelper.js","webpack:///./src/_helpers/themeMixin.js","webpack:///./src/main.js","webpack:///./src/api/repositories/dashboardRepository.js","webpack:///./src/components/events/DataHub.vue?dff3","webpack:///./src/_helpers/DecoderHelper.js","webpack:///./src/App.vue?7a41","webpack:///./src/api/repositories/usersRepository.js","webpack:///./src/api/repositories/companyRepository.js","webpack:///./src/api/repositories/applicationRepository.js","webpack:///./src/api/repositories/alarmRepository.js","webpack:///./src/api/repositories/scriptRepository.js","webpack:///./src/api/repositories/reportRepository.js","webpack:///./src/api/repositories/moduleRepository.js","webpack:///./src/api/repositories/logRepository.js","webpack:///./src/api/repositories/notificationRepository.js","webpack:///./src/api/repositories/signalTestRepository.js","webpack:///./src/api/repositories/gatewayRepository.js","webpack:///./src/api/repositories/downlinkRepository.js","webpack:///./src/api/repositories/roleRepository.js","webpack:///./src/api/RepositoryFactory.js","webpack:///./src/stores/modules/accessToken.js","webpack:///./src/stores/modules/alarm.js","webpack:///./src/stores/modules/alert.js","webpack:///./src/stores/modules/application.js","webpack:///./src/api/repositories/camOnlineRepository.js","webpack:///./src/stores/modules/camOnline.js","webpack:///./src/stores/modules/company.js","webpack:///./src/api/repositories/settingRepository.js","webpack:///./src/stores/modules/configuration.js","webpack:///./src/stores/modules/dashboard.js","webpack:///./src/stores/modules/downlinks.js","webpack:///./src/stores/modules/event.js","webpack:///./src/stores/modules/featureAccess.js","webpack:///./src/stores/modules/gateway.js","webpack:///./src/stores/modules/language.js","webpack:///./src/stores/modules/log.js","webpack:///./src/stores/modules/modbus.js","webpack:///./src/stores/modules/modules.js","webpack:///./src/stores/modules/mqtt.js","webpack:///./src/stores/modules/notification.js","webpack:///./src/stores/modules/opc.js","webpack:///./src/stores/modules/report.js","webpack:///./src/stores/modules/roles.js","webpack:///./src/stores/modules/scripts.js","webpack:///./src/stores/modules/settings.js","webpack:///./src/stores/modules/signalTest.js","webpack:///./src/stores/modules/slots.js","webpack:///./src/stores/modules/tag.js","webpack:///./src/stores/modules/tagdata.js","webpack:///./src/api/repositories/templateDashboard.js","webpack:///./src/stores/modules/templateDashboard.js","webpack:///./src/stores/modules/user.js","webpack:///./src/stores/store.js","webpack:///./src/api/repositories/licenseRepository.js","webpack:///./src/api/repositories/tagDataRepository.js","webpack:///./src/_helpers/metricHelper.js","webpack:///./src/api/repositories/integrationsRepository.js","webpack:///./src/components/dashboard/DashboardCategoryViewer.vue","webpack:///./src/components/common/IconSelector.vue","webpack:///src/components/common/IconSelector.vue","webpack:///./src/components/common/IconSelector.vue?669a","webpack:///./src/components/common/IconSelector.vue?b02f","webpack:///src/components/dashboard/DashboardCategoryViewer.vue","webpack:///./src/components/dashboard/DashboardCategoryViewer.vue?0cf1","webpack:///./src/components/dashboard/DashboardCategoryViewer.vue?0cdc","webpack:///./src/components/common/Search.vue?edd9","webpack:///./src/_helpers/Role.js","webpack:///./src/plugins/i18n.js","webpack:///./src/api/Repository.js","webpack:///./src/components/NavBar.vue?947e","webpack:///./src/components/dashboard/DashboardCategoryViewer.vue?59d5","webpack:///./src/components/NavBar.vue?1c69","webpack:///./src/api/repositories/modbusRepository.js","webpack:///./src/components/common/IconSelector.vue?9ee0"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","installedCssChunks","jsonpScriptSrc","p","exports","module","l","e","promises","cssChunks","Promise","resolve","reject","href","fullhref","existingLinkTags","document","getElementsByTagName","tag","dataHref","getAttribute","rel","existingStyleTags","linkTag","createElement","type","onload","onerror","event","request","target","src","err","Error","code","parentNode","removeChild","head","appendChild","then","installedChunkData","promise","onScriptComplete","script","charset","timeout","nc","setAttribute","error","clearTimeout","chunk","errorType","realSrc","message","name","undefined","setTimeout","all","m","c","d","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","oe","console","jsonpArray","window","oldJsonpFunction","slice","FEATURES","MAP_DASHBOARD","CAM_ONLINE","LICENSE_FEATURES","whiteLabelSettings","methods","_objectSpread","mapActions","isSuperAdmin","this","permitted","canMask","allowed","route","roles","arguments","role","store","state","users","currentUser","charAt","substring","routeArr","split","router","options","routes","forEach","path","children","meta","authorize","includes","owns","oid","cmpId","getters","permission","prefix","fullPermission","filter","resourceIdentifier","canAccessFeature","feature","find","license","toLowerCase","allowedToEdit","targetRole","Roles","Admin","SuperAdmin","CompanyAdmin","limitedToWhiteLabel","WHITE_LABEL","whiteLabelActive","computed","mapState","whiteLabel","humanDate","date","formatString","format","Date","timeFromDays","days","timeFromHours","hours","timeFromMinutes","minutes","timeWithinMinutes","date1","date2","timeWithinHours","timeWithinDays","distanceAgo","i18n","locale","sv","formatDistance","toApiDate","encode","dt","encodeURIComponent","DaysOfWeek","sunday","monday","tuesday","wednesday","thursday","friday","saturday","Priority","A","B","C","LimitType","LOW","HIGH","ContactType","SMS","EMAIL","BOTH","ModuleType","CHART","GAUGE","TEXT","IMAGE","MAP","COMPANYINFO","IFRAME","WEATHER","SINGLE","RAWTABLE","MULTICHART","IMAGEMAP","FUNCTIONBUTTON","INFOCARD","TRENDCHART","SENSOROVERVIEW","TILTCHART","FILLINDICATOR","CONTROLSLIDERS","CAMONLINE","LogType","label","color","colors","blue","accent1","green","accent3","yellow","red","CompanySettingFieldType","STRING","NUMBER","DATE","SELECT","CHECKBOX","PASSWORD","FunctionTypes","SCRIPT","VALUEINPUT","DASHBOARD","DOWNLINK","ONOFFSWITCH","ConditionTypes","SENSORVALUE","text","icon","EMPTY","DashboardTypes","DEFAULT","home","login","register","registerCompany","logout","company","dashboard","application","alarm","user","tagdata","report","contact","apiRef","shop","manual","userEdit","settings","signalTest","gateway","news","superadmin","widget","weather","pickTitle","form","step1","step2","step3","opc","title","server","autocomplete","fields","opcServerId","serverUrl","useUsernameAndPassword","updatedAt","createdAt","node","serverId","nodeId","hints","modbus","master","modbusMasterId","host","port","poll","polledValue","modbusRegisterId","slave","pollInterval","registerType","valueType","action","byteOrder","valueTypes","0","1","2","3","4","5","6","types","byteOrders","validation","required","slaveMinVal","slaveMaxVal","registerMaxVal","registerMinVal","pollIntervalMin","registerAllreadyReadFrom","spotIo","spotIoKeyRequired","spotIoKeyUnique","templateDashboard","deleteError","deleteSuccess","saveDashboard","defaults","dashboardType","addSlot","numberOfAvailableSlots","dashboardTypeTitle","slots","slot","addHint","resetSlots","slotIndex","priorityTitle","priorityDescription","colorPicker","colorForExpressionLabel","so_style_meta_title_text","so_style_meta_title_background","so_style_meta_content_title","so_style_meta_content_background","so_style_meta_fill_level_color","so_style_meta_color_for_expression","so_style_meta_action_for_content","iconColor","backgroundColor","camOnline","servers","couldNotFetchServers","couldNotCreateServer","couldNotDeleteServer","serverSelect","streamSelect","createDialogTitle","tabTitle","url","accessToken","isGlobal","toolbarTitle","permissionCounts","missingRecommendedTitle","missingRecommendedButton","pickPermissionsTitle","pickPermissionsDesc","layerTypes","permissionCount","isDefault","isSuper","eventhub","waiting","copySuccess","copyError","events","endpoint","downlinks","editorTitle","conditionTree","selectValueTypeTitle","selectType","selectValue","chooseSensor","textInputPlaceholder","numberInputPlaceholder","ops","greater","less","equal","greaterOrEqual","lessOrEqual","notEqual","newToken","cardNewTitle","cardTitle","id","token","isCompany","cannotGetNews","toolbar","bestGw","pickLocationButton","macAddress","latitude","longitude","startTest","endTest","peekTest","createToolbar","rawData","updateTimer","testId","description","active","avgSnr","avgRssi","rssi","snr","lat","lng","tab","map","trend","res","week","day","hour","five","notifications","clearNotifications","noNotifications","landing","slogan","or","usecases","12","help","sensors","api","siencepark","address","postal","country","phoneTitle","phonenumber","phonenumber2","emailTitle","email","imageMap","chooseTag","log","sms","app","warning","userevent","logTable","activeAlarms","activeUsersTable","status","lastAction","lastSeen","messageSent","common","yes","no","on","off","timestamp","lang","edit","delete","reset","purge","submit","update","run","link","height","width","new","newValue","nothingToSee","next","editLabel","explanation","clear","never","previousStep","mintues","search","close","cancel","success","password","confirmPassword","newPassword","forgotPassword","save","show","updated","created","deleted","back","send","refresh","preview","previewSpacing","saveColor","alarmColorPrecedence","add","noTagOrAppChoosen","noDataFound","darkTheme","notActive","sent","notSent","loginOrRegister","copy","verify","verifyDelete","disagree","accept","switchCompany","inactiveSensors","activeSensors","sensorStatus","sensorName","updatesPending","pickLocationConfirm","toFewBytes","byteInputRequired","getMorePages","size","test","searchType","TAG","ALARM","APPLICATION","GATEWAY","dateLabel","timeLabel","time","quarterHour","minute","dateRange","staticinformation","datapoints","datapointsLastWeek","weekday","errors","getDecoders","backendConnection","actions","createCategory","editCategory","remove","createDashboard","copyDashboard","iconSelector","selectIcon","searchPlaceholder","userSettings","themes","toolbarTransparancy","stickySideMenu","global","branding","powered_by","SMS_PROVIDER","SMS_IP1_FROM","SMS_IP1_USERNAME","SMS_IP1_PASSWORD","SMS_TWILIO_ACCOUNTSID","SMS_TWILIO_ACCESSTOKEN","SMS_TWILIO_NUMBER","companysetting","field","smsprovider","alarmTitle","inactivityAlarmContact","hint","ip1","username","from","twilio","number","accountSid","setPosFormTitle","useNodePosition","dateTimeSpanSelection","dateFrom","dateTo","clearPositions","stepPositions","select","iconStyling","selectDashboard","createTitleClean","copyDeleteTitle","createTitle","chooseTitle","changeTitle","navigationTitle","nameReq","categories","tooltip","public","createNew","copiedSuccessful","copiedUnsuccessful","URL","expiresAt","expired","copyAction","dashboardName","noData","metas","colorFormTitle","chart","line","area","bar","scatter","vertical","mapMarkers","sensor","opacity","paletteToModuleMode","paletteToCardMode","valueMatch","styles","textcolor","background","titleBackground","single","sparkline","sparklineLabel","cardBackground","titleText","valueBackground","valueText","fontStyleTypes","content","keys","so_own_axis","value_match","sufix","deveui","maxheight","scriptid","tagkey","tagkey_x","tagkey_y","tagkey_x_max","tagkey_y_max","forceColors","decimal_rounding","dashboard_id","sync_y","zoom_slider","digital","alarm_id","so_chart_type","so_ignore_body","min_value","max_value","axis_label","default_timespan","font_size","hide_trend_icon","horizontel_single_title","so_hide_node_info","font_style_large","so_single_sparkline","gauge_180","button_label","button_label_on","button_label_off","hide_title","so_slots_count","font_style_title","font_style_content","chart_type","ignoreBody","so_font_style_title","so_font_style_content","weight","desc","sm","md","min","max","image","sync_chart","enum","xs","lg","7","8","9","10","11","13","14","15","16","17","18","19","functionButtonTypes","input","navigation","downlink","onoffSwitch","temp","windDir","windSpeed","humidity","thunder","precipitation","descriptionTitle","phoneOne","phoneTwo","locationSiencepark","locationStreet","locationPostalcode","locationCountry","orgNumber","companyInfo","addUser","invite","inviteSent","inviteFailed","shareApp","postalAdress","deliveryAdress","contactPhonenumber","invoiceAdress","refrenceNmuber","nameRequired","nameMax","orgNumberRequired","orgNumberFormatError","emailRequired","emailFormatError","passwordMissmatch","refrenceDateDesc","exportDownload","export","downloadFailed","tempo","refrenceDate","reportContacts","lastSent","regular","tagsTitle","placeHolderContent","examples","helpTitle","interval","lastRun","enabled","boundTag","intervalRequired","intervalMinValue","userInfo","loginFailed","signInFailed","signInError","loginSuccessful","updateFailed","firstName","lastName","phoneNumber","passwordConfirm","phoneNumerHint","noCompanyError","applicationCreated","choose","owner","affirmation","history","activeAlarm","priority","a","b","alarmDelay","tagDataKey","limitHigh","limitLow","contactType","alarmContacts","activeDays","limit","triggered","signalType","digitalTrigger","triggerHigh","triggerLow","advanced","batteryStatus","levels","amount","notation","latestactivity","latestvalue","defaultKey","chooseDecoder","decoder","details","removeImage","chooseKey","saveKeyAsDefault","newKey","generateId","uploadExplanation","uploadExplanationHint","exampleLink","publishing","mqtt","sparkplug","tabs","createSteps","step4","step5","finish","spotIo4","modbus4","picker","tagPool","hide","hiddenTags","take","appKey","appEui","applicationId","profile","long","latAndLng","battery","activeData","latestValue","location","dataPoints","nodeType","nodeTypes","usedGateways","usedNodes","editMaxTitle","companySettings","licenseManagement","publicKey","upload","uploadHint","licensee","coveredFeatures","maxCompanies","maxGateways","maxNodes","decoderIncluded","licenseId","expires","limitations","companyId","companyName","currentNodes","currentGateways","expiresIn","couldNotSetLimits","tos","checkbox","requiredSingle","toLong","contryCodeError","deveuiConflict","settingsTabTitle","brokerListTitle","updateTitle","selectBroker","testBroker","topicCreateTitle","topicDescription","topicAdd","topicAlreadyExists","createTopicTitle","use","edgeId","groupId","useNameForPublish","topic","publishTopic","publishTopicHint","parsingTopic","payloadTest","testTopic","sslmodes","versions","notfound","hostname","version","sslmode","CACertificate","ClientCertificate","ClientKey","KeyPassPhrase","useAuth","metrics","messages","total","publish","valueForm","actionType","actionTypes","colorBackground","colorBorder","colorText","op","eq","notEq","greaterOrEq","lessOrEq","iconFormTitle","anchorx","anchory","fontSelectorTitle","nodeSelection","valueFormPanel","border","nextStep","welcome","displayHistory","addSlider","tagDeveui","titel","en","da","resource","debug","getAllFeatures","featureAccessId","companies","Repository","concat","apiConfig","toggleFeature","put","getCompanyFeatures","getAuthHeader","Authorization","headers","HttpStatus","ok","accepted","no_content","bad_request","unauthorized","forbidden","not_found","conflict","checkForConflict","response","Deveui","decoderResource","config","payload","post","tagId","getById","getByCompanyId","getKeys","getAllKeys","getTagWithMetaAndKeys","deveuiAndKeys","uploadImage","deleteImage","setDefaultKey","getTagPool","updateTagPoolStatus","addTagKey","updateTagKey","deleteTagKey","getKeyLabel","setData","getDetails","getTagWithInformation","updateSparkplugMeta","getPositions","to","DateHelper","removePublishing","publishingType","Home","CommonParent","CleanDashboard","AdminDashboard","Company","CompanyUsers","CompanyEdit","CompanyCreate","CreateUser","CompanyApps","UserCompanyRegister","EditUser","ForgotPassword","ForgotPasswordComponent","NewPassword","Application","ApplicationCreate","ApplicationEdit","Tag","TagList","TagCreate","TagPool","TagDetail","Alarm","AlarmCreate","AlarmEdit","AlarmList","ActiveAlarms","Login","Register","Logout","ScriptView","ScriptList","ScriptCreate","ScriptEdit","Report","ReportList","ReportCreate","ReportEdit","DashboardModule","DashboardPublic","Contact","News","SettingView","Settings","SingalTest","PeekSignalTest","GatewayView","GatewayList","GatewayCreate","RoleContainer","RoleList","RoleCreate","RoleEdit","BaseView","TemplateDashboard","TemplateDashboardForm","DbMapCreateDashboard","Vue","Router","component","CompanyOrUser","permit","duplicateNavigationPolicy","beforeEach","languages","language","dispatch","navigator","root","restrictHelper","getServers","createServer","serverDto","getServersById","updateServer","deleteServer","getNodesByServerId","getNodesByDeveui","createNode","nodeDto","updateNode","deleteNode","addNodeMonitoring","getBrokers","getBrokersWithMetrics","getBroker","brokerId","createBroker","updateBroker","deleteBroker","getMqttMeta","mqttMetaId","createMqttMeta","updateMqttMeta","deleteTopic","topicId","testDecode","_store$state","catch","_d$response$data","_d$response","staticStyle","$router","currentRoute","class","sientificLight","sientificDark","backgdark","darkmode","theme","_c","alertType","model","_vm","callback","expression","attrs","staticRenderFns","render","darkSientific","lightSientific","lightDrawer","darkDrawer","primary","drawer","sensorShopLink","staticClass","_v","_s","$t","$$v","notificationTray","_arguments","_this","_asyncToGenerator","_regeneratorRuntime","mark","_callee","wrap","_context","prev","deactivateAllNotifications","abrupt","deactivateNotification","stop","_this2","_callee2","_context2","getNotifications","setInterval","beforeDestroy","clearInterval","watch","val","fn","_ref","dialog","components","DashboardCategoryViewer","showResults","items","style","typeColor","getRoute","_e","hub","searchTerm","debounceTimer","loading","newResult","values","connectionState","HubConnectionState","Connected","invoke","blur","item","identifier","navigate","duplicateNav","preventDefault","userCompany","setUserCompany","checkDuplicateNavigation","go","$route","connect","_this3","SO_API_BASE_URL","HubConnectionBuilder","withUrl","skipNegotiation","transport","HttpTransportType","WebSockets","accessTokenFactory","configureLogging","LogLevel","Warning","withAutomaticReconnect","build","start","_this4","_callee3","_context3","unmounted","props","sync","$vuetify","dark","showManualLink","process","showShopLink","temporaryNavBar","appBarColor","setDarkmode","getBaseUrl","ci","storeCompany","isInsideDashboard","loggedIn","viewableLinks","links","authLinks","permitBackend","guestLinks","apiLink","apiUrl","externalRoute","manualLink","getLicenseTerms","getAll","v","Notification","DashboardTreeSelect","Search","searchTags","scopedSlots","filterNodes","domProps","containerWidth","updateInterval","filteredEvents","deveuis","names","tags","nameWithDeveui","addToEvent","openWindow","addEvent","unshift","pop","syntaxHighlight","json","replace","match","cls","index","findIndex","getTags","$forceUpdate","isInValidPath","canCreateGateway","canCreateNode","canCreateCompany","showLicenseExpiery","getCanCreateBools","setLicenseNotification","NavBar","DataHub","LicenseNotification","beforeMount","favi","getGlobalSettings","getUserSettings","globalSettings","getElementById","origin","clearAlert","Vuetify","opts","iconfont","light","accent","info","grey","lighten5","altBg","lighten3","darken3","secondary","darken1","lightBlue","accent4","ranges","displayName","default","isPresetValue","end","setRanges","range","changeRange","newRanges","setHours","setMinutes","$emit","storeTimeOffset","dashboardModuleId","timeOffset","addModuleSetting","getModuleSettingsTimeOffset","moduleSettings","reg","_self","validate","String","phoneNumberValid","countryCallingCode","phoneNumberRules","phoneValidation","isValid","getAddress","latLng","geocoder","mixinGoogleMaps","maps","Geocoder","geocode","results","formatted_address","reverseGeoCode","gmapApi","soTheme","currentTheme","isDark","defaultTextColor","addDays","zeroTime","valueOf","setDate","getDate","addHours","h","setTime","getTime","zeroTimeFromMinutes","$todo","CanvasRenderer","BarChart","LineChart","GaugeChart","PieChart","GridComponent","TooltipComponent","TitleComponent","LegendComponent","DataZoomComponent","MarkLineComponent","ScatterChart","PolarComponent","ECharts","PhonenumberInput","VueFriendlyIframe","DatePicker","mixin","ModuleSettingHelper","RestrictHelper","GoogleMapsHelper","CommonHelper","themeMixin","productionTip","Particles","VueScrollTo","container","duration","easing","offset","force","cancelable","onStart","onDone","onCancel","x","y","VueGoogleMaps","load","plugins","installComponents","VCalendar","componentPrefix","vuetify","App","$mount","companyResource","getDashboards","getDashboard","dashboardId","duplicate","createForCompany","setDefault","getDefault","createPublicDashboard","getPublicDashboards","getPublicDashboard","publicDashboardId","deletePublicDashboard","getDashboardCategories","createDashboardCategories","updateDashboardCategories","categoryId","updateDashboardIndexes","removeDashboardIndexes","removeDashboardMarker","markerId","createOrUpdateMarker","decoders","userId","getCompany","updateRole","targetUserId","createUserWithCompany","forgotPasswordUpdate","guid","getCompanyById","getCompanyUsers","getCompanyApplications","getCompanyTagData","header","getTagDataWithMetrics","getTagDataDefaults","getTagDataPoints","createUser","userPayload","postImage","latestActivity","getBatteryStatuses","getLatestTagData","getDatapointsLastWeek","getDatapointsLastDay","getSensorDatapointsLastDay","getTagsWithInformation","getShared","applicationPayload","alarmId","alarmPayload","getActiveAlarms","getAlarmHistory","setActiveAlarmStatus","activeAlarmId","testSettings","getScripts","getScript","scriptId","execute","getReport","reportId","getReports","multiExport","responseType","moduleResource","getModule","updateModules","getTagDataForModule","getTagDataForModuleByLimit","getLatestTagDataForModule","copyModule","getActiveUsers","getDatapoints","deactivate","notificationId","deactivateAll","getTests","peek","getTest","deleteTest","gatewayPayload","gatewayId","getByCompany","updatePosition","position","getForTag","removeDownlink","downlinkQueueId","createDownlink","getAllByCompany","getPermissions","getRecommendedPermissions","getUserPermissionsByUserId","userRoleId","repositories","UsersRepository","CompanyRepository","applications","AppsRepository","TagDataRepository","TagRepository","AlarmRepository","ScriptRepository","ReportRepository","DashboardRepository","ModuleRepository","LogRepository","notification","NotificationRepository","SignalTestRepository","LicenseRepository","gateways","GatewayRepository","integrations","IntegrationsRepository","DownlinkRepository","RoleRepository","RepositoryFactory","IntegrationRepository","accessTokens","namespaced","getAccessTokens","rootState","deleteAccessToken","_ref2","tokenId","deleteToken","createToken","_ref3","mutations","alarms","currentAlarm","settingResponse","commit","getAlarms","createAlarm","_ref4","credentials","updateAlarm","_ref5","_ref6","_callee4","_context4","setCurrentAlarm","_ref7","_callee5","_context5","getAlarmById","_ref8","_callee6","_context6","_ref9","_callee7","_context7","_ref10","_callee8","_context8","setAlarmStatus","_ref11","_callee9","_context9","resetState","_ref12","removeAlarm","_ref13","_callee10","_context10","duplicateAlarm","_ref14","_callee11","_context11","clearTestResponse","_ref15","LOADING","SET_CURRENT","GET_ALARM","GET_ACTIVE_ALARM","CREATE_ALARM","SET_SETTING_RESPONSE","RESET_STATE","alert","AppRepository","currentApplication","tagData","createApplication","deleteApplication","getApplication","setApplication","CREATE_APPLICATION","DELETE_APPLICATION","GET_TAG_DATA","SET_APPLICATION","camOnlineServerId","CORepository","getStreams","axios","t0","SET_SERVERS","getServer","shared","companyUsers","companyApps","editCompany","createCompany","getLatestActivity","activity","_ref16","statuses","_ref17","_callee12","_context12","SET_LATEST_ACTIVITY","GET_COMPANIES","GET_COMPANY_APPLICATION","GET_COMPANY_USERS","GET_SHARED","CREATE_COMPANY","EDIT_COMPANY","getSharedName","rootGetters","set","getGlobal","setGlobal","getCompanyFields","setCompany","configuration","toolbarTransparent","companyFields","serverMeta","nodesLeftForCompany","lastShownExpiery","showLicenseNotification","getNodesLeftForCompany","getServerMeta","licenseRepository","getLicenseServerMeta","envConfig","envJson","fetch","VUE_APP_SO_API_BASE_URL","getTerms","SettingRepository","setUserSettings","setGlobalSettings","setCompanySettings","getCompanySettings","setCompanySettingLocal","canCreate","SET_CAN_CREATE","_data$canCreateCompan","_data$canCreateGatewa","_data$canCreateNode","_data$expiresIn","SET_SERVER_META","SET_DARKMODE","SET_BASE_URL","SET_USER_SETTINGS","SET_LICENSE","SET_GLOBAL_SETTINGS","SET_COMPANY","SET_COMPANY_FIELDS","SET_COMPANY_SETTING","keyValue","SHOW_LICENSE_NOTIFICATION","SET_NODES_LEFT_COMPANY","dashboards","currentDashboard","defaultDashboard","publicDashboard","publicDashboards","hasDefault","setDashboard","_ref8$dashboardType","_ref18","_ref19","_callee13","_context13","_ref20","_callee14","_context14","_ref21","_callee15","_context15","_ref22","_ref23","_callee16","_context16","updateDashboardCategoryIndexes","_ref24","_callee17","_context17","removeDashboardCategory","_ref25","_callee18","_context18","SET_DASHBOARD_CATEGORIES","SET_PUBLIC_DASHBOARD","SET_PUBLIC_DASHBOARDS","SET_DEFAULT","entries","SET_DASHBOARDS","SET_DASHBOARD","GET_DOWNLINKS","SET_EVENT","lastEvent","featureAccess","companyFeatures","features","FeatureAccessRepository","SET_FEATURES","SET_COMPANY_FEATURES","Gateway","currentGateway","createGateway","deleteGateway","getGateway","getGateways","CREATE_GATEWAY","SET_GATEWAY","SET_GATEWAYS","VueLocalStorage","supportedLanguages","getOwnPropertyNames","Languages","localStorage","SET_LANGUAGE","setLanguage","sl","RegExp","logs","staticLogs","activeUsers","lastRequestLogs","clearLog","MetricHelper","getMetricsUrlParams","points","GET_DATAPOINTS","GET_ALARMS","GET_STATIC_LOGS","GET_LOGS","reverse","len","GET_ACTIVEUSERS","CLEAR_LOG","masters","getMasters","ModbusRepository","SET_MASTERS","getMasterNameById","_state$masters$find$n","_state$masters$find","currentModule","getModules","mod","setModules","CsharpEnum","updateIndex","ADD_MODULE","SET_MODULES","brokers","brokersWithMetrics","mqttMeta","MqttRepository","SET_BROKERS","SET_BROKERS_WITH_METRICS","GET_NOTIFICATIONS","nodes","OpcRepository","SET_NODES","getServerUrlById","reports","currentReport","saveAs","Blob","GET_REPORTS","GET_CURRENT","recommended","permissions","getRolesByCompany","getRoleById","createRole","ids","setRole","SET_ROLE","SET_ROLES","SET_RECOMMENDED","SET_PERMISSIONS","defaultsWithPermissions","permittedRoles","scripts","currentScript","validScript","valid","msg","setCurrentScript","resetValidScript","GET_SCRIPTS","SET_VALIDSCRIPT","googleMapsZoom","googleMapsLatLng","googleMapsViewType","imageMapZoom","setGoogleMapsZoom","level","setLatnLng","latnlng","setMapType","viewType","setImageMapZoom","ADD_MODULE_SETTING","SET_GOOGLEMAPS_ZOOM","SET_LAT_LNG","latnLng","SET_VIEW_TYPE","SET_IMAGE_MAP_ZOOM","Repo","signalTests","currentTest","testData","SET_TEST","SET_TEST_DATAS","datas","SET_TESTS","tests","slotId","ADD_SLOT","_state$slots","_step","_iterator","_createForOfIteratorHelper","done","f","crypto","randomUUID","ADD_KEY_TO_SLOT","slotIdx","RESET_SLOTS","getSlot","getSlotNameById","getSlotName","currentTag","currentLabel","tagsWithInformation","tagsWithKeys","tagsWithMeta","batteryStatuses","tagsInPool","detail","apiErrors","getTagAsync","createTag","ApiHelper","updateTag","_ref8$fetch","disptach","deleteTag","setTag","getKeysForTag","getKeysForTagAsync","getTagWithKeys","uploadTagImage","_ref26","_ref27","_ref28","_ref29","_ref30","_ref31","_callee19","_context19","_ref32","_ref33","_callee20","_context20","_ref34","_ref35","_callee21","_context21","_ref36","_callee22","_context22","_ref37","_callee23","_context23","setBatteryStatuses","_ref38","_ref39","_callee24","_context24","companyRepository","getLatestForCompany","_ref40","_callee25","_context25","vdd","latestTime","_ref41","_callee26","_context26","DecoderHelper","setTagData","_ref42","_ref43","_callee27","_context27","SET_KEYS","SET_TAGPOOL","SET_BATTERY_STATUSES","GET_TAGS","CREATED_TAG","DELETED_TAG","SET_TAG","SET_LABEL","SET_TAG_WITH_KEY","SET_TAG_WITH_META","SET_ERRORS","CLEAR_ERRORS","SET_DECODERS","SET_TAGS_WITH_INFORMATION","SET_DETAIL","currentTagData","currents","tagsWithData","tdKeys","tagDataCount","hasDefaults","dataLoading","getTagData","getTagDataKeys","getTagDataAsync","tagDatas","getTagDataWithMultiTag","getTagDataWithMultiTagAsync","td","resetDefaults","setTagDataDefaults","getTagdataDatapoints","toISOString","count","setTagDataKeys","clearTagData","getTrendDataForTag","tagKey","getCurrentTagdata","getCurrentsForTag","getCurrentsForDevice","SET_META","TAGLOADING","SET_TAG_DATA","SET_CURRENT_TAGDATA","SET_CURRENTS","_toConsumableArray","Set","GET_TAG_DATA_MULTI","GET_TAG_DATA_KEYS","GET_DEFAULTS","SET_DEFAULTS","GET_TOTAL_DP","dp","RESET_DEFAULTS","CLEAR_TAGDATA","templateDashboardId","getWidgets","updateWidgets","removeWidget","widgetId","getTemplateDashboards","widgets","saveDashboardToState","removeWidgetFromState","getTemplateDashboard","TemplateDashboardRepository","commitToStore","getDashboardWidgets","setWidgets","addOrUpdateWidget","createTemplateDashboard","_","updateTemplateDashboard","saveTemplateDashboardWidgets","tId","deleteTemplateDashboard","REMOVE_WIDGET","idx","templateWidgetId","w","RESET_DASHBOARD","SET_TEMPLATE_DASHBOARDS","SET_WIDGETS","ADD_OR_UPDATE_WIDGET","_state$widgets","widgetIdx","_step2","_iterator2","_state$dashboard$temp","_state$dashboard","UserRepository","hasCompany","getUserCompany","setUserByPublicDashboard","editUser","_x","getUserPermissionsByCurrentUser","createUserAndCompany","GET_USER","GET_USERS","GET_USER_COMPANY","SET_CREDENTIALS","EDIT_USER","LOGIN_USER","LOGIN_FAILED","LOGOUT_USER","_state$currentUser$to","_state$currentUser","Vuex","Store","createPersistedState","getLicenses","uploadLicense","activate","removeLicense","getCompanyLimitations","createOrUpdateCompanyLimitation","getUserAcceptedTos","acceptTos","tagDataResource","getCurrentForTags","tagIds","queries","metricHelper","getCurrentsMultiKey","tagKeys","getTimeSeriesTagData","getTimeSeriesTagDataSingle","getCurrentsMultiTagAndKey","deveuisAndKeys","getTagdataWithLimit","params","k","Array","isArray","join","tokenResource","seedNordpool","year","month","goToDashboard","isLeaf","editMode","showMenu","displayActions","$event","handleCreate","showCreateDialog","showRemoveDialog","click","showDashboardCreateOrCopy","setValue","open","iconValue","display","page","avaliableIcons","icons","toggleDisplay","isDashboard","typeSelected","currentNode","createAction","editAction","createDashboardAction","copyDashboardAction","removeAction","storeCategories","element","shouldDisplay","displayArr","navigateToDbMapCreate","dashboardCategoryId","updateIndexes","parentGuid","getCategoryItems","handleDashboardCopyOrCreate","_this5","deleteConfirmed","_this6","onNodeRightClicked","tree","$refs","_this7","updateDraggable","isDraggable","isSelectable","_this8","SlVueTree","IconSelector","hex","User","Guest","PublicDashboard","AdminOrUser","AdminOrCompanyAdmin","VueI18n","fallbackLocale","axiosConnection","interceptors","baseURL","getOccupiedRegisters","masterId","createMaster","updateMaster","removeMaster","createRegister","removeRegister","registerId","registers","getAllRegisters"],"mappings":"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B,c,OAAM,UAAC0P,IAAG,E,MAAC,C,MAAgCgoB,EAAI26B,OAAY,IAAI36B,MAAOA,SAAY,GAAM,OAAKmD,EAAK,SAAG,MAIl6B,GAAS9C,GAAM,EAAED,a,oBCyBF,G,oBAAA,CACf7hC,KAAA,eACAsnC,MAAA,CACA/7B,KAAA,CAAAyhC,QAAA,qBACAqvB,KAAA,CAAArvB,SAAA,GACAjjC,MAAA,CAAAijC,QAAA,WAEAnyC,KAAA,WACA,OACAiqC,WAAA,GACAw3B,UAAA,YACAC,SAAA,EACAC,KAAA,EACAC,eAAA,CACA,yBACA,2BACA,mBACA,kBACA,mBACA,oBACA,qBACA,wCACA,gCACA,cACA,cACA,sBACA,sBACA,kBACA,qBACA,kBACA,YACA,8BACA,4BACA,6BACA,4BACA,4BACA,yBACA,oBACA,uBACA,cACA,wBACA,yBACA,kBACA,4BACA,6BACA,qBACA,6BACA,uBACA,uBACA,6BACA,uBACA,8BACA,wBACA,2BACA,qBACA,0BACA,qBACA,oBACA,sBACA,eACA,oCACA,4BACA,YACA,oBACA,aACA,wBACA,gBACA,gBACA,WACA,iBACA,sBACA,cACA,sBACA,kBACA,0BACA,6BACA,yBACA,2BACA,2BACA,2BACA,oBACA,mBACA,6BACA,qCACA,6BACA,qBACA,qBACA,qBACA,kBACA,8BACA,wBACA,4BACA,4BACA,4BACA,sBACA,sBACA,oBACA,oBACA,oBACA,oBACA,0BACA,0BACA,0BACA,0BACA,0BACA,0BACA,0BACA,oBACA,oBACA,oBACA,oBACA,oBACA,oBACA,uBAKAh3D,SAAA,CACAi3D,MAAA,eAAA75B,EAAA,KACA,eAAAiC,YAAA,WAAAA,WACA,KAAA23B,eAAAh4D,QAAA,SAAAxH,GAAA,OAAAA,EAAAgH,SAAA4+B,EAAAiC,eACA,KAAA23B,iBAIAp6D,QAAA,CACA+5D,SAAA,SAAApzB,GACA,KAAAszB,UAAAtzB,EACA,KAAAyE,MAAA,SAAAzE,IAGA2zB,cAAA,WACA,KAAAJ,SAAA,KAAAA,UAIAv4B,MAAA,CACAz4B,KAAA,SAAAy9B,GA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","file":"js/app.eccc6f32.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded CSS chunks\n \tvar installedCssChunks = {\n \t\t\"app\": 0\n \t}\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"app\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// script path function\n \tfunction jsonpScriptSrc(chunkId) {\n \t\treturn __webpack_require__.p + \"js/\" + ({}[chunkId]||chunkId) + \".\" + {\"chunk-077ad2c6\":\"87718813\",\"chunk-2d0d9f9f\":\"5cab9240\",\"chunk-614d23b5\":\"d441ad6c\",\"chunk-0f5abfe9\":\"2a92852e\",\"chunk-179798b4\":\"183a5d6f\",\"chunk-1a6c1e29\":\"979b8484\",\"chunk-1c5d8a24\":\"344e84e3\",\"chunk-1f1da650\":\"c78f7734\",\"chunk-20c90825\":\"d3de6af7\",\"chunk-292f98e6\":\"ace948eb\",\"chunk-2b552467\":\"35ddae02\",\"chunk-2d0aaf55\":\"f9d46863\",\"chunk-2d0cc068\":\"88b18bce\",\"chunk-2d0ceb52\":\"23efc5e7\",\"chunk-2d0d6d35\":\"91f08dbb\",\"chunk-2d20813a\":\"a5eb69d2\",\"chunk-2d215fa4\":\"e47efaa7\",\"chunk-2d216988\":\"a125d44d\",\"chunk-2d225be7\":\"1c85fe56\",\"chunk-2d22c101\":\"432d854b\",\"chunk-2d2383db\":\"72a6feb4\",\"chunk-2fffb6bf\":\"6f94e5ea\",\"chunk-339156c9\":\"d9c3627d\",\"chunk-355d8890\":\"2773f737\",\"chunk-360401a8\":\"e625fce2\",\"chunk-3e50b9dc\":\"2165f290\",\"chunk-48696312\":\"08b6477a\",\"chunk-d7fe899a\":\"f24b33e1\",\"chunk-4f91ce06\":\"736a62b0\",\"chunk-5bdb9c32\":\"1b9d79e0\",\"chunk-70caee82\":\"554cfca2\",\"chunk-07644a0d\":\"ffdce827\",\"chunk-284375f3\":\"a088ceb3\",\"chunk-6539fca4\":\"9d014a06\",\"chunk-1c09777f\":\"a5109dee\",\"chunk-ee1b446c\":\"f92005d5\",\"chunk-92e514bc\":\"fd04ea2c\",\"chunk-aa9929b2\":\"3bf9d234\",\"chunk-36706b0a\":\"336d00f8\",\"chunk-b3b76880\":\"bd19a2b1\",\"chunk-1ce155ba\":\"6c04c398\",\"chunk-5bd74fae\":\"0b2d2783\",\"chunk-0ff6c3ac\":\"79ee8573\",\"chunk-89989e24\":\"ad42d869\",\"chunk-b5de36fe\":\"a455549f\",\"chunk-4c2f75d8\":\"aefc89e9\",\"chunk-a9edf716\":\"60fbb196\",\"chunk-2d0cebfe\":\"286fc9f5\",\"chunk-2d0d0029\":\"54624bbd\",\"chunk-2d0d61d1\":\"07775844\",\"chunk-2d0f11b4\":\"1efb0a4d\",\"chunk-2d2170db\":\"b720067d\",\"chunk-44336e19\":\"f5c514d7\",\"chunk-769d1a62\":\"75d54a3a\",\"chunk-69db505c\":\"386953de\",\"chunk-7e3b7070\":\"a9a2c661\",\"chunk-66a028ae\":\"59712742\",\"chunk-796c2356\":\"6c00fa78\",\"chunk-7b67b96e\":\"d0da74b8\",\"chunk-7ded2f46\":\"bb96b048\",\"chunk-a1ae03f0\":\"0244024e\",\"chunk-d22c0e44\":\"1220852a\",\"chunk-79b16637\":\"5c3354cf\",\"chunk-8f39bdc0\":\"1d08ea80\",\"chunk-9502a794\":\"e4e46c47\",\"chunk-9b88896c\":\"de3629f7\",\"chunk-b11f49c8\":\"00d9fe4c\",\"chunk-c2b4d8da\":\"0de53c1f\",\"chunk-ef0f9c7e\":\"1d141643\"}[chunkId] + \".js\"\n \t}\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n \t// This file contains only the entry chunk.\n \t// The chunk loading function for additional chunks\n \t__webpack_require__.e = function requireEnsure(chunkId) {\n \t\tvar promises = [];\n\n\n \t\t// mini-css-extract-plugin CSS loading\n \t\tvar cssChunks = {\"chunk-077ad2c6\":1,\"chunk-0f5abfe9\":1,\"chunk-179798b4\":1,\"chunk-1a6c1e29\":1,\"chunk-1c5d8a24\":1,\"chunk-1f1da650\":1,\"chunk-2fffb6bf\":1,\"chunk-339156c9\":1,\"chunk-355d8890\":1,\"chunk-360401a8\":1,\"chunk-3e50b9dc\":1,\"chunk-48696312\":1,\"chunk-d7fe899a\":1,\"chunk-5bdb9c32\":1,\"chunk-70caee82\":1,\"chunk-284375f3\":1,\"chunk-6539fca4\":1,\"chunk-1c09777f\":1,\"chunk-ee1b446c\":1,\"chunk-92e514bc\":1,\"chunk-aa9929b2\":1,\"chunk-36706b0a\":1,\"chunk-b3b76880\":1,\"chunk-1ce155ba\":1,\"chunk-5bd74fae\":1,\"chunk-0ff6c3ac\":1,\"chunk-89989e24\":1,\"chunk-b5de36fe\":1,\"chunk-4c2f75d8\":1,\"chunk-a9edf716\":1,\"chunk-769d1a62\":1,\"chunk-69db505c\":1,\"chunk-7e3b7070\":1,\"chunk-66a028ae\":1,\"chunk-796c2356\":1,\"chunk-7b67b96e\":1,\"chunk-7ded2f46\":1,\"chunk-a1ae03f0\":1,\"chunk-d22c0e44\":1,\"chunk-79b16637\":1,\"chunk-9502a794\":1,\"chunk-9b88896c\":1,\"chunk-b11f49c8\":1,\"chunk-c2b4d8da\":1,\"chunk-ef0f9c7e\":1};\n \t\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n \t\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n \t\t\tpromises.push(installedCssChunks[chunkId] = new Promise(function(resolve, reject) {\n \t\t\t\tvar href = \"css/\" + ({}[chunkId]||chunkId) + \".\" + {\"chunk-077ad2c6\":\"7ae72e13\",\"chunk-2d0d9f9f\":\"31d6cfe0\",\"chunk-614d23b5\":\"31d6cfe0\",\"chunk-0f5abfe9\":\"663f8951\",\"chunk-179798b4\":\"3ab7a86c\",\"chunk-1a6c1e29\":\"3ab7a86c\",\"chunk-1c5d8a24\":\"726b3234\",\"chunk-1f1da650\":\"3ab7a86c\",\"chunk-20c90825\":\"31d6cfe0\",\"chunk-292f98e6\":\"31d6cfe0\",\"chunk-2b552467\":\"31d6cfe0\",\"chunk-2d0aaf55\":\"31d6cfe0\",\"chunk-2d0cc068\":\"31d6cfe0\",\"chunk-2d0ceb52\":\"31d6cfe0\",\"chunk-2d0d6d35\":\"31d6cfe0\",\"chunk-2d20813a\":\"31d6cfe0\",\"chunk-2d215fa4\":\"31d6cfe0\",\"chunk-2d216988\":\"31d6cfe0\",\"chunk-2d225be7\":\"31d6cfe0\",\"chunk-2d22c101\":\"31d6cfe0\",\"chunk-2d2383db\":\"31d6cfe0\",\"chunk-2fffb6bf\":\"05607f23\",\"chunk-339156c9\":\"fca02344\",\"chunk-355d8890\":\"1a277322\",\"chunk-360401a8\":\"3ab7a86c\",\"chunk-3e50b9dc\":\"fca02344\",\"chunk-48696312\":\"6aa76c4d\",\"chunk-d7fe899a\":\"aec2049f\",\"chunk-4f91ce06\":\"31d6cfe0\",\"chunk-5bdb9c32\":\"f80181b2\",\"chunk-70caee82\":\"18bc4a4a\",\"chunk-07644a0d\":\"31d6cfe0\",\"chunk-284375f3\":\"4d9d63af\",\"chunk-6539fca4\":\"644ceec7\",\"chunk-1c09777f\":\"467b1015\",\"chunk-ee1b446c\":\"3da69f06\",\"chunk-92e514bc\":\"97d1f5cc\",\"chunk-aa9929b2\":\"307b59c8\",\"chunk-36706b0a\":\"c9d7af92\",\"chunk-b3b76880\":\"8a8d9b2d\",\"chunk-1ce155ba\":\"0c23812c\",\"chunk-5bd74fae\":\"44342b6a\",\"chunk-0ff6c3ac\":\"c1d5cafa\",\"chunk-89989e24\":\"a9991071\",\"chunk-b5de36fe\":\"876baf73\",\"chunk-4c2f75d8\":\"c67975b2\",\"chunk-a9edf716\":\"f7e1537e\",\"chunk-2d0cebfe\":\"31d6cfe0\",\"chunk-2d0d0029\":\"31d6cfe0\",\"chunk-2d0d61d1\":\"31d6cfe0\",\"chunk-2d0f11b4\":\"31d6cfe0\",\"chunk-2d2170db\":\"31d6cfe0\",\"chunk-44336e19\":\"31d6cfe0\",\"chunk-769d1a62\":\"d5815583\",\"chunk-69db505c\":\"fc47a565\",\"chunk-7e3b7070\":\"d586320b\",\"chunk-66a028ae\":\"3ab7a86c\",\"chunk-796c2356\":\"fca02344\",\"chunk-7b67b96e\":\"3ab7a86c\",\"chunk-7ded2f46\":\"fca02344\",\"chunk-a1ae03f0\":\"693491d7\",\"chunk-d22c0e44\":\"199aaf18\",\"chunk-79b16637\":\"06a3d15e\",\"chunk-8f39bdc0\":\"31d6cfe0\",\"chunk-9502a794\":\"3ab7a86c\",\"chunk-9b88896c\":\"1a277322\",\"chunk-b11f49c8\":\"f80181b2\",\"chunk-c2b4d8da\":\"3ab7a86c\",\"chunk-ef0f9c7e\":\"3ab7a86c\"}[chunkId] + \".css\";\n \t\t\t\tvar fullhref = __webpack_require__.p + href;\n \t\t\t\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n \t\t\t\tfor(var i = 0; i < existingLinkTags.length; i++) {\n \t\t\t\t\tvar tag = existingLinkTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n \t\t\t\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return resolve();\n \t\t\t\t}\n \t\t\t\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n \t\t\t\tfor(var i = 0; i < existingStyleTags.length; i++) {\n \t\t\t\t\tvar tag = existingStyleTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\");\n \t\t\t\t\tif(dataHref === href || dataHref === fullhref) return resolve();\n \t\t\t\t}\n \t\t\t\tvar linkTag = document.createElement(\"link\");\n \t\t\t\tlinkTag.rel = \"stylesheet\";\n \t\t\t\tlinkTag.type = \"text/css\";\n \t\t\t\tlinkTag.onload = resolve;\n \t\t\t\tlinkTag.onerror = function(event) {\n \t\t\t\t\tvar request = event && event.target && event.target.src || fullhref;\n \t\t\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + request + \")\");\n \t\t\t\t\terr.code = \"CSS_CHUNK_LOAD_FAILED\";\n \t\t\t\t\terr.request = request;\n \t\t\t\t\tdelete installedCssChunks[chunkId]\n \t\t\t\t\tlinkTag.parentNode.removeChild(linkTag)\n \t\t\t\t\treject(err);\n \t\t\t\t};\n \t\t\t\tlinkTag.href = fullhref;\n\n \t\t\t\tvar head = document.getElementsByTagName(\"head\")[0];\n \t\t\t\thead.appendChild(linkTag);\n \t\t\t}).then(function() {\n \t\t\t\tinstalledCssChunks[chunkId] = 0;\n \t\t\t}));\n \t\t}\n\n \t\t// JSONP chunk loading for javascript\n\n \t\tvar installedChunkData = installedChunks[chunkId];\n \t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n \t\t\t// a Promise means \"currently loading\".\n \t\t\tif(installedChunkData) {\n \t\t\t\tpromises.push(installedChunkData[2]);\n \t\t\t} else {\n \t\t\t\t// setup Promise in chunk cache\n \t\t\t\tvar promise = new Promise(function(resolve, reject) {\n \t\t\t\t\tinstalledChunkData = installedChunks[chunkId] = [resolve, reject];\n \t\t\t\t});\n \t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n \t\t\t\t// start chunk loading\n \t\t\t\tvar script = document.createElement('script');\n \t\t\t\tvar onScriptComplete;\n\n \t\t\t\tscript.charset = 'utf-8';\n \t\t\t\tscript.timeout = 120;\n \t\t\t\tif (__webpack_require__.nc) {\n \t\t\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n \t\t\t\t}\n \t\t\t\tscript.src = jsonpScriptSrc(chunkId);\n\n \t\t\t\t// create error before stack unwound to get useful stacktrace later\n \t\t\t\tvar error = new Error();\n \t\t\t\tonScriptComplete = function (event) {\n \t\t\t\t\t// avoid mem leaks in IE.\n \t\t\t\t\tscript.onerror = script.onload = null;\n \t\t\t\t\tclearTimeout(timeout);\n \t\t\t\t\tvar chunk = installedChunks[chunkId];\n \t\t\t\t\tif(chunk !== 0) {\n \t\t\t\t\t\tif(chunk) {\n \t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n \t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n \t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n \t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n \t\t\t\t\t\t\terror.type = errorType;\n \t\t\t\t\t\t\terror.request = realSrc;\n \t\t\t\t\t\t\tchunk[1](error);\n \t\t\t\t\t\t}\n \t\t\t\t\t\tinstalledChunks[chunkId] = undefined;\n \t\t\t\t\t}\n \t\t\t\t};\n \t\t\t\tvar timeout = setTimeout(function(){\n \t\t\t\t\tonScriptComplete({ type: 'timeout', target: script });\n \t\t\t\t}, 120000);\n \t\t\t\tscript.onerror = script.onload = onScriptComplete;\n \t\t\t\tdocument.head.appendChild(script);\n \t\t\t}\n \t\t}\n \t\treturn Promise.all(promises);\n \t};\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([0,\"chunk-vendors\"]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","import router from \"@/router\";\nimport store from \"@/stores/store\";\nimport { mapActions, mapState } from \"vuex\";\nimport { Roles } from \"@/_helpers/Role\";\n\nexport const FEATURES = {\n MAP_DASHBOARD: \"FEATURE_MAP_DASHBOARD\",\n CAM_ONLINE: \"CAM_ONLINE\",\n};\n\nexport const LICENSE_FEATURES = [FEATURES.MAP_DASHBOARD];\n\nexport default {\n data() {\n return {\n whiteLabelSettings: [\"powered_by\", \"branding\"],\n };\n },\n methods: {\n ...mapActions(\"configuration\", [\"getLicenseTerms\"]),\n\n isSuperAdmin() {\n return this.permitted(\"SuperAdmin\");\n },\n\n canMask() {\n return this.permitted(\"Companies.Masquerade\");\n },\n\n allowed(route, roles = null) {\n if (roles == \"all\")\n // TODO: This is a hack fix this\n return true;\n\n var role = store.state.users.currentUser.role;\n\n var allowed = false;\n\n if (route !== null) {\n if (route.charAt(0) === \"/\") {\n route = route.substring(1, route.length);\n }\n\n var routeArr = route.split(\"/\");\n\n if (routeArr.length > 0) {\n router.options.routes.forEach((e) => {\n if (e.path === \"/\" + routeArr[0]) {\n if (e.children) {\n e.children.forEach((c) => {\n if (c.path === routeArr[1]) {\n if (c.meta) {\n if (!c.meta.authorize) allowed = true;\n\n allowed = c.meta.authorize.includes(role);\n }\n }\n });\n }\n }\n });\n }\n } else if (roles !== null) {\n allowed = roles.includes(role);\n }\n\n return allowed;\n },\n\n // Check if the current state company owns the requested resource\n owns(oid) {\n var cmpId = store.getters[\"users/companyId\"];\n if (cmpId == null) return false;\n\n return oid == cmpId;\n },\n\n permitted(permission, prefix = \"Frontend.SO.\") {\n if (permission == \"ALL\") return true;\n\n var fullPermission = prefix + permission;\n var result = store.getters[\"users/permissions\"].filter(\n (e) => e.resourceIdentifier == fullPermission\n );\n return result == null || result.length <= 0 ? false : true;\n },\n\n canAccessFeature(feature) {\n let result = store.getters[\"featureAccess/companyFeatures\"].find(\n (e) => e.name === feature\n );\n\n // Check if the feature is also controled by the license\n if (result !== undefined && LICENSE_FEATURES.includes(result.name)) {\n let license = store.getters[\"configuration/license\"];\n if (license === undefined || license[result.name] === undefined)\n return false;\n if (license[result.name].toLowerCase() === \"true\") return true;\n\n return false;\n }\n\n return result !== undefined;\n },\n\n // Check if the user is allowed to be edited by the current user\n allowedToEdit(role, targetRole) {\n let allowed = false;\n\n if (role === Roles.Admin || role === Roles.SuperAdmin) {\n allowed = targetRole !== Roles.SuperAdmin;\n }\n\n if (role === Roles.CompanyAdmin) {\n allowed =\n targetRole !== Roles.Admin &&\n targetRole !== Roles.SuperAdmin &&\n targetRole !== Roles.CompanyAdmin;\n }\n\n return allowed;\n },\n\n // Returns true if access is restricted to setting due to white labeling not being included in the license\n limitedToWhiteLabel(key) {\n if (this.license.WHITE_LABEL) return false;\n\n return this.whiteLabelSettings.includes(key);\n },\n\n whiteLabelActive() {\n return this.license.WHITE_LABEL;\n },\n },\n\n computed: {\n ...mapState(\"configuration\", [\"userSettings\", \"license\"]),\n\n FEATURES() {\n return FEATURES;\n },\n\n whiteLabel() {\n if (\n this.license.WHITE_LABEL == undefined ||\n this.license.WHITE_LABEL == null\n )\n return false;\n\n return this.license.WHITE_LABEL.toLowerCase() == \"true\";\n },\n },\n};\n","import { format, formatDistance } from \"date-fns\";\nimport i18n from \"@/plugins/i18n.js\";\nimport { sv } from \"date-fns/locale\";\n\nexport default {\n methods: {\n humanDate(date, formatString = undefined) {\n if (date == \"0001-01-01T00:00:00\") return \"N/A\";\n return date !== undefined && date !== null\n ? format(\n typeof date === \"string\" ? new Date(date) : date,\n formatString !== undefined ? formatString : \"dd MMM - HH:mm\"\n )\n : \"N/A\";\n },\n\n timeFromDays(days) {\n return days * 24 * 60 * 60 * 1000;\n },\n\n timeFromHours(hours) {\n return hours * 60 * 60 * 1000;\n },\n\n timeFromMinutes(minutes) {\n return minutes * 60 * 1000;\n },\n\n timeWithinMinutes(date1, minutes, date2) {\n if (date2 == undefined) date2 = new Date();\n return date2 - new Date(date1) < this.timeFromMinutes(minutes);\n },\n\n timeWithinHours(date, hours) {\n return new Date() - new Date(date) < this.timeFromHours(hours);\n },\n\n timeWithinDays(date, days) {\n return new Date() - new Date(date) < this.timeFromDays(days);\n },\n\n distanceAgo(date) {\n if (date == null) return \"\";\n\n let options = {};\n if (i18n.locale == \"sv\") options = { locale: sv };\n\n return formatDistance(new Date(date), new Date(), options);\n },\n\n toApiDate(date, encode = false) {\n let dt = this.humanDate(date, \"yyyy-MM-dd HH:mm:ss\");\n\n return encode ? encodeURIComponent(dt) : dt;\n },\n },\n};\n","import i18n from \"@/plugins/i18n\";\r\nimport { colors } from \"vuetify/lib\";\r\n\r\nexport default {\r\n DaysOfWeek: {\r\n sunday: 0,\r\n monday: 1,\r\n tuesday: 2,\r\n wednesday: 3,\r\n thursday: 4,\r\n friday: 5,\r\n saturday: 6,\r\n },\r\n\r\n Priority: {\r\n A: 0,\r\n B: 1,\r\n C: 2,\r\n },\r\n\r\n LimitType: {\r\n LOW: 0,\r\n HIGH: 1,\r\n },\r\n\r\n ContactType: {\r\n SMS: 0,\r\n EMAIL: 1,\r\n BOTH: 2,\r\n },\r\n\r\n ModuleType: {\r\n CHART: 0,\r\n GAUGE: 1,\r\n TEXT: 2,\r\n IMAGE: 3,\r\n MAP: 4,\r\n COMPANYINFO: 5,\r\n IFRAME: 6,\r\n WEATHER: 7,\r\n SINGLE: 8,\r\n RAWTABLE: 9,\r\n MULTICHART: 10,\r\n IMAGEMAP: 11,\r\n FUNCTIONBUTTON: 12,\r\n INFOCARD: 13,\r\n TRENDCHART: 14,\r\n SENSOROVERVIEW: 15,\r\n TILTCHART: 16,\r\n FILLINDICATOR: 17,\r\n CONTROLSLIDERS: 18,\r\n CAMONLINE: 19,\r\n },\r\n\r\n LogType: [\r\n { type: \"SMS\", label: i18n.t(\"log.type.sms\"), color: colors.blue.accent1 },\r\n {\r\n type: \"APP\",\r\n label: i18n.t(\"log.type.app\"),\r\n color: colors.green.accent3,\r\n },\r\n {\r\n type: \"WARNING\",\r\n label: i18n.t(\"log.type.warning\"),\r\n color: colors.yellow.accent1,\r\n },\r\n {\r\n type: \"ERROR\",\r\n label: i18n.t(\"log.type.error\"),\r\n color: colors.red.accent1,\r\n },\r\n {\r\n type: \"USEREVENT\",\r\n label: i18n.t(\"log.type.userevent\"),\r\n color: colors.green.accent1,\r\n },\r\n {\r\n type: \"LOGIN\",\r\n label: i18n.t(\"log.type.login\"),\r\n color: colors.blue.accent1,\r\n },\r\n ],\r\n\r\n CompanySettingFieldType: {\r\n STRING: 0,\r\n NUMBER: 1,\r\n DATE: 2,\r\n SELECT: 3,\r\n CHECKBOX: 4,\r\n PASSWORD: 5,\r\n },\r\n\r\n FunctionTypes: {\r\n SCRIPT: 0,\r\n VALUEINPUT: 1,\r\n DASHBOARD: 2,\r\n DOWNLINK: 3,\r\n ONOFFSWITCH: 4,\r\n },\r\n\r\n ConditionTypes: {\r\n SENSORVALUE: {\r\n value: 0,\r\n text: i18n.t(\"conditionTree.types.0\"),\r\n icon: \"mdi-thermometer\",\r\n },\r\n TEXT: { value: 1, text: i18n.t(\"conditionTree.types.1\"), icon: \"mdi-text\" },\r\n NUMBER: {\r\n value: 2,\r\n text: i18n.t(\"conditionTree.types.2\"),\r\n icon: \"mdi-counter\",\r\n },\r\n DATE: {\r\n value: 3,\r\n text: i18n.t(\"conditionTree.types.3\"),\r\n icon: \"mdi-calendar-range\",\r\n },\r\n EMPTY: {\r\n value: 4,\r\n text: i18n.t(\"conditionTree.types.4\"),\r\n icon: \"mdi-circle-off-outline\",\r\n },\r\n },\r\n\r\n DashboardTypes: DashboardTypes,\r\n};\r\n\r\nexport const DashboardTypes = {\r\n DEFAULT: 0,\r\n MAP: 1,\r\n IMAGEMAP: 2,\r\n};\r\n","export default {\r\n routes: {\r\n home: \"Home\",\r\n login: \"Login\",\r\n register: \"Register\",\r\n registerCompany: \"New Company\",\r\n logout: \"Logout\",\r\n\r\n company: \"Company\",\r\n dashboard: \"Dashboard\",\r\n application: \"Applications\",\r\n alarm: \"Alarm Management\",\r\n\r\n user: \"Users\",\r\n tagdata: \"Data\",\r\n tag: \"Nodes\",\r\n script: \"Script Engine\",\r\n report: \"Reports\",\r\n contact: \"Contact\",\r\n apiRef: \"API-Documentation\",\r\n shop: \"Buy nodes\",\r\n manual: \"Manual\",\r\n userEdit: \"Account\",\r\n settings: \"Settings\",\r\n signalTest: \"Field testing\",\r\n gateway: \"Gateways\",\r\n news: \"News\",\r\n roles: \"Roles\",\r\n\r\n superadmin: \"Admin\",\r\n },\r\n\r\n widget: {\r\n weather: {\r\n pickTitle: \"Position for SMHI Weather-data\",\r\n },\r\n\r\n form: {\r\n step1: \"Widget\",\r\n step2: \"Slots / Keys\",\r\n step3: \"Attributes\",\r\n },\r\n },\r\n\r\n opc: {\r\n title: \"OPC-UA\",\r\n server: {\r\n title: \"OPC-UA Servrers\",\r\n autocomplete: \"Select a OPC-Server\",\r\n fields: {\r\n opcServerId: \"OPC Server ID\",\r\n serverUrl: \"Server URL\",\r\n useUsernameAndPassword: \"Använd Användarnamn och Lösenord\",\r\n updatedAt: \"Uppdaterad\",\r\n createdAt: \"Skapad\",\r\n },\r\n },\r\n\r\n node: {\r\n fields: {\r\n serverId: \"Server\",\r\n key: \"Key\",\r\n nodeId: \"NodeID\",\r\n },\r\n\r\n hints: {\r\n nodeId: \"Example, ns=1;i=1001\",\r\n },\r\n },\r\n },\r\n\r\n modbus: {\r\n title: \"Modbus\",\r\n\r\n master: {\r\n title: \"Modbus Masters\",\r\n create: \"Add new Master\",\r\n\r\n fields: {\r\n modbusMasterId: \"Master ID\",\r\n name: \"Title\",\r\n host: \"IP\",\r\n port: \"Port\",\r\n },\r\n },\r\n\r\n register: {\r\n title: \"Modbus Register\",\r\n create: \"Add a new register\",\r\n poll: \"Poll registers\",\r\n polledValue: \"Polled value\",\r\n\r\n fields: {\r\n modbusRegisterId: \"Register ID\",\r\n modbusMasterId: \"Master ID\",\r\n master: \"Master\",\r\n slave: \"Slav ID\",\r\n nodeId: \"Node ID\",\r\n key: \"Sensor key\",\r\n register: \"Register\",\r\n pollInterval: \"Poll interval (Seconds)\",\r\n registerType: \"Register-type\",\r\n valueType: \"Value-type\",\r\n action: \"Poll/Push\",\r\n byteOrder: \"Byte-order\",\r\n createdAt: \"Created\",\r\n updatedAt: \"Updated\",\r\n },\r\n\r\n valueTypes: {\r\n 0: \"FLOAT\",\r\n 1: \"DOUBLE\",\r\n 2: \"INT16\",\r\n 3: \"UINT16\",\r\n 4: \"INT32\",\r\n 5: \"UINT32\",\r\n 6: \"BOOL\",\r\n },\r\n\r\n types: {\r\n 0: \"Holding Register\",\r\n 1: \"Coil\",\r\n 2: \"Analog Input\",\r\n 3: \"Digital Input\",\r\n },\r\n\r\n byteOrders: {\r\n 0: \"ABCD\",\r\n 1: \"DCBA (Default)\",\r\n 2: \"BADC\",\r\n 3: \"CDAB\",\r\n },\r\n },\r\n\r\n validation: {\r\n required: \"This field is required\",\r\n slaveMinVal: \"SlavID must be greater than 1\",\r\n slaveMaxVal: \"SlavID must be less than 255\",\r\n registerMaxVal: \"Register must be less than 67000\",\r\n registerMinVal: \"Register must be greater or equal to 0\",\r\n pollIntervalMin: \"Poll Interval cannot be less than 60 seconds\",\r\n registerAllreadyReadFrom: \"This register is allready in use\",\r\n },\r\n },\r\n\r\n spotIo: {\r\n fields: {\r\n key: \"SpotIO Key\",\r\n },\r\n validation: {\r\n spotIoKeyRequired: \"'SpotIO Key' is required\",\r\n spotIoKeyUnique: \"'SpotIO Key' must be unique for the Node\",\r\n },\r\n },\r\n\r\n templateDashboard: {\r\n title: \"Dashboard Templates\",\r\n deleteError: \"Could not delete template\",\r\n deleteSuccess: \"Deleted\",\r\n\r\n saveDashboard: \"Save\",\r\n\r\n defaults: {\r\n name: \"New template dashboard\",\r\n },\r\n\r\n fields: {\r\n name: \"Name\",\r\n dashboardType: \"Type\",\r\n createdAt: \"Created\",\r\n updatedAt: \"Updated\",\r\n },\r\n\r\n addSlot: \"Add Node-Slot\",\r\n numberOfAvailableSlots: \"Amount of Node-Slots: {num}\",\r\n\r\n dashboardTypeTitle: \"Dashboard type\",\r\n dashboardType: {\r\n 0: \"Full Dashboard\",\r\n 1: \"Side / Map Dashboard\",\r\n 2: \"Node Dashboard\",\r\n },\r\n\r\n slots: {},\r\n },\r\n\r\n slot: {\r\n addHint: \"Add a Node Slot\",\r\n resetSlots: \"Reset all Slots\",\r\n slotIndex: \"Slot Index\",\r\n priorityTitle: \"Slot priority\",\r\n priorityDescription:\r\n \"Slot priority is used to select which sensors that should be showed first\",\r\n },\r\n\r\n colorPicker: {\r\n colorForExpressionLabel: \"Color for expression\",\r\n\r\n so_style_meta_title_text: \"Title text color\",\r\n so_style_meta_title_background: \"Title background color\",\r\n so_style_meta_content_title: \"Content text color\",\r\n so_style_meta_content_background: \"Content background color\",\r\n so_style_meta_fill_level_color: \"Color of fill-level\",\r\n so_style_meta_color_for_expression: \"Color for value\",\r\n so_style_meta_action_for_content: \"Color for value\",\r\n\r\n iconColor: \"Icon color\",\r\n backgroundColor: \"Background color\",\r\n },\r\n\r\n camOnline: {\r\n servers: \"Cam-Online Servers\",\r\n couldNotFetchServers: \"Could not fetch CamOnline Servers\",\r\n couldNotCreateServer: \"Something went wrong when creating CamOnline Server\",\r\n couldNotDeleteServer: \"Something went wrong when deleting CamOnline Server\",\r\n\r\n serverSelect: \"Choose Cam-Online Server\",\r\n streamSelect: \"Choose a camera\",\r\n createDialogTitle: \"Add a new Server\",\r\n tabTitle: \"Cam-Online\",\r\n fields: {\r\n url: \"Url (Ex: https://portal.cam-online.se)\",\r\n accessToken: \"AccessToken\",\r\n isGlobal: \"Global Server\",\r\n },\r\n },\r\n roles: {\r\n toolbarTitle: \"Roles\",\r\n permissionCounts: \"Permissions\",\r\n\r\n missingRecommendedTitle:\r\n \"Seems like you are missing some Recommended permissions do you want to add them?\",\r\n missingRecommendedButton: \"Click Me!\",\r\n\r\n pickPermissionsTitle: \"Pick Permissions for this Role\",\r\n pickPermissionsDesc:\r\n \"When picking Permissions you might encounter Orange Permissions. These Permissions are Recommended to make the base functionallity work. You can choose one of the default roles below to use them as a template.\",\r\n\r\n layerTypes: {\r\n 0: \"Frontend Essentials\",\r\n 1: \"Frontend\",\r\n 2: \"Backend\",\r\n },\r\n\r\n fields: {\r\n name: \"Role Name\",\r\n permissionCount: \"Number of Permissions\",\r\n isDefault: \"Is Default\",\r\n isSuper: \"Is Admin\",\r\n },\r\n },\r\n\r\n eventhub: {\r\n waiting: \"Waiting for new events...\",\r\n\r\n copySuccess: \"Payload is in the clipboard\",\r\n copyError: \"Could not copy the Payload to clipboard\",\r\n\r\n events: {\r\n data: \"New Data\",\r\n endpoint: \"Endpoint event\",\r\n },\r\n },\r\n\r\n downlinks: {\r\n editorTitle: \"Downlinks\",\r\n\r\n validation: {\r\n port: \"Port must be greater than 0\",\r\n },\r\n },\r\n\r\n conditionTree: {\r\n selectValueTypeTitle: \"Select value type\",\r\n selectType: \"Select type\",\r\n selectValue: \"Select value\",\r\n chooseSensor: \"Select Sensor\",\r\n\r\n textInputPlaceholder: \"Text value\",\r\n numberInputPlaceholder: \"Number value\",\r\n\r\n types: {\r\n 0: \"Sensor Value\",\r\n 1: \"Text\",\r\n 2: \"Number\",\r\n 3: \"Time\",\r\n 4: \"No Value\",\r\n },\r\n\r\n ops: {\r\n greater: \"Greater than\",\r\n less: \"Less than\",\r\n equal: \"Equal to\",\r\n greaterOrEqual: \"Greater or equal than\",\r\n lessOrEqual: \"Less or equal than\",\r\n notEqual: \"Not\",\r\n },\r\n },\r\n\r\n accessToken: {\r\n title: \"Access Tokens\",\r\n newToken: \"Create a Token\",\r\n cardNewTitle: \"New Token\",\r\n cardTitle: \"Access Token\",\r\n fields: {\r\n id: \"Id\",\r\n label: \"Title\",\r\n token: \"Token\",\r\n isCompany: \"Company Token\",\r\n },\r\n },\r\n\r\n news: {\r\n cannotGetNews: \"Could not fetch the news from Nodeledge AB.\",\r\n },\r\n\r\n gateway: {\r\n toolbar: \"Gateways\",\r\n toolbarTitle: \"Gateways\",\r\n bestGw: \"Best gateway\",\r\n\r\n pickLocationButton: \"Set latitude and longitude\",\r\n fields: {\r\n name: \"Name\",\r\n macAddress: \"GatewayEUI\",\r\n latitude: \"Latitude\",\r\n longitude: \"Longitude\",\r\n createdAt: \"Created\",\r\n },\r\n },\r\n\r\n signalTest: {\r\n toolbarTitle: \"Field tests\",\r\n startTest: \"Start a new test\",\r\n endTest: \"Complete test\",\r\n peekTest: \"Look at test\",\r\n createToolbar: \"Start a new test\",\r\n rawData: \"Raw data\",\r\n updateTimer: \"Update timer\",\r\n\r\n fields: {\r\n testId: \"Test ID\",\r\n description: \"Description\",\r\n startTest: \"Start\",\r\n endTest: \"End\",\r\n active: \"Active\",\r\n\r\n avgSnr: \"Average SNR\",\r\n avgRssi: \"Average RSSI\",\r\n\r\n data: {\r\n rssi: \"RSSI\",\r\n snr: \"SNR\",\r\n lat: \"LATITUDE\",\r\n lng: \"LONGITUDE\",\r\n createdAt: \"TIME\",\r\n },\r\n },\r\n\r\n tab: {\r\n map: \"MAP\",\r\n data: \"STATS\",\r\n },\r\n },\r\n\r\n trend: {\r\n res: {\r\n week: \"Resolution: Week\",\r\n day: \"Resolution: Day\",\r\n hour: \"Resolution: Hour\",\r\n five: \"Resolution: 5 Hours\",\r\n },\r\n },\r\n\r\n notifications: {\r\n clearNotifications: \"Mark all as read\",\r\n noNotifications: \"You are all up to date.\",\r\n },\r\n\r\n landing: {\r\n slogan: \"VISUALIZATION MADE EASY\",\r\n or: \"OR\",\r\n key: {\r\n title: \"Key features\",\r\n 1: \"Nodemanagement\",\r\n 2: \"Visualization\",\r\n 3: \"Custom dashboards\",\r\n 4: \"Alarm management\",\r\n 5: \"Personnel management\",\r\n 6: \"Script engine\",\r\n\r\n description: {\r\n 1: \"Manage sensors for handling data\",\r\n 2: \"Get your sensor data visualized the way you like to observe the data\",\r\n 3: \"Create your own dashboard specialized for YOUR area of use\",\r\n 4: \"Alarm management for critical use cases\",\r\n 5: \"To manage the personnel of your company\",\r\n 6: \"Advanced users can use the script engine to manipulate data\",\r\n },\r\n },\r\n\r\n usecases: {\r\n title: \"Use cases\",\r\n 1: \"Environment sensors\",\r\n 2: \"Electricity sensors\",\r\n 3: \"Movement sensors\",\r\n 4: \"Temperature sensors\",\r\n\r\n description: {\r\n 1: \"Great fit for smart farming solutions like Ljusgarda making use of the portal. The alarm feature of SENSORONLINE is the key to keeping your assets safe.\",\r\n 12: \"Read more about Ljusgarda\",\r\n 2: \"Measure current for streetlights in your city. With the script engine to make sense of the data gathered.\",\r\n 3: \"Measure how many people or cars are leaving or entering your facility.\",\r\n 4: \"Of course temperature measurements are a key part of our platform. Many companies use and keep track of their asset's temperatures.\",\r\n },\r\n },\r\n\r\n help: {\r\n title: \"Contact us\",\r\n\r\n sensors: {\r\n title: \"Need to get some new nodes?\",\r\n description:\r\n \"If you need any help to solve a problem, be it what sensor to use or how you could visualize your data in a better way. Don't be afraid to reach out to us so we can make your life easier. \\n You can check out our portfolio of \",\r\n store: \"nodes that we sell here at Nodeledge AB.\",\r\n },\r\n\r\n api: {\r\n title: \"API for your convenience\",\r\n description:\r\n \"You can of course get or insert data from your other applications to the platform, check out our API endpoints \",\r\n },\r\n\r\n contact: {\r\n title: \"Are you interested? Contact us!\",\r\n siencepark: \"Skövde Science Park\",\r\n address: \"Kaplansgatan 16B\",\r\n postal: \"521 32 Skövde\",\r\n country: \"Sweden\",\r\n phoneTitle: \"Phone\",\r\n phonenumber: \"+46 (0) 500 600 022\",\r\n phonenumber2: \"+46 (0) 733 165 100\",\r\n emailTitle: \"Email\",\r\n email: \"info@sensor-online.se\",\r\n },\r\n },\r\n },\r\n\r\n imageMap: {\r\n chooseTag: \"Choose type of marker\",\r\n },\r\n\r\n log: {\r\n type: {\r\n sms: \"SMS\",\r\n app: \"Application\",\r\n warning: \"Warning\",\r\n error: \"Error\",\r\n userevent: \"User event\",\r\n login: \"Login\",\r\n },\r\n\r\n logTable: {\r\n title: \"Log\",\r\n },\r\n\r\n activeAlarms: {\r\n title: \"Active alarms\",\r\n },\r\n\r\n activeUsersTable: {\r\n title: \"Logged in users\",\r\n },\r\n\r\n fields: {\r\n type: \"Type\",\r\n user: \"User\",\r\n message: \"Message\",\r\n createdAt: \"Created\",\r\n\r\n status: \"Status\",\r\n lastAction: \"Event\",\r\n lastSeen: \"Timestamp\",\r\n\r\n alarm: {\r\n name: \"Name\",\r\n value: \"Value\",\r\n messageSent: \"Sent notification\",\r\n },\r\n },\r\n },\r\n common: {\r\n yes: \"Yes\",\r\n no: \"No\",\r\n on: \"On\",\r\n off: \"Off\",\r\n timestamp: \"Timestamp\",\r\n lang: \"Language\",\r\n error: \"An error occured, try again later\",\r\n edit: \"Edit\",\r\n delete: \"Delete\",\r\n reset: \"Reset\",\r\n purge: \"Erase\",\r\n submit: \"Send\",\r\n create: \"Create\",\r\n update: \"Update\",\r\n get: \"Get\",\r\n run: \"Run\",\r\n address: \"Address\",\r\n link: \"Link\",\r\n height: \"Height\",\r\n width: \"Width\",\r\n new: \"New\",\r\n value: \"Value\",\r\n newValue: \"New Value\",\r\n nothingToSee: \"Nothing to see here\",\r\n next: \"Next\",\r\n label: \"Label\",\r\n editLabel: \"Edit Label\",\r\n explanation: \"Explanation\",\r\n clear: \"Clear\",\r\n never: \"Never\",\r\n\r\n previousStep: \"Back\",\r\n hours: \"Hours\",\r\n mintues: \"Minutes\",\r\n\r\n search: \"Search\",\r\n close: \"Close\",\r\n cancel: \"Cancel\",\r\n success: \"Successful!\",\r\n\r\n login: \"Login\",\r\n register: \"Enroll\",\r\n email: \"Email\",\r\n password: \"Password\",\r\n confirmPassword: \"Confirm Password\",\r\n newPassword: \"New Password\",\r\n forgotPassword: \"Forgot Password\",\r\n\r\n createdAt: \"Created\",\r\n updatedAt: \"Updated\",\r\n\r\n save: \"Save\",\r\n show: \"Show\",\r\n updated: \"Updated\",\r\n created: \"Created\",\r\n deleted: \"Erased\",\r\n back: \"Return\",\r\n send: \"Send\",\r\n refresh: \"Refresh\",\r\n\r\n preview: \"Preview\",\r\n previewSpacing: \"Space for other modules\",\r\n\r\n saveColor: \"Save color\",\r\n alarmColorPrecedence:\r\n \"Alarm colors will always take precedence over manually picked colors, force override in attributes if this is not what you want.\",\r\n\r\n add: \"Add\",\r\n\r\n settings: \"Setup\",\r\n\r\n noTagOrAppChoosen: \"Node and/or application missing\",\r\n noDataFound: \"No data found\",\r\n darkTheme: \"Dark theme\",\r\n\r\n active: \"Active\",\r\n notActive: \"Inactive\",\r\n\r\n sent: \"Sent\",\r\n notSent: \"Unsent\",\r\n\r\n loginOrRegister: \"Login or enroll\",\r\n\r\n copy: \"Copy\",\r\n verify: \"Are you sure you want to continue?\",\r\n verifyDelete: \"Are you sure you want to remove this resource?\",\r\n\r\n disagree: \"No\",\r\n accept: \"Yes\",\r\n\r\n or: \"Or\",\r\n\r\n registerCompany: \"Create new company\",\r\n\r\n dashboard: \"Go to Dashboard\",\r\n switchCompany: \"Switch Company\",\r\n\r\n inactiveSensors: \"Inactive Sensors\",\r\n activeSensors: \"Active Sensors\",\r\n sensorStatus: \"Node-status\",\r\n sensorName: \"Node-name\",\r\n\r\n updatesPending: \"Changes awaiting refresh\",\r\n pickLocationConfirm: \"Do you want to save the position of this resource?\",\r\n\r\n toFewBytes: \"To few bytes\",\r\n byteInputRequired: \"You need to fill this field\",\r\n\r\n getMorePages: \"Load more\",\r\n\r\n size: \"Size\",\r\n test: \"Test\",\r\n\r\n searchType: {\r\n TAG: \"Nodes\",\r\n ALARM: \"Alarms\",\r\n APPLICATION: \"Applications\",\r\n DASHBOARD: \"Dashboards\",\r\n GATEWAY: \"Gateways\",\r\n SCRIPT: \"Scripts\",\r\n },\r\n\r\n dateLabel: \"Date\",\r\n timeLabel: \"Time\",\r\n\r\n time: {\r\n day: \"Day\",\r\n hour: \"Hour\",\r\n quarterHour: \"Quarter-hour\",\r\n minute: \"Minute\",\r\n },\r\n\r\n days: {\r\n monday: \"Monday\",\r\n tuesday: \"Tuesday\",\r\n wednesday: \"Wednesday\",\r\n thursday: \"Thursday\",\r\n friday: \"Friday\",\r\n saturday: \"Saturday\",\r\n sunday: \"Sunday\",\r\n },\r\n\r\n dateRange: {\r\n 0: \"Last hour\",\r\n 1: \"Last 5 hours\",\r\n 2: \"Last 24 hours\",\r\n 3: \"Last 7 days\",\r\n 4: \"Last 30 days\",\r\n },\r\n\r\n staticinformation: {\r\n datapoints: \"Datapoints last 24 hours\",\r\n inactiveSensors: \"Inactive sensors\",\r\n activeAlarms: \"Active alarms\",\r\n datapointsLastWeek: \"Datapoints last week by day\",\r\n weekday: \"Weekday\",\r\n },\r\n\r\n errors: {\r\n getDecoders: \"Could not fetch decoders\",\r\n backendConnection: \"No connection to backend could be established.\",\r\n },\r\n\r\n actions: {\r\n createCategory: \"Create Category\",\r\n editCategory: \"Edit Category\",\r\n remove: \"Remove\",\r\n\r\n createDashboard: \"Create Dashboard\",\r\n copyDashboard: \"Copy Dashboard\",\r\n },\r\n\r\n iconSelector: {\r\n selectIcon: \"Choose Icon\",\r\n searchPlaceholder: \"Search for Icons\",\r\n },\r\n },\r\n\r\n settings: {\r\n title: \"Settings\",\r\n userSettings: \"User Settings\",\r\n themes: \"Themes\",\r\n\r\n company: {\r\n title: \"Company Settings\",\r\n },\r\n\r\n data: {\r\n toolbarTransparancy: \"Transparent toolbar\",\r\n stickySideMenu: \"Sticky sidemenu\",\r\n },\r\n\r\n global: {\r\n name: \"Global Settings\",\r\n branding: \"Branding\",\r\n powered_by: \"Powered By\",\r\n SMS_PROVIDER: \"SMS Provider\",\r\n SMS_IP1_FROM: \"IP1 Sender name\",\r\n SMS_IP1_USERNAME: \"IP1 Username\",\r\n SMS_IP1_PASSWORD: \"IP1 Password\",\r\n SMS_TWILIO_ACCOUNTSID: \"Twilio AccountSID\",\r\n SMS_TWILIO_ACCESSTOKEN: \"Twilio AccessToken\",\r\n SMS_TWILIO_NUMBER: \"Twilio Number\",\r\n },\r\n },\r\n\r\n companysetting: {\r\n field: {\r\n smsprovider: \"SMS Provider\",\r\n alarmTitle: \"Alarm\",\r\n\r\n inactivityAlarmContact: \"Mail for inactivity alarm\",\r\n\r\n hint: {\r\n inactivityAlarmContact:\r\n \"Email address to recieve alarms when nodes have been inactive for at least 6 hours\",\r\n },\r\n\r\n ip1: {\r\n username: \"IP1 Username\",\r\n password: \"IP1 AccessToken / Password\",\r\n from: \"Sender Name\",\r\n hint: {\r\n from: \"This is a name that will be used when SensorOnline is sending SMS\",\r\n username:\r\n \"If you want to find your username please visit the documentation: https://docs.sensor-online.se\",\r\n password:\r\n \"If you want to find your username please visit the documentation: https://docs.sensor-online.se\",\r\n },\r\n },\r\n\r\n twilio: {\r\n number: \"Twilio Number\",\r\n accountSid: \"Twilio AccountSID\",\r\n accessToken: \"Twilio AccessToken\",\r\n hint: {\r\n number:\r\n \"A number you own on twilio that you are able to send messages with.\",\r\n accountSid:\r\n \"You can find more information where to find AccountSID in our documentation: https://docs.sensor-online.se\",\r\n accessToken:\r\n \"You can find more information where to find AccessToken in our documentation: https://docs.sensor-online.se\",\r\n },\r\n },\r\n },\r\n },\r\n\r\n map: {\r\n create: \"Create Map\",\r\n setPosFormTitle: \"Choose sensor to change position\",\r\n useNodePosition: \"Use the Nodes position\",\r\n dateTimeSpanSelection: \"Date to show\",\r\n dateFrom: \"Start date\",\r\n dateTo: \"End date\",\r\n clearPositions: \"Clear routes\",\r\n stepPositions: \"Step through positions\",\r\n select: {\r\n node: \"Select Node\",\r\n dashboard: \"Select Dashboard\",\r\n },\r\n iconStyling: \"Icon Styling\",\r\n },\r\n\r\n dashboard: {\r\n name: \"Dashboards\",\r\n selectDashboard: \"Dashboards\",\r\n createTitleClean: \"Create new Dashboard\",\r\n copyDeleteTitle: \"Delete or copy dashboard\",\r\n createTitle: \"Or create a new dashboard\",\r\n chooseTitle: \"Choose dashboard\",\r\n changeTitle: \"Switch dashboard\",\r\n navigationTitle: \"Navigation menu\",\r\n\r\n fields: { name: \"Name\" },\r\n nameReq: \"This field must be filled in\",\r\n\r\n dashboardType: {\r\n 1: \"Standard Dashboard\",\r\n 2: \"Map Dashboard\",\r\n 3: \"Image-Map Dashboard\",\r\n },\r\n\r\n categories: {\r\n create: \"Create Category\",\r\n title: \"Title\",\r\n icon: \"Icon\",\r\n },\r\n\r\n copy: {\r\n tooltip: \"Kopiera widget\",\r\n },\r\n\r\n public: {\r\n title: \"Public dashboards\",\r\n create: \"Create a public dashboard\",\r\n createNew: \"Create a new public dashboard\",\r\n copiedSuccessful: \"Copied link to clipboard\",\r\n copiedUnsuccessful: \"Could not copy link {link}\",\r\n URL: \"Dashboard URL\",\r\n yes: \"Yes\",\r\n no: \"No\",\r\n remove: \"Remove\",\r\n\r\n fields: {\r\n host: \"Host\",\r\n expiresAt: \"Valid until\",\r\n expired: \"Active\",\r\n copyAction: \"Link\",\r\n dashboardName: \"Dashboard\",\r\n },\r\n },\r\n },\r\n\r\n module: {\r\n noData: \"Could not find any data\",\r\n create: \"Create a new element\",\r\n edit: \"Edit element\",\r\n metas: \"Attributes\",\r\n\r\n colorFormTitle: \"Color settings\",\r\n\r\n chart: {\r\n types: {\r\n line: \"Line\",\r\n area: \"Area\",\r\n bar: \"Bar\",\r\n scatter: \"Scatter\",\r\n vertical: \"Vertical\",\r\n trend: \"Trend Chart\",\r\n },\r\n },\r\n\r\n mapMarkers: {\r\n node: \"Pin with node info\",\r\n sensor: \"Text label with latest sensor value\",\r\n },\r\n\r\n meta: {\r\n label: \"Attributes\",\r\n save: \"Save attributes\",\r\n opacity: \"Opacity\",\r\n\r\n paletteToModuleMode: \"Change Module Colors\",\r\n paletteToCardMode: \"Change Card Colors\",\r\n\r\n valueMatch: \"Attribute 1\",\r\n value: \"Attribute 2\",\r\n key: \"Sensor\",\r\n icon: \"Icon\",\r\n\r\n styles: {\r\n text: {\r\n textcolor: \"Text Color\",\r\n background: \"Background - Content\",\r\n titleBackground: \"Background - Title\",\r\n },\r\n\r\n single: {\r\n textcolor: \"Text Color\",\r\n background: \"Background - Content\",\r\n titleBackground: \"Background - Title\",\r\n sparkline: \"Sparkline\",\r\n sparklineLabel: \"Sparkline label\",\r\n },\r\n\r\n color: {\r\n cardBackground: \"Card Background\",\r\n titleBackground: \"Title Background\",\r\n titleText: \"Title Text\",\r\n valueBackground: \"Value Background\",\r\n valueText: \"Value Text\",\r\n },\r\n },\r\n\r\n fontStyleTypes: {\r\n title: \"Title\",\r\n value: \"Value\",\r\n content: \"Content\",\r\n },\r\n\r\n keys: {\r\n so_own_axis: \"Own Y-Axel\",\r\n value_match: \"Value name\",\r\n icon: \"Suffix icon\",\r\n sufix: \"Suffix\",\r\n prefix: \"Prefix\",\r\n deveui: \"Node\",\r\n maxheight: \"Max height\",\r\n scriptid: \"Script ID\",\r\n target: \"Target\",\r\n tagkey: \"Sensor\",\r\n tagkey_x: \"Sensor X\",\r\n tagkey_y: \"Sensor Y\",\r\n tagkey_x_max: \"Sensor X Max\",\r\n tagkey_y_max: \"Sensor X Min\",\r\n forceColors: \"Force colors\",\r\n decimal_rounding: \"Decimal rounding\",\r\n dashboard_id: \"Dashboard ID\",\r\n sync_y: \"Synchronize Y-axis\",\r\n zoom_slider: \"Zoom Slider\",\r\n digital: \"Squarewave\",\r\n alarm_id: \"Alarmlimits\",\r\n so_chart_type: \"Chart Type\",\r\n so_ignore_body: \"Only title\",\r\n min_value: \"Minimum Value\",\r\n max_value: \"Maximum Value\",\r\n axis_label: \"Axis Label\",\r\n default_timespan: \"Default Timespan\",\r\n font_size: \"Font Size\",\r\n hide_trend_icon: \"Hide Trend Icon\",\r\n horizontel_single_title: \"Horizontal title\",\r\n so_hide_node_info: \"Hide Node Information\",\r\n font_style_large: \"Font Style\",\r\n so_single_sparkline: \"Sparkline\",\r\n gauge_180: \"180° Gauge\",\r\n button_label: \"Button Label\",\r\n button_label_on: \"Label On-button\",\r\n button_label_off: \"Label Off-button\",\r\n hide_title: \"Hide Title\",\r\n so_slots_count: \"Amount of Slots to display\",\r\n font_style_title: \"Font Style for Title\",\r\n font_style_content: \"Typsnitt for content\",\r\n },\r\n\r\n fields: {\r\n value_match: \"Value\",\r\n name: \"Name\",\r\n icon: \"Suffix icon\",\r\n sufix: \"Suffix\",\r\n prefix: \"Prefix\",\r\n deveui: \"Node\",\r\n maxheight: \"Max height (e.g. 300 for 300px)\",\r\n scriptid: \"Script ID\",\r\n target: \"Target\",\r\n tagkey: \"Sensor\",\r\n tagkey_x: \"Sensor X\",\r\n tagkey_y: \"Sensor Y\",\r\n tagkey_x_max: \"Sensor X Max\",\r\n tagkey_y_max: \"Sensor X Min\",\r\n forceColors: \"Force colors\",\r\n decimal_rounding: \"Digits\",\r\n dashboard_id: \"Dashboard ID\",\r\n sync_y: \"Synchronize Y-axis\",\r\n zoom_slider: \"Show Zoom Slider\",\r\n digital: \"Squarewave\",\r\n alarm_id: \"Alarmlimits\",\r\n chart_type: \"Chart Type\",\r\n ignoreBody: \"Only title\",\r\n min_value: \"Minimum Value\",\r\n max_value: \"Maximum Value\",\r\n axis_label: \"Axis Label\",\r\n default_timespan: \"Default Timespan\",\r\n so_font_style_title: \"Font Style for Title\",\r\n so_font_style_content: \"Font Style for Content\",\r\n font_style_large: {\r\n type: \"Type\",\r\n size: \"Size\",\r\n weight: \"Weight\",\r\n },\r\n },\r\n\r\n desc: {\r\n forceColors:\r\n \"Force the selected colors to take precedence over alarm colors\",\r\n },\r\n },\r\n\r\n fields: {\r\n title: \"Title\",\r\n types: \"Type\",\r\n content: \"Content\",\r\n sm: \"Size on small screen\",\r\n md: \"Size on mid-sized screen\",\r\n min: \"Min value\",\r\n max: \"Max value\",\r\n image: \"Image\",\r\n url: \"URL\",\r\n sync_chart: `Synchronize all series on the X-axis\r\n(when you have widely differing data formats)`,\r\n },\r\n\r\n enum: {\r\n size: { xs: \"XSMALL\", sm: \"SMALL\", md: \"MEDIUM\", lg: \"LARGE\" },\r\n types: {\r\n 0: \"Chart\",\r\n 1: \"Gauge\",\r\n 2: \"Text\",\r\n 3: \"Image\",\r\n 4: \"Google Map\",\r\n 5: \"Company information\",\r\n 6: \"IFrame\",\r\n 7: \"SMHI\",\r\n 8: \"Latest value\",\r\n 9: \"Raw table\",\r\n 10: \"Chart\",\r\n 11: \"Image map\",\r\n 12: \"Function Button\",\r\n 13: \"Node-Info\",\r\n 14: \"Trend Chart\",\r\n 15: \"Node-Overview\",\r\n 16: \"360° Tilt Visualizer\",\r\n 17: \"Fill Level Indicator\",\r\n 18: \"Value Setting Sliders\",\r\n 19: \"Camera\",\r\n\r\n desc: {\r\n 0: \"Displays a graph\",\r\n 1: \"Displays a gauge\",\r\n 2: \"Displays text\",\r\n 3: \"Displays a image\",\r\n 4: \"Displays a map\",\r\n 5: \"Displays a company information\",\r\n 6: \"Displays a IFrame\",\r\n 7: \"Displays SMHI weather data\",\r\n 8: \"Displays the latest value\",\r\n 9: \"Displays a raw-value table\",\r\n 10: \"Displays a graph\",\r\n 11: \"Displays a image-map\",\r\n 12: \"Displays function button\",\r\n 13: \"Displays node information\",\r\n 14: \"Displays consumption graph\",\r\n 15: \"Displays a node-overview\",\r\n 16: \"Displays 360°-tilt viewer\",\r\n 17: \"Displays fill-level\",\r\n 18: \"Displays target level meter\",\r\n 19: \"Displays camera stream from CamOnline\",\r\n },\r\n },\r\n },\r\n\r\n functionButtonTypes: {\r\n script: \"Script Execution\",\r\n input: \"Direct Value Input\",\r\n navigation: \"Dashboard Link\",\r\n downlink: \"Downlinks\",\r\n onoffSwitch: \"ON/OFF switch\",\r\n },\r\n },\r\n\r\n weather: {\r\n title: \"SMHI Weather forecast\",\r\n icon: \"Weather\",\r\n temp: \"Temperature\",\r\n windDir: \"Wind direction\",\r\n windSpeed: \"Wind speed\",\r\n humidity: \"Moisture\",\r\n thunder: \"Thunder\",\r\n date: \"Date\",\r\n precipitation: \"Precipitation\",\r\n },\r\n\r\n contact: {\r\n title: \"Contact us\",\r\n descriptionTitle: \"Sensor-Online\",\r\n description:\r\n \"We know it can be hard to get started, Dont hesitate to contact us and we will help answer your questions\",\r\n emailTitle: \"Email\",\r\n email: \"info@sensor-online.se\",\r\n phoneTitle: \"Phone\",\r\n phoneOne: \"+46 (0) 500 6000 22\",\r\n phoneTwo: \"+46 (0) 733 165 100\",\r\n locationSiencepark: \"Skövde Science Park\",\r\n locationStreet: \"Kaplansgatan 16B\",\r\n locationPostalcode: \"521 32 Skövde\",\r\n locationCountry: \"Sweden\",\r\n },\r\n\r\n company: {\r\n name: \"Company name\",\r\n orgNumber: \"Organization number\",\r\n\r\n companyInfo: \"Company information\",\r\n\r\n addUser: \"Add new user\",\r\n\r\n invite: \"Invite new user\",\r\n inviteSent: \"Invitation sent\",\r\n inviteFailed:\r\n \"Could not find the user, Make sure the user is registrered before!\",\r\n\r\n shareApp: \"Share Application\",\r\n\r\n fields: {\r\n name: \"Company name\",\r\n orgNumber: \"Organization number\",\r\n postalAdress: \"Postal adress\",\r\n deliveryAdress: \"Delivery adress\",\r\n contactPhonenumber: \"Contact phone number\",\r\n invoiceAdress: \"Email for contact\",\r\n refrenceNmuber: \"Reference number\",\r\n image: \"Company logotype\",\r\n },\r\n\r\n validation: {\r\n nameRequired: \"You must enter a company name\",\r\n nameMax: \"Company name must not be more than 255 characters\",\r\n\r\n orgNumberRequired: \"You have to fill in you company VAT number\",\r\n orgNumberFormatError: \"Wrong format VAT number\",\r\n\r\n emailRequired: \"You have to fill in email address\",\r\n emailFormatError: \"Add valid email adress\",\r\n\r\n passwordMissmatch: \"Passwords do not match\",\r\n },\r\n },\r\n\r\n report: {\r\n title: \"Reports\",\r\n refrenceDateDesc:\r\n \"The reference day is the day referred to when sending a report, if the interval is monthly, select the day on which it is sent (1st of each month, for example). Or weekly (where day is Mon - Fri for when the report is to be sent out).\",\r\n create: \"Create report subscription\",\r\n update: \"Update report subscription\",\r\n exportDownload: \"Report download\",\r\n export: \"Export\",\r\n downloadFailed: \"The report could not be fetched, try again later!\",\r\n noData: \"There was no data found in the selected time span\",\r\n fields: {\r\n name: \"Report name\",\r\n type: \"Type\",\r\n tempo: \"Interval\",\r\n createdAt: \"Created\",\r\n updatedAt: \"Updated\",\r\n id: \"ID\",\r\n refrenceDate: \"Reference day\",\r\n reportContacts: \"Report contacts\",\r\n lastSent: \"Last Sent\",\r\n },\r\n\r\n tempo: {\r\n desc: {\r\n 0: \"Send the daily report from now on at 03:00\",\r\n 1: \"Send the weekly report on mondays with the previous week's data.\",\r\n 2: \"Send the monthly report on the 1st day of the month for the previous month.\",\r\n },\r\n\r\n 0: \"Daily\",\r\n 1: \"Weekly\",\r\n 2: \"Monthly\",\r\n },\r\n\r\n types: {\r\n regular: \"Regular\",\r\n trend: \"Trend\",\r\n },\r\n },\r\n\r\n script: {\r\n name: \"Scripts\",\r\n create: \"Create a new Script\",\r\n edit: \"Edit Script\",\r\n tagsTitle: \"Node ID and Sensors\",\r\n placeHolderContent: ` // Convert the temperature to fahrenheit \r\n var tempToFahrenheit = Data.Read(\"INSERT-DEVEUI\", \"INSERT-KEY\") * 9/5 + 32;\r\n\r\n // Write the new value to a new key\r\n Data.Write(\"INSERT-DEVEUI\", \"INSERT-KEY\", tempToFahrenheit);`,\r\n examples: \"Examples\",\r\n helpTitle: \"Examples and help\",\r\n\r\n type: {\r\n 0: \"Looping Script\",\r\n 1: \"Invoked Script\",\r\n 2: \"Triggered Script\",\r\n },\r\n\r\n fields: {\r\n name: \"Name\",\r\n type: \"Type\",\r\n interval: \"Interval\",\r\n lastRun: \"Last run time\",\r\n enabled: \"Enabled\",\r\n boundTag: \"Triggering tag\",\r\n },\r\n\r\n validation: {\r\n intervalRequired: \"This field must be filled\",\r\n intervalMinValue: \"The minimum value for the interval is 0\",\r\n },\r\n },\r\n\r\n user: {\r\n name: \"User\",\r\n\r\n email: \"Email\",\r\n role: \"Role\",\r\n\r\n userInfo: \"Personal information\",\r\n\r\n loginFailed: \"Login failed\",\r\n signInFailed: \"Email/password do not match try again.\",\r\n signInError: \"Unexpected error during login\",\r\n loginSuccessful: \"Logged in\",\r\n updateFailed: \"Update failed\",\r\n edit: \"Edit\",\r\n forgotPassword: \"Forgot password?\",\r\n\r\n fields: {\r\n firstName: \"First name\",\r\n lastName: \"Last name\",\r\n phoneNumber: \"Phone number\",\r\n email: \"Email\",\r\n password: \"Password\",\r\n newPassword: \"New Password\",\r\n passwordConfirm: \"Confirm Password\",\r\n\r\n phoneNumerHint:\r\n \"Hint: Use international formatting. Ex for a Swedish number (46703292943)\",\r\n },\r\n },\r\n\r\n application: {\r\n name: \"Application | Applications\",\r\n noCompanyError: \"You must register a company first to create applications\",\r\n applicationCreated: \"Your new application has been created\",\r\n choose: \"Choose a Application\",\r\n create: \"Create a new Application\",\r\n validation: {\r\n nameRequired: \"Your application must have a name\",\r\n nameMax: \"Name must be fewer than 255 characters\",\r\n },\r\n fields: {\r\n id: \"ID\",\r\n name: \"Name\",\r\n createdAt: \"Created\",\r\n owner: \"Owner\",\r\n },\r\n },\r\n\r\n alarm: {\r\n name: \"Alarm\",\r\n create: \"Add new alarm rule\",\r\n affirmation: \"Confirm\",\r\n history: \"Alarm history\",\r\n\r\n activeAlarm: \"Alarm warnings\",\r\n\r\n test: {\r\n title: \"Test of settings\",\r\n settings: \"Test email and sms settings\",\r\n email: \"Email address\",\r\n phonenumber: \"Phonenumber (46....)\",\r\n },\r\n\r\n priority: {\r\n desc: {\r\n a: \"Send both email and SMS\",\r\n b: \"Send only SMS\",\r\n c: \"Send only mail notification\",\r\n },\r\n },\r\n\r\n fields: {\r\n id: \"ID\",\r\n name: \"Name\",\r\n priority: \"Priority\",\r\n alarmDelay: \"Delay time before alarm is raised\",\r\n active: \"Alarm status\",\r\n tagDataKey: \"Sensor\",\r\n tag: \"Node\",\r\n message: \"Alarm message\",\r\n limitHigh: \"High Threshold\",\r\n limitLow: \"Low Threshold\",\r\n contactType: \"Contact type\",\r\n alarmContacts: \"Alarm contacts\",\r\n activeDays: \"Days activated\",\r\n limit: \"Low and high alarm thresholds\",\r\n activeAlarms: \"Alarm warnings\",\r\n messageSent: \"Alarm message sent\",\r\n reset: \"Reset\",\r\n triggered: \"Triggered\",\r\n user: \"Reset by\",\r\n value: \"Triggering value\",\r\n signalType: \"Signal Type\",\r\n digitalTrigger: \"Trigger On\",\r\n triggerHigh: \"Signal High\",\r\n triggerLow: \"Signal Low\",\r\n advanced: \"Advanced alarm\",\r\n },\r\n\r\n validation: {\r\n nameRequired: \"This field must be filled in\",\r\n max: \"Max characters is 255\",\r\n },\r\n },\r\n\r\n batteryStatus: {\r\n levels: \"Battery level\",\r\n value: \"Value\",\r\n lastSeen: \"The latest value\",\r\n label: \"Battery voltage\",\r\n },\r\n\r\n tagdata: {\r\n name: \"Data\",\r\n amount: \"Number of data points collected:\",\r\n notation: \"{0}\",\r\n latestactivity: \"Latest activity\",\r\n latestvalue: \"Latest value\",\r\n defaultKey: \"Standard key\",\r\n\r\n fields: {\r\n id: \"ID\",\r\n name: \"Name\",\r\n key: \"Sensor\",\r\n value: \"Value\",\r\n createdAt: \"Created\",\r\n label: \"Label\",\r\n },\r\n },\r\n\r\n tag: {\r\n choose: \"Choose Node\",\r\n search: \"Search Node\",\r\n chooseDecoder: \"Choose a decoder\",\r\n decoder: \"Decoder\",\r\n name: \"Nodes\",\r\n amount: \"Number of nodes:\",\r\n notation: \"{0}\",\r\n details: \"Sensor details\",\r\n removeImage: \"Delete image\",\r\n chooseKey: \"Choose key\",\r\n saveKeyAsDefault: \"Default\",\r\n newKey: \"New Sensor\",\r\n filter: \"Filter Nodes\",\r\n generateId: \"Generate ID\",\r\n\r\n uploadExplanation: \"Drag your Csv file or click here to upload Nodes\",\r\n uploadExplanationHint: \"You can download a example csv file here: \",\r\n exampleLink: \"CSV Example\",\r\n\r\n publishing: {\r\n title: \"Publishing\",\r\n reset: {\r\n 0: \"Reset MQTT Publishing\",\r\n 1: \"Reset Sparkplug Publishing\",\r\n 2: \"Reset Modbus Publishing\",\r\n 3: \"Reset OPC-UA Publishing\",\r\n },\r\n\r\n mqtt: \"MQTT\",\r\n modbus: \"Modbus\",\r\n sparkplug: \"Sparkplug\",\r\n opc: \"OPC-UA\",\r\n },\r\n\r\n tabs: {\r\n settings: \"Settings\",\r\n data: \"Data\",\r\n events: \"Event Log\",\r\n },\r\n\r\n createSteps: {\r\n step1: \"Type of Node\",\r\n step2: \"Choose Application\",\r\n step3: \"Choose Decoder\",\r\n step4: \"Set Keys\",\r\n step5: \"MQTT\",\r\n finish: \"Done\",\r\n\r\n spotIo4: \"SpotIO selection\",\r\n modbus4: \"Modbus\",\r\n opc: \"OPC-UA\",\r\n },\r\n\r\n picker: {\r\n step1: \"Select a Node\",\r\n step2: \"Select a Sensor\",\r\n },\r\n\r\n tagPool: {\r\n tagPool: \"Nodes pool\",\r\n deveui: \"Deveui\",\r\n createdAt: \"Created\",\r\n hide: \"Hide from list\",\r\n show: \"Show in default list\",\r\n hiddenTags: \"Hidden nodes\",\r\n take: \"Add sensor\",\r\n },\r\n\r\n fields: {\r\n id: \"ID\",\r\n name: \"Name\",\r\n deveui: \"DevEUI\",\r\n appKey: \"AppKey\",\r\n appEui: \"AppEUI\",\r\n applicationId: \"Application\",\r\n profile: \"Profile\",\r\n lat: \"Latitude\",\r\n long: \"Longitude\",\r\n latAndLng: \"Latitude and Longitude\",\r\n image: \"Image of sensor installation\",\r\n battery: \"Battery Level\",\r\n activeAlarm: \"Alarm\",\r\n activeData: \"Active\",\r\n latestValue: \"Latest Value\",\r\n location: \"Location\",\r\n dataPoints: \"Datapoints/24h\",\r\n type: \"Type\",\r\n nodeType: \"Node Type\",\r\n },\r\n\r\n nodeTypes: {\r\n 0: \"LORA\",\r\n 1: \"API\",\r\n 2: \"MQTT\",\r\n 3: \"NR\",\r\n 4: \"SPARKPLUG\",\r\n 5: \"SpotIO\",\r\n 6: \"Modbus\",\r\n 7: \"Opc-UA\",\r\n },\r\n },\r\n\r\n license: {\r\n usedGateways: \"Total used Gateways in License\",\r\n usedNodes: \"Total used Nodes in License\",\r\n editMaxTitle: \"Edit limits\",\r\n companySettings: \"Account settings\",\r\n licenseManagement: \"License management\",\r\n publicKey: \"Public key\",\r\n upload: \"Upload a new License file\",\r\n uploadHint: \"Drag and drop you'r new License-file\",\r\n license: \"License\",\r\n licensee: \"License Holder\",\r\n coveredFeatures: \"Covered Features\",\r\n fields: {\r\n email: \"Email\",\r\n name: \"Name\",\r\n maxCompanies: \"Max Companies\",\r\n maxGateways: \"Max Gateways\",\r\n maxNodes: \"Max Nodes\",\r\n decoderIncluded: \"Decoder Included\",\r\n whiteLabel: \"White-Label\",\r\n\r\n licenseId: \"License ID\",\r\n status: \"Status\",\r\n publicKey: \"Public Key\",\r\n expires: \"Expires\",\r\n },\r\n\r\n limitations: {\r\n fields: {\r\n companyId: \"Account ID\",\r\n companyName: \"Account\",\r\n maxGateways: \"Max Gateways (0 = Unlimited)\",\r\n maxNodes: \"Max Nodes (0 = Unlimited)\",\r\n updatedAt: \"Updated\",\r\n\r\n currentNodes: \"Current Noder\",\r\n currentGateways: \"Current Gateways\",\r\n },\r\n\r\n errors: {\r\n gateway:\r\n \"License does't allow for more Gateways, contact your distributer to extend\",\r\n tag: \"License does't allow for more Nodes, contact your distributer to extend\",\r\n company:\r\n \"License does't allow for more Accounts, contact your distributer to extend\",\r\n expiresIn:\r\n \"License expires in {0} days, contact your distributer to extend\",\r\n },\r\n },\r\n\r\n errors: {\r\n couldNotSetLimits: \"Could not set the limits for the selected Account\",\r\n },\r\n\r\n tos: {\r\n title: \"License Agreement\",\r\n description: \"Read and accept the license agreement to proceed to login\",\r\n accept: \"Accept\",\r\n checkbox: \"Accept License Agreement\",\r\n },\r\n },\r\n\r\n validation: {\r\n required: \"{0} must be filled in\",\r\n max: \"{0} must be {1} characters\",\r\n requiredSingle: \"This field must be filled in\",\r\n toLong: \"This field contains too many characters\",\r\n contryCodeError:\r\n \"Don't forget that the phone number must have country code (e.g. 4607xxxxxxxx)\",\r\n passwordMissmatch: \"Passwords do not match\",\r\n deveuiConflict: \"Node with this DevEUI already exists on this server\",\r\n },\r\n\r\n warning: {\r\n amount: \"Active Alarms:\",\r\n notation: \"{0}\",\r\n },\r\n\r\n mqtt: {\r\n settingsTabTitle: \"MQTT Brokers\",\r\n brokerListTitle: \"MQTT Brokers\",\r\n createTitle: \"Add a new MQTT Broker\",\r\n updateTitle: \"Update MQTT Broker\",\r\n selectBroker: \"Select a MQTT Broker\",\r\n testBroker: \"Test Configuration\",\r\n topicCreateTitle: \"MQTT Topics\",\r\n topicDescription:\r\n \"The topics selected will be subscribed to through the configured broker. The topics should be specific to the device, if wildcard is used (+) it should be a single level wildcard. Multilevel wildcards (#) will be transformed into single level wildcards.\",\r\n topicAdd: \"Add a new Topic\",\r\n topicAlreadyExists: \"The selected topic already exists\",\r\n createTopicTitle: \"Create a new Subscription\",\r\n\r\n sparkplug: {\r\n use: \"Use Sparkplug Publishing\",\r\n meta: {\r\n hint: {\r\n edgeId: \"Sparkplug edge id\",\r\n groupId: \"Sparkplug group id\",\r\n },\r\n\r\n edgeId: \"Edge ID\",\r\n groupId: \"Grupp ID\",\r\n useNameForPublish: \"Use name instead of NodeID\",\r\n },\r\n },\r\n\r\n meta: {\r\n fields: {\r\n topic: \"Topic\",\r\n publishTopic: \"Publish Topic (Optional)\",\r\n publishTopicHint: \"Cannot be the same as any of the Subscribe Topics\",\r\n parsingTopic: \"Decoder Type\",\r\n payloadTest: \"Payload to test\",\r\n testTopic: \"Expected topic in Decode function\",\r\n },\r\n },\r\n\r\n sslmodes: {\r\n 0: \"None\",\r\n 1: \"CA Signed server certificate\",\r\n 2: \"Self-signed server certificate\",\r\n },\r\n\r\n versions: {\r\n 0: \"3.1.1\",\r\n 1: \"3.1.0\",\r\n },\r\n\r\n validation: {\r\n notfound: \"Could not find Broker\",\r\n },\r\n\r\n fields: {\r\n status: \"Status\",\r\n hostname: \"Hostname\",\r\n port: \"Port\",\r\n version: \"MQTT Version\",\r\n sslmode: \"SSL/TLS Mode\",\r\n CACertificate: \"CA Certificate\",\r\n ClientCertificate: \"Client Certificate\",\r\n ClientKey: \"Client Key\",\r\n KeyPassPhrase: \"Key Passphrase (Optional)\",\r\n useAuth: \"Use Authentication\",\r\n username: \"Username\",\r\n password: \"Password\",\r\n isGlobal: \"Is Global Broker\",\r\n\r\n metrics: {\r\n messages: {\r\n total: \"Total Messages\",\r\n week: \"Messages this Week\",\r\n day: \"Messages this Day\",\r\n },\r\n\r\n publish: {\r\n total: \"Total Published\",\r\n week: \"Week Published\",\r\n day: \"Day Published\",\r\n },\r\n },\r\n },\r\n },\r\n};\r\n","export default {\r\n routes: {\r\n home: \"Hem\",\r\n login: \"Login\",\r\n register: \"Registrera\",\r\n registerCompany: \"Nytt Konto\",\r\n logout: \"Logout\",\r\n\r\n company: \"Företag\",\r\n dashboard: \"Dashboard\",\r\n application: \"Applikationer\",\r\n alarm: \"Larmhantering\",\r\n\r\n user: \"Användare\",\r\n tagdata: \"Data\",\r\n tag: \"Noder\",\r\n script: \"Script-motor\",\r\n report: \"Rapport\",\r\n contact: \"Kontakt\",\r\n apiRef: \"API-Dokumentation\",\r\n shop: \"Köp noder\",\r\n manual: \"Manual\",\r\n settings: \"Inställningar\",\r\n signalTest: \"Fälttestare\",\r\n gateway: \"Gateways\",\r\n news: \"Nyheter\",\r\n roles: \"Roller\",\r\n\r\n userEdit: \"Konto\",\r\n\r\n superadmin: \"Admin\",\r\n },\r\n\r\n opc: {\r\n title: \"OPC-UA\",\r\n\r\n server: {\r\n autocomplete: \"Välj server\",\r\n title: \"OPC-UA Servrar\",\r\n fields: {\r\n opcServerId: \"OPC Server ID\",\r\n serverUrl: \"Server URL\",\r\n useUsernameAndPassword: \"Använd Användarnamn och Lösenord\",\r\n updatedAt: \"Uppdaterad\",\r\n createdAt: \"Skapad\",\r\n },\r\n },\r\n\r\n node: {\r\n fields: {\r\n serverId: \"Server\",\r\n key: \"Nyckel\",\r\n nodeId: \"NodeID\",\r\n },\r\n\r\n hints: {\r\n nodeId: \"Exempel, ns=1;i=1001\",\r\n },\r\n },\r\n },\r\n\r\n modbus: {\r\n title: \"Modbus\",\r\n\r\n master: {\r\n title: \"Modbus Masters\",\r\n create: \"Lägg till en ny Master\",\r\n\r\n fields: {\r\n modbusMasterId: \"Master ID\",\r\n name: \"Benämning\",\r\n host: \"IP\",\r\n port: \"Port\",\r\n },\r\n },\r\n\r\n register: {\r\n title: \"Modbus Register\",\r\n create: \"Lägg till ett nytt register\",\r\n poll: \"Poll registers\",\r\n polledValue: \"Hämtat värde\",\r\n\r\n fields: {\r\n modbusRegisterId: \"Register ID\",\r\n modbusMasterId: \"Master ID\",\r\n master: \"Master\",\r\n slave: \"Slav ID\",\r\n nodeId: \"Nod ID\",\r\n key: \"Sensor nyckel\",\r\n register: \"Register\",\r\n pollInterval: \"Poll interval (Sekunder)\",\r\n registerType: \"Register-typ\",\r\n valueType: \"Värde-typ\",\r\n action: \"Pull/Push\",\r\n byteOrder: \"Byte-order\",\r\n createdAt: \"Skapad\",\r\n updatedAt: \"Uppdaterad\",\r\n },\r\n\r\n valueTypes: {\r\n 0: \"FLOAT\",\r\n 1: \"DOUBLE\",\r\n 2: \"INT16\",\r\n 3: \"UINT16\",\r\n 4: \"INT32\",\r\n 5: \"UINT32\",\r\n 6: \"BOOL\",\r\n },\r\n\r\n types: {\r\n 0: \"Holding Register\",\r\n 1: \"Coil\",\r\n 2: \"Analog Input\",\r\n 3: \"Digital Input\",\r\n },\r\n\r\n byteOrders: {\r\n 0: \"ABCD\",\r\n 1: \"DCBA (Default)\",\r\n 2: \"BADC\",\r\n 3: \"CDAB\",\r\n },\r\n },\r\n\r\n validation: {\r\n required: \"Detta fält krävs\",\r\n slaveMinVal: \"SlavID måste vara större än 1\",\r\n slaveMaxVal: \"SlavID måste vara mindre än 255\",\r\n registerMaxVal: \"Register måste vara mindre än 67000\",\r\n registerMinVal: \"Register måste vara större eller lika med 0\",\r\n pollIntervalMin: \"Poll Interval kan inte vara mindre än 60 sekunder\",\r\n registerAllreadyReadFrom:\r\n \"Detta register används redan av någon av dina andra register\",\r\n },\r\n },\r\n\r\n spotIo: {\r\n fields: {\r\n key: \"SpotIO Nykel\",\r\n },\r\n validation: {\r\n spotIoKeyRequired: \"'SpotIO Nykel' måste vara ifyld\",\r\n spotIoKeyUnique: \"'SpotIO Nykel' måste vara unik för Noden\",\r\n },\r\n },\r\n\r\n colorPicker: {\r\n colorForExpressionLabel: \"Färg för värde\",\r\n\r\n so_style_meta_title_text: \"Titel textfärg\",\r\n so_style_meta_title_background: \"Titel bakgrundsfärg\",\r\n so_style_meta_content_title: \"Innehåll textfärg\",\r\n so_style_meta_content_background: \"Innehåll bakgrundsfärg\",\r\n so_style_meta_fill_level_color: \"Fyllnads-färg\",\r\n so_style_meta_color_for_expression: \"Färg för värde\",\r\n so_style_meta_action_for_content: \"Färg för värde\",\r\n\r\n iconColor: \"Ikon färg\",\r\n backgroundColor: \"Bakgrundsfärg\",\r\n },\r\n\r\n widget: {\r\n weather: {\r\n pickTitle: \"Position för SMHI väder-data\",\r\n },\r\n\r\n form: {\r\n step1: \"Widget\",\r\n step2: \"Slots / Keys\",\r\n step3: \"Attributes\",\r\n },\r\n },\r\n\r\n slot: {\r\n addHint: \"Lägg till en Nod Slot\",\r\n resetSlots: \"Återställ alla slots\",\r\n slotIndex: \"Slot Index\",\r\n priorityTitle: \"Slot prioritet\",\r\n priorityDescription:\r\n \"Slot prioriteten används för att välja vilka Sensorer som ska visas först\",\r\n },\r\n\r\n templateDashboard: {\r\n title: \"Dashboard Mallar\",\r\n deleteError: \"Kunde inte tabort template\",\r\n deleteSuccess: \"Borttagen\",\r\n\r\n saveDashboard: \"Spara\",\r\n\r\n defaults: {\r\n name: \"Ny Mall Dashboard\",\r\n },\r\n\r\n fields: {\r\n name: \"Namn\",\r\n dashboardType: \"Typ\",\r\n createdAt: \"Skapad\",\r\n updatedAt: \"Uppdaterad\",\r\n },\r\n\r\n addSlot: \"Lägg till Nod-Slot\",\r\n numberOfAvailableSlots: \"Antal Nod-Slots: {num}\",\r\n\r\n dashboardTypeTitle: \"Dashboard typ\",\r\n dashboardType: {\r\n 0: \"Full Dashboard\",\r\n 1: \"Sido / Kart Dashboard\",\r\n 2: \"Nod Dashboard\",\r\n },\r\n\r\n slots: {},\r\n },\r\n\r\n camOnline: {\r\n servers: \"Cam-Online Servers\",\r\n couldNotFetchServers: \"Kunde inte hämta Cam-Online Servrar\",\r\n couldNotCreateServer: \"Något gick fel när Cam-Online Server lades till\",\r\n couldNotDeleteServer: \"Något gick fel vid borttagande av Cam-Online Server\",\r\n serverSelect: \"Välj Cam-Online Server\",\r\n streamSelect: \"Välj en kamera\",\r\n createDialogTitle: \"Lägg till en ny server\",\r\n tabTitle: \"Cam-Online\",\r\n fields: {\r\n url: \"Url (Ex: https://portal.cam-online.se)\",\r\n accessToken: \"AccessToken\",\r\n isGlobal: \"Global Server\",\r\n },\r\n },\r\n\r\n roles: {\r\n toolbarTitle: \"Roller\",\r\n permissionCounts: \"Rättigheter\",\r\n\r\n missingRecommendedTitle: \"Alla rekommenderade rättigheter ej valda.\",\r\n missingRecommendedButton: \"Klicka här för att lägga till saknade\",\r\n\r\n pickPermissionsTitle: \"Rättighetsväljare\",\r\n pickPermissionsDesc:\r\n \"Du kan välja en basroll att basera den nya rollen på nedan eller börja helt från noll. Om du väljer rättigheter som behöver andra kommer du rekommenderas dessa. De visas i listan med Orange färg.\",\r\n\r\n fields: {\r\n name: \"Namn\",\r\n permissionCount: \"Antal Rättigheter\",\r\n isDefault: \"Är Basroll\",\r\n isSuper: \"Är Admin\",\r\n },\r\n\r\n layerTypes: {\r\n 0: \"Grundrättigheter För Gränssnittet\",\r\n 1: \"Huvudrättigheter För Gränssnittet\",\r\n 2: \"Rättigheter Till API\",\r\n },\r\n },\r\n\r\n eventhub: {\r\n waiting: \"Väntar på nya meddelanden...\",\r\n\r\n copySuccess: \"Payload är kopierad\",\r\n copyError: \"Kunde inte kopiera payload\",\r\n\r\n events: {\r\n data: \"Ny data\",\r\n endpoint: \"ENDPOINT\",\r\n },\r\n },\r\n\r\n downlinks: {\r\n editorTitle: \"Downlinks\",\r\n\r\n validation: {\r\n port: \"Port måste vara över 0\",\r\n },\r\n },\r\n\r\n conditionTree: {\r\n selectValueTypeTitle: \"Välj värdes typ\",\r\n selectType: \"Välj typ\",\r\n selectValue: \"Välj värde\",\r\n chooseSensor: \"Välj Sensor\",\r\n\r\n textInputPlaceholder: \"Text Värde\",\r\n numberInputPlaceholder: \"Nummer Värde\",\r\n\r\n types: {\r\n 0: \"Sensor Value\",\r\n 1: \"Text\",\r\n 2: \"Number\",\r\n 3: \"Time\",\r\n 4: \"Inget Värde\",\r\n },\r\n\r\n ops: {\r\n greater: \"Större än\",\r\n less: \"Mindre än\",\r\n equal: \"Samma som\",\r\n greaterOrEqual: \"Större eller lika än\",\r\n lessOrEqual: \"Mindre eller lika än\",\r\n notEqual: \"Inte\",\r\n },\r\n },\r\n\r\n accessToken: {\r\n title: \"Åtkomsttoken\",\r\n newToken: \"Skapa en ny token\",\r\n cardNewTitle: \"Ny token\",\r\n cardTitle: \"Åtkomsttoken\",\r\n fields: {\r\n id: \"Id\",\r\n label: \"Titel\",\r\n token: \"Token\",\r\n isCompany: \"Företagstoken\",\r\n },\r\n },\r\n\r\n news: {\r\n cannotGetNews: \"Kunde inte hämta nyheterna från Nodeledge AB.\",\r\n },\r\n\r\n gateway: {\r\n toolbar: \"Gateways\",\r\n toolbarTitle: \"Gateways\",\r\n bestGw: \"Bästa gateway\",\r\n\r\n pickLocationButton: \"Ange position\",\r\n fields: {\r\n name: \"Namn\",\r\n macAddress: \"GatewayEUI\",\r\n latitude: \"Latitude\",\r\n longitude: \"Longitude\",\r\n createdAt: \"Skapad\",\r\n },\r\n },\r\n\r\n signalTest: {\r\n toolbarTitle: \"Fälttestare\",\r\n startTest: \"Starta ett nytt test\",\r\n endTest: \"Avsluta test\",\r\n peekTest: \"Titta på test\",\r\n createToolbar: \"Starta ett nytt test\",\r\n rawData: \"Rådata\",\r\n updateTimer: \"Uppdateringstimer\",\r\n\r\n fields: {\r\n testId: \"Test-ID\",\r\n description: \"Beskrivning\",\r\n startTest: \"Start\",\r\n endTest: \"Slut\",\r\n active: \"Aktiv\",\r\n\r\n avgSnr: \"Genomsnittlig SNR\",\r\n avgRssi: \"Genomsnittlig RSSI\",\r\n\r\n data: {\r\n rssi: \"RSSI\",\r\n snr: \"SNR\",\r\n lat: \"LATITUDE\",\r\n lng: \"LONGITUDE\",\r\n createdAt: \"TID\",\r\n },\r\n },\r\n\r\n tab: {\r\n map: \"MAP\",\r\n data: \"STATISTIK\",\r\n },\r\n },\r\n\r\n trend: {\r\n res: {\r\n week: \"Upplösning: Vecka\",\r\n day: \"Upplösning: Dag\",\r\n hour: \"Upplösning: 1 Timme\",\r\n five: \"Upplösning: 5 Timmar\",\r\n },\r\n },\r\n\r\n notifications: {\r\n clearNotifications: \"Markera alla som lästa\",\r\n noNotifications: \"Det finns inga nya notiser.\",\r\n },\r\n\r\n landing: {\r\n slogan: \"VISUALIZATION MADE EASY\",\r\n or: \"ELLER\",\r\n key: {\r\n title: \"Funktioner\",\r\n 1: \"Nodhantering\",\r\n 2: \"Visualisering\",\r\n 3: \"Flera Dashboards\",\r\n 4: \"Alarmhantering\",\r\n 5: \"Personalhantering\",\r\n 6: \"Skriptmotor\",\r\n\r\n description: {\r\n 1: \"Hantera sensorer för datahantering.\",\r\n 2: \"Få din sensordata visualiserad på det sätt du vill se din information.\",\r\n 3: \"Skapa egna dashboards för ditt användningsområde.\",\r\n 4: \"Alarmhantering för kritiska användningsområden.\",\r\n 5: \"Hantera användarkonton för ditt företag.\",\r\n 6: \"Avancerade användare kan skapa script för att manipulera data.\",\r\n },\r\n },\r\n\r\n usecases: {\r\n title: \"Applikation\",\r\n 1: \"Miljösensorer\",\r\n 2: \"Elsensorer\",\r\n 3: \"Rörelsesensorer\",\r\n 4: \"Temperatursensor\",\r\n\r\n description: {\r\n 1: \"SENSORONLINE passar otroligt bra för smarta jordbrukslösningar så som de på Ljusgårda redan bygger.\",\r\n 12: \"Läs mer om Ljusgårda.\",\r\n 2: \"Mät ström för gatlyktor i din stad. Med skriptmotorn kan du göra så att datan blir lätt att tyda.\",\r\n 3: \"Mät hur många människor som kommer och går från din anläggning.\",\r\n 4: \"Självklart är temperatur-visualisering en nyckel för SENSORONLINE-platformen. Företag väljer att mäta och hantera sina temperaturer med SENSORONLINE.\",\r\n },\r\n },\r\n\r\n help: {\r\n title: \"KONTAKTA OSS\",\r\n\r\n sensors: {\r\n title: \"Behöver du några nya sensorer?\",\r\n description:\r\n \"Om du behöver hjälp med att lösa ett problem eller få mer kontroll på dina tillgångar. Eller hur du kan visualisera dina sensorer på ett sätt som underlättar för din verksamhet. Tveka inte att höra av dig till oss för att få hjälp. \\n Du kan kolla vårt portfolio av \",\r\n store: \"noder som vi säljer hos Nodeledge AB.\",\r\n },\r\n\r\n api: {\r\n title: \"Använd vårt API\",\r\n description:\r\n \"Du kan givetvis använda vårt API för att sätta in data eller hämta data från och till befintliga system. \",\r\n },\r\n\r\n contact: {\r\n title: \"Är du intresserad? Ta kontakt!\",\r\n siencepark: \"Skövde Science Park\",\r\n address: \"Kaplansgatan 16B\",\r\n postal: \"521 32 Skövde\",\r\n country: \"Sverige\",\r\n phoneTitle: \"Telefon\",\r\n phonenumber: \"+46 (0) 500 600 022\",\r\n phonenumber2: \"+46 (0) 733 165 100\",\r\n emailTitle: \"Email\",\r\n email: \"info@sensor-online.se\",\r\n },\r\n },\r\n },\r\n\r\n valueForm: {\r\n target: \"Värde\",\r\n\r\n actionType: \"Typ\",\r\n\r\n actionTypes: {\r\n color: \"Färg\",\r\n value: \"Värde\",\r\n\r\n desc: {\r\n colorBackground: \"Bakgrundsfärg\",\r\n colorBorder: \"Borderfärg\",\r\n colorText: \"Textfärg\",\r\n value: \"Värde för värde\",\r\n },\r\n },\r\n\r\n op: \"Operation\",\r\n ops: {\r\n eq: \"lika än\",\r\n notEq: \"inte lika än\",\r\n greater: \"större än\",\r\n less: \"mindre än\",\r\n greaterOrEq: \"större eller lika än\",\r\n lessOrEq: \"mindre eller lika än\",\r\n },\r\n },\r\n\r\n imageMap: {\r\n chooseTag: \"Välj typ av markör\",\r\n iconFormTitle: \"Ikon\",\r\n icon: {\r\n width: \"Ikon Bredd\",\r\n height: \"Ikon Höjd\",\r\n anchorx: \"Ikon Offset Bredd\",\r\n anchory: \"Ikon Offset Höjd\",\r\n },\r\n\r\n fontSelectorTitle: \"Teckenstorlek\",\r\n nodeSelection: \"Nod\",\r\n valueFormPanel: \"Värden\",\r\n\r\n colors: {\r\n background: \"Bakgrund\",\r\n border: \"Border\",\r\n text: \"Text\",\r\n },\r\n },\r\n\r\n log: {\r\n type: {\r\n sms: \"SMS\",\r\n app: \"Applikation\",\r\n warning: \"Varning\",\r\n error: \"Error\",\r\n userevent: \"Userevent\",\r\n login: \"Login\",\r\n },\r\n\r\n logTable: {\r\n title: \"Logg\",\r\n },\r\n\r\n activeAlarms: {\r\n title: \"Aktiva larm\",\r\n },\r\n\r\n activeUsersTable: {\r\n title: \"Inloggade användare\",\r\n },\r\n\r\n fields: {\r\n type: \"Typ\",\r\n user: \"Användare\",\r\n message: \"Meddelande\",\r\n createdAt: \"Skapad\",\r\n\r\n status: \"Status\",\r\n lastAction: \"Event\",\r\n lastSeen: \"Timestamp\",\r\n\r\n alarm: {\r\n name: \"Namn\",\r\n value: \"Värde\",\r\n messageSent: \"Skickat notifikation\",\r\n },\r\n },\r\n },\r\n\r\n common: {\r\n yes: \"Ja\",\r\n no: \"Nej\",\r\n on: \"På\",\r\n off: \"Av\",\r\n timestamp: \"Tidsstämpel\",\r\n lang: \"Språk\",\r\n error: \"Ett fel uppstod försök igen senare\",\r\n edit: \"Redigera\",\r\n delete: \"Ta bort\",\r\n reset: \"Återställ\",\r\n purge: \"Radera\",\r\n submit: \"Skicka\",\r\n create: \"Skapa\",\r\n update: \"Uppdatera\",\r\n get: \"Hämta\",\r\n run: \"Kör\",\r\n address: \"Adress\",\r\n link: \"Länk\",\r\n height: \"Höjd\",\r\n width: \"Bredd\",\r\n new: \"Ny\",\r\n value: \"Värde\",\r\n newValue: \"Nytt Värde\",\r\n nothingToSee: \"Inget att se här\",\r\n next: \"Nästa\",\r\n label: \"Label\",\r\n editLabel: \"Redigera Label\",\r\n explanation: \"Förklaring\",\r\n never: \"Aldrig\",\r\n\r\n hours: \"Timmar\",\r\n mintues: \"Minuter\",\r\n\r\n search: \"Sök\",\r\n close: \"Stäng\",\r\n cancel: \"Avbryt\",\r\n\r\n login: \"Logga in\",\r\n register: \"Registrera dig\",\r\n email: \"Email\",\r\n password: \"Lösenord\",\r\n confirmPassword: \"Upprepa lösenord\",\r\n newPassword: \"Nytt lösenord\",\r\n forgotPassword: \"Glömt lösenord\",\r\n\r\n createdAt: \"Skapad\",\r\n updatedAt: \"Uppdaterad\",\r\n\r\n save: \"Spara\",\r\n show: \"Visa\",\r\n updated: \"Uppdaterad\",\r\n created: \"Skapad\",\r\n deleted: \"Raderad\",\r\n back: \"Tillbaka\",\r\n send: \"Skicka\",\r\n refresh: \"Uppdatera\",\r\n preview: \"Preview\",\r\n previewSpacing: \"Plats för andra komponenter\",\r\n saveColor: \"Spara färg\",\r\n alarmColorPrecedence:\r\n \"Larmfärger kommer alltid väljas före de manuellt valda färgerna, tvinga överskrivning i attributer om detta inte är vad som önskas.\",\r\n\r\n add: \"Lägg till\",\r\n clear: \"Rensa\",\r\n success: \"OK!\",\r\n\r\n settings: \"Inställningar\",\r\n\r\n noTagOrAppChoosen: \"Noder och/eller Applikation saknas\",\r\n noDataFound: \"Ingen data funnen\",\r\n darkTheme: \"Mörkt tema\",\r\n\r\n active: \"Aktiverat\",\r\n notActive: \"Avstängt\",\r\n\r\n sent: \"Skickat\",\r\n notSent: \"Inte Skickat\",\r\n\r\n loginOrRegister: \"Logga in eller registrera dig\",\r\n\r\n or: \"Eller\",\r\n\r\n dashboard: \"Gå till Dashboard\",\r\n switchCompany: \"Växla Konto\",\r\n\r\n copy: \"Kopiera\",\r\n disagree: \"Nej\",\r\n verify: \"Är du säker att du vill fortsätta?\",\r\n verifyDelete: \"Är du säker att du vill ta bort denna resurs?\",\r\n\r\n accept: \"Ja\",\r\n\r\n registerCompany: \"Skapa nytt konto\",\r\n\r\n inactiveSensors: \"Inaktiva sensorer\",\r\n activeSensors: \"Aktiva sensorer\",\r\n sensorStatus: \"Nod-status\",\r\n sensorName: \"Nod-namn\",\r\n\r\n updatesPending: \"Ändringar sker vid sidomladdning\",\r\n pickLocationConfirm: \"Vill du spara positionen på denna resurs?\",\r\n\r\n getMorePages: \"Ladda mer\",\r\n\r\n nextStep: \"Nästa\",\r\n previousStep: \"Tillbaka\",\r\n\r\n toFewBytes: \"För lite bytes\",\r\n byteInputRequired: \"Du måste fylla i detta fält\",\r\n\r\n size: \"Storlek\",\r\n test: \"Testa\",\r\n\r\n searchType: {\r\n TAG: \"Noder\",\r\n ALARM: \"Alarm\",\r\n APPLICATION: \"Applikationer\",\r\n DASHBOARD: \"Dashboards\",\r\n GATEWAY: \"Gateways\",\r\n SCRIPT: \"Scripts\",\r\n },\r\n\r\n dateLabel: \"Datum\",\r\n timeLabel: \"Tid\",\r\n\r\n time: {\r\n day: \"Dag\",\r\n hour: \"Timma\",\r\n quarterHour: \"Kvart\",\r\n minute: \"Minut\",\r\n },\r\n\r\n days: {\r\n monday: \"Måndag\",\r\n tuesday: \"Tisdag\",\r\n wednesday: \"Onsdag\",\r\n thursday: \"Torsdag\",\r\n friday: \"Fredag\",\r\n saturday: \"Lördag\",\r\n sunday: \"Söndag\",\r\n },\r\n\r\n dateRange: {\r\n 0: \"Senaste timmen\",\r\n 1: \"Senaste 5 timmarna\",\r\n 2: \"Senaste 24 timmarna\",\r\n 3: \"Senaste 7 dagarna\",\r\n 4: \"Senaste 30 dagarna\",\r\n },\r\n\r\n staticinformation: {\r\n datapoints: \"Datapunkter senaste 24 timmarna\",\r\n inactiveSensors: \"Inaktiva sensorer\",\r\n activeAlarms: \"Aktiva alarm\",\r\n datapointsLastWeek: \"Datapunkter under senaste veckan\",\r\n weekday: \"Veckodag\",\r\n },\r\n\r\n welcome: \"Hej, {user} !\",\r\n\r\n errors: {\r\n getDecoders: \"Kunde inte hämta decoders\",\r\n backendConnection: \"Ingen anslutning till backend kunde upprättas\",\r\n },\r\n\r\n actions: {\r\n createCategory: \"Skapa Kategori\",\r\n editCategory: \"Redigera Kategori\",\r\n remove: \"Ta bort\",\r\n\r\n createDashboard: \"Skapa Dashboard\",\r\n copyDashboard: \"Kopiera Dashboard\",\r\n },\r\n\r\n iconSelector: {\r\n selectIcon: \"Välj ikon\",\r\n searchPlaceholder: \"Sök på ikoner (ex. weather)\",\r\n },\r\n },\r\n\r\n settings: {\r\n title: \"Inställningar\",\r\n userSettings: \"Användarinställningar\",\r\n themes: \"Teman\",\r\n\r\n company: {\r\n title: \"Företagsinställningar\",\r\n },\r\n\r\n data: {\r\n toolbarTransparancy: \"Transparent toolbar\",\r\n stickySideMenu: \"Sticky sidmeny\",\r\n },\r\n\r\n global: {\r\n name: \"Globala inställningar\",\r\n branding: \"Märkning\",\r\n powered_by: \"Powered By\",\r\n SMS_PROVIDER: \"SMS Leverantör\",\r\n SMS_IP1_FROM: \"Avsändarnamn\",\r\n SMS_IP1_USERNAME: \"IP1 Användarnamn\",\r\n SMS_IP1_PASSWORD: \"IP1 Password\",\r\n SMS_TWILIO_ACCOUNTSID: \"Twilio AccountSID\",\r\n SMS_TWILIO_ACCESSTOKEN: \"Twilio AccessToken\",\r\n SMS_TWILIO_NUMBER: \"Twilio Number\",\r\n },\r\n },\r\n\r\n companysetting: {\r\n field: {\r\n smsprovider: \"SMS Leverantör\",\r\n alarmTitle: \"Larm\",\r\n\r\n inactivityAlarmContact: \"Mail för inaktivitets larm\",\r\n hint: {\r\n inactivityAlarmContact:\r\n \"Mailaddress för att få mail när sensorer har varit inaktiva i mer än 6 timmar\",\r\n },\r\n\r\n ip1: {\r\n from: \"Avsändarnamn\",\r\n username: \"IP1 Användarnamn\",\r\n password: \"IP1 AccessToken / Lösenord\",\r\n hint: {\r\n from: \"Detta är ett namn som kommer användas som avsändare av sms från SensorOnline\",\r\n username:\r\n \"Vill du hitta ditt användarnamn finns dokumentation här: https://docs.sensor-online.se\",\r\n password:\r\n \"Vill du hitta Access Token / Lösenord kan du se dokumentationen här https://docs.sensor-online.se\",\r\n },\r\n },\r\n\r\n twilio: {\r\n number: \"Twilio Nummer\",\r\n accountSid: \"Twilio AccountSID\",\r\n accessToken: \"Twilio AccessToken\",\r\n hint: {\r\n number:\r\n \"Detta är det nummer du vill skicka dina meddelanden från och som du har på Twilio\",\r\n accountSid:\r\n \"Du kan hitta ditt AccountSid genom att följa vår dokumentation här: https://docs.sensor-online.se\",\r\n accessToken:\r\n \"Du kan hitta din AccessToken genom att följa vår dokumentation här: https://docs.sensor-online.se\",\r\n },\r\n },\r\n },\r\n },\r\n\r\n map: {\r\n create: \"Skapa kart-dashboard\",\r\n setPosFormTitle: \"Välj sensor för position\",\r\n useNodePosition: \"Använd nodens position\",\r\n displayHistory: \"Historiska positioner\",\r\n dateTimeSpanSelection: \"Datum att visa\",\r\n dateFrom: \"Start datum\",\r\n dateTo: \"Slut datum\",\r\n clearPositions: \"Rensa rutter\",\r\n stepPositions: \"Stega genom resan\",\r\n select: {\r\n node: \"Välj Nod\",\r\n dashboard: \"Välj Dashboard\",\r\n },\r\n iconStyling: \"Ikon-stil\",\r\n },\r\n\r\n dashboard: {\r\n name: \"Dashboards\",\r\n createTitleClean: \"Skapa ny Dashboard\",\r\n copyDeleteTitle: \"Ta bort eller kopiera Dashboard\",\r\n createTitle: \"Eller skapa ett nytt Dashboard\",\r\n chooseTitle: \"Välj Dashboard\",\r\n changeTitle: \"Byt Dashboard\",\r\n selectDashboard: \"Dashboards\",\r\n navigationTitle: \"Navigationsmeny\",\r\n\r\n fields: { name: \"Namn\" },\r\n nameReq: \"Detta fält måste vara ifyllt\",\r\n\r\n dashboardType: {\r\n 1: \"Standard Dashboard\",\r\n 2: \"Kart Dashboard\",\r\n 3: \"Bild-kart Dashboard\",\r\n },\r\n\r\n categories: {\r\n create: \"Skapa Kategori\",\r\n title: \"Titel\",\r\n icon: \"Ikon\",\r\n },\r\n\r\n copy: {\r\n tooltip: \"Kopiera widget\",\r\n },\r\n\r\n public: {\r\n title: \"Publika dashboards\",\r\n create: \"Skapa en publik dashboard\",\r\n createNew: \"Skapa en ny publik dashboard\",\r\n copiedSuccessful: \"Kopierade länk till clipboard\",\r\n copiedUnsuccessful: \"Kunde inte kopiera {link}\",\r\n URL: \"Dashboard-URL\",\r\n yes: \"Ja\",\r\n no: \"Nej\",\r\n remove: \"Ta bort\",\r\n\r\n fields: {\r\n host: \"Ansvarig\",\r\n expiresAt: \"Giltig till\",\r\n expired: \"Aktiv\",\r\n copyAction: \"Länk\",\r\n dashboardName: \"Dashboard\",\r\n },\r\n },\r\n },\r\n\r\n module: {\r\n noData: \"Kunde inte hitta någon data\",\r\n create: \"Skapa ett nytt element\",\r\n edit: \"Redigera elementet\",\r\n metas: \"Attribut\",\r\n\r\n colorFormTitle: \"Färg inställningar\",\r\n\r\n chart: {\r\n types: {\r\n line: \"Linje\",\r\n area: \"Area\",\r\n bar: \"Stapeldiagram\",\r\n scatter: \"Spridningsdiagram\",\r\n vertical: \"Vertikal\",\r\n trend: \"Förändringsgraf\",\r\n },\r\n },\r\n\r\n mapMarkers: {\r\n node: \"Nål med Nodinformation\",\r\n sensor: \"Label med senast sensorvärde\",\r\n },\r\n\r\n meta: {\r\n label: \"Attribut\",\r\n save: \"Spara attribut\",\r\n addSlider: \"Lägg till slider\",\r\n opacity: \"Opacitet\",\r\n\r\n paletteToModuleMode: \"Ändra Modulfärger\",\r\n paletteToCardMode: \"Ändra Kortfärger\",\r\n\r\n valueMatch: \"Attribut 1\",\r\n value: \"Attribut 2\",\r\n key: \"Sensor\",\r\n icon: \"Ikon\",\r\n\r\n styles: {\r\n text: {\r\n textcolor: \"Textfärg\",\r\n background: \"Bakgrund - Innehåll\",\r\n titleBackground: \"Bakgrund - Titel\",\r\n },\r\n\r\n single: {\r\n textcolor: \"Textfärg\",\r\n background: \"Bakgrund - Innehåll\",\r\n titleBackground: \"Bakgrund - Titel\",\r\n sparkline: \"Sparkline\",\r\n sparklineLabel: \"Sparkline textfärg\",\r\n },\r\n\r\n color: {\r\n cardBackground: \"Kortbakgrund\",\r\n titleBackground: \"Titelbakgrund\",\r\n titleText: \"Titeltext\",\r\n valueBackground: \"Värdesbakgrund\",\r\n valueText: \"Värdestext\",\r\n },\r\n },\r\n\r\n fontStyleTypes: {\r\n title: \"Titel\",\r\n value: \"Värde\",\r\n content: \"Innehåll\",\r\n },\r\n\r\n keys: {\r\n so_own_axis: \"Egen Y-Axel\",\r\n value_match: \"Namn för värde\",\r\n icon: \"Ikon-suffix\",\r\n sufix: \"Suffix\",\r\n prefix: \"Prefix\",\r\n deveui: \"Nod\",\r\n maxheight: \"Maxhöjd\",\r\n scriptid: \"Skript-ID\",\r\n target: \"Börvärde\",\r\n tagkey: \"Sensor\",\r\n tagkey_x: \"Sensor X-led\",\r\n tagkey_y: \"Sensor Y-led\",\r\n tagkey_x_max: \"Sensor Max X-led\",\r\n tagkey_y_max: \"Sensor Max Y-led\",\r\n forceColors: \"Tvinga färger\",\r\n decimal_rounding: \"Decimalavrundning\",\r\n dashboard_id: \"Dashboard-ID\",\r\n sync_y: \"Synkronisera Y-axel\",\r\n zoom_slider: \"Zoom-reglage\",\r\n digital: \"Fyrkantsvåg\",\r\n alarm_id: \"Larmgränser\",\r\n so_chart_type: \"Diagramtyp\",\r\n so_ignore_body: \"Endast titel\",\r\n min_value: \"Minimumvärde\",\r\n max_value: \"Maxvärde\",\r\n axis_label: \"Axel-etikett\",\r\n default_timespan: \"Standardtidsspann\",\r\n font_size: \"Textstorlek\",\r\n hide_trend_icon: \"Göm Trend Ikon\",\r\n horizontel_single_title: \"Horisontell titel\",\r\n so_hide_node_info: \"Göm Nodinformation\",\r\n font_style_large: \"Typsnitt\",\r\n so_single_sparkline: \"Sparkline\",\r\n gauge_180: \"180°-visning\",\r\n button_label: \"Knapptext\",\r\n button_label_on: \"Text Påknapp\",\r\n button_label_off: \"Text Avknapp\",\r\n hide_title: \"Göm Titel\",\r\n so_slots_count: \"Antal Slots att visa\",\r\n font_style_title: \"Typsnitt för titel\",\r\n font_style_content: \"Typsnitt för innehåll\",\r\n },\r\n\r\n desc: {\r\n forceColors:\r\n \"Tvingar de valda färgerna att ha prioritet över larmfärger\",\r\n },\r\n\r\n fields: {\r\n value_match: \"Matchande värde\",\r\n name: \"Text\",\r\n icon: \"Ikon-suffix\",\r\n sufix: \"Suffix\",\r\n prefix: \"Prefix\",\r\n deveui: \"Nod\",\r\n maxheight: \"Maxhöjd (ex 300 för 300px)\",\r\n scriptid: \"Skript ID\",\r\n target: \"Börvärde\",\r\n tagkey: \"Sensor\",\r\n tagkey_x: \"Sensor X-led\",\r\n tagkey_y: \"Sensor Y-led\",\r\n tagkey_x_max: \"Sensor Max X-led\",\r\n tagkey_y_max: \"Sensor Max Y-led\",\r\n forceColors: \"Tvinga färger\",\r\n decimal_rounding: \"Antal Siffror\",\r\n dashboard_id: \"Dashboard-ID\",\r\n sync_y: \"Synkronisera Y-axel\",\r\n so_own_axis: \"Own Y-Axel\",\r\n zoom_slider: \"Visa zoom-reglage\",\r\n digital: \"Fyrkantsvåg\",\r\n alarm_id: \"Visa Larmgränser\",\r\n chart_type: \"Diagramtyp\",\r\n ignoreBody: \"Endast titel\",\r\n min_value: \"Minimumvärde\",\r\n max_value: \"Maxvärde\",\r\n axis_label: \"Axel-etikett\",\r\n default_timespan: \"Standardtidsspann\",\r\n so_font_style_title: \"Typsnitt för titel\",\r\n so_font_style_content: \"Typsnitt för innehåll\",\r\n font_style_large: {\r\n type: \"Typ\",\r\n size: \"Storlek\",\r\n weight: \"Tjocklek\",\r\n },\r\n },\r\n },\r\n\r\n fields: {\r\n title: \"Titel\",\r\n types: \"Typ\",\r\n content: \"Content\",\r\n sm: \"Storlek liten skärm\",\r\n md: \"Storlek medelstor skärm\",\r\n min: \"Min-värde\",\r\n max: \"Max-värde\",\r\n image: \"Bild\",\r\n url: \"URL\",\r\n sync_chart: `Synkronisera X-axeln för alla dataserier\r\n(när du har olika dataformat i samma graf)`,\r\n },\r\n\r\n enum: {\r\n size: { xs: \"XSMALL\", sm: \"SMALL\", md: \"MEDIUM\", lg: \"LARGE\" },\r\n types: {\r\n 0: \"Graf\",\r\n 1: \"Visarinstrument\",\r\n 2: \"Text\",\r\n 3: \"Bild\",\r\n 4: \"Karta\",\r\n 5: \"Företagsinformation\",\r\n 6: \"IFrame\",\r\n 7: \"SMHI\",\r\n 8: \"Senaste värdet\",\r\n 9: \"Tabell rådata\",\r\n 10: \"Graf\",\r\n 11: \"Bild-karta\",\r\n 12: \"Funktionsknapp\",\r\n 13: \"Nod-info\",\r\n 14: \"Förändringsgraf\",\r\n 15: \"Nod-översikt\",\r\n 16: \"360°-tiltvisare\",\r\n 17: \"Fyllnadsgrad\",\r\n 18: \"Börvärdessättare\",\r\n 19: \"Kamera\",\r\n\r\n desc: {\r\n 0: \"Visar en graf\",\r\n 1: \"Visar ett visarinstrument\",\r\n 2: \"Visar text\",\r\n 3: \"Visar en bild\",\r\n 4: \"Visar en karta\",\r\n 5: \"Visar företagsinformation\",\r\n 6: \"Visar IFrame\",\r\n 7: \"Visar SMHI\",\r\n 8: \"Visar det senaste värdet\",\r\n 9: \"Visar rådata-tabell\",\r\n 10: \"Visar en Graf\",\r\n 11: \"Visar en bild-karta\",\r\n 12: \"Visar en funktionsknapp\",\r\n 13: \"Visar nod-information\",\r\n 14: \"Visar en förändringsgraf\",\r\n 15: \"Visar nod-översikt\",\r\n 16: \"Visar en 360°-tiltvisare\",\r\n 17: \"Visar en fyllnadsgrad\",\r\n 18: \"Visar en börvärdessättare\",\r\n 19: \"Visar en kamera ström\",\r\n },\r\n },\r\n },\r\n\r\n functionButtonTypes: {\r\n script: \"Skriptkörning\",\r\n input: \"Värdeinput\",\r\n navigation: \"Dashboard-länk\",\r\n downlink: \"Downlinks\",\r\n onoffSwitch: \"ON/OFF-switch\",\r\n },\r\n },\r\n\r\n weather: {\r\n title: \"SMHI Väderdata\",\r\n icon: \"Väder\",\r\n temp: \"Temperatur\",\r\n windDir: \"Vindriktning\",\r\n windSpeed: \"Vind\",\r\n humidity: \"Fukt\",\r\n thunder: \"Åska\",\r\n date: \"Datum\",\r\n precipitation: \"Nederbörd\",\r\n },\r\n\r\n contact: {\r\n title: \"Kontakta oss\",\r\n descriptionTitle: \"Sensor-Online\",\r\n description:\r\n \"Vi på SensorOnline vet att det kan vara svårt att komma igång med dina sensorer. Tveka inte att kontakta oss vid frågor eller för rådgivning.\",\r\n emailTitle: \"Email\",\r\n email: \"info@sensor-online.se\",\r\n phoneTitle: \"Telefon\",\r\n phoneOne: \"+46 (0) 500 6000 22\",\r\n phoneTwo: \"+46 (0) 733 165 100\",\r\n locationSiencepark: \"Skövde Science Park\",\r\n locationStreet: \"Kaplansgatan 16B\",\r\n locationPostalcode: \"521 32 Skövde\",\r\n locationCountry: \"Sweden\",\r\n },\r\n\r\n company: {\r\n name: \"Företag\",\r\n orgNumber: \"Organisationsnummer\",\r\n\r\n companyInfo: \"Företagsinformation\",\r\n\r\n addUser: \"Lägg till användare\",\r\n\r\n invite: \"Bjud in en användare\",\r\n inviteSent: \"Inbjudan skickad\",\r\n inviteFailed:\r\n \"Kunde inte hitta användaren. Se till att användaren är registrerad och inte redan tillhör ett företag!\",\r\n\r\n shareApp: \"Dela Applikation\",\r\n\r\n fields: {\r\n name: \"Företagsnamn\",\r\n orgNumber: \"Organisationsnummer\",\r\n postalAdress: \"Postadress\",\r\n deliveryAdress: \"Leveransadress\",\r\n contactPhonenumber: \"Kontakt telefonnummer\",\r\n invoiceAdress: \"Epost för faktura\",\r\n refrenceNmuber: \"Referensnummer\",\r\n image: \"Företagslogotyp\",\r\n },\r\n\r\n validation: {\r\n nameRequired: \"Du måste fylla i Företagsnamn\",\r\n nameMax: \"Företagsnamn kan högst vara 255 tecken\",\r\n\r\n orgNumberRequired: \"Du måste fylla i Organisationsnummer\",\r\n orgNumberFormatError: \"Fel format på Organisationsnummer\",\r\n\r\n emailRequired: \"Du måste fylla i Email\",\r\n emailFormatError: \"Ange giltig Email-address\",\r\n\r\n passwordMissmatch: \"Lösenorden matchar inte\",\r\n },\r\n },\r\n\r\n report: {\r\n title: \"Rapporter\",\r\n refrenceDateDesc:\r\n \"Referensdagen är den dagen som refereras till vid utskick av rapport, om intervallen är månadsvis väljer du dagen som den ska skickas på(1:a varje månad till exempel). Eller veckovis (vilken dag mån - fre som rapporten ska skickas ut).\",\r\n create: \"Skapa Rapport-prenumeration\",\r\n update: \"Uppdatera Rapport-prenumeration\",\r\n exportDownload: \"Raportnedladdning\",\r\n export: \"Exportera\",\r\n downloadFailed: \"Det gick inte att hämta rapporten, försök igen senare.\",\r\n noData: \"Ingen data hittades i det valda tidsspannet\",\r\n fields: {\r\n name: \"Namn\",\r\n type: \"Typ\",\r\n tempo: \"Intervall\",\r\n createdAt: \"Skapad\",\r\n updatedAt: \"Uppdaterad\",\r\n id: \"ID\",\r\n refrenceDate: \"Referensdag\",\r\n reportContacts: \"Rapport-kontakter\",\r\n lastSent: \"Senast skickad\",\r\n },\r\n\r\n tempo: {\r\n desc: {\r\n 0: \"Skickas varje dag med rapport för dagen.\",\r\n 1: \"Skickas varje måndag med rapport för veckan innan.\",\r\n 2: \"Skickas 1:a varje månad med rapport för månaden innan.\",\r\n },\r\n\r\n 0: \"Dagligen\",\r\n 1: \"Veckovis\",\r\n 2: \"Månadsvis\",\r\n },\r\n\r\n types: {\r\n regular: \"Standard\",\r\n trend: \"Förbrukning\",\r\n },\r\n },\r\n\r\n script: {\r\n name: \"Skript\",\r\n create: \"Skapa nytt Skript\",\r\n edit: \"Redigera Skript\",\r\n tagsTitle: \"Nod-ID och Sensorer\",\r\n placeHolderContent: ` // Convert the temperature to fahrenheit \r\n var tempToFahrenheit = Data.Read(\"INSERT-DEVEUI\", \"INSERT-KEY\") * 9/5 + 32;\r\n\r\n // Write the new value to a new key\r\n Data.Write(\"INSERT-DEVEUI\", \"INSERT-KEY\", tempToFahrenheit);`,\r\n examples: \"Exempel\",\r\n helpTitle: \"Exempel och hjälp\",\r\n\r\n type: {\r\n 0: \"Loopat Skript\",\r\n 1: \"Anropat Skript\",\r\n 2: \"Triggat Skript\",\r\n },\r\n\r\n fields: {\r\n name: \"Namn\",\r\n type: \"Typ\",\r\n interval: \"Intervall\",\r\n lastRun: \"Senaste körning\",\r\n enabled: \"Aktiverat\",\r\n boundTag: \"Triggande tag\",\r\n },\r\n\r\n validation: {\r\n intervalRequired: \"Detta fält måste vara ifyllt\",\r\n intervalMinValue: \"Det minsta värdet för Intervall är 0\",\r\n },\r\n },\r\n\r\n user: {\r\n name: \"Användare\",\r\n\r\n email: \"Email\",\r\n role: \"Roll\",\r\n\r\n userInfo: \"Personliga uppgifter\",\r\n\r\n loginFailed: \"Inloggning misslyckades\",\r\n signInFailed: \"Email/lösenord matchar inte försök igen\",\r\n signInError: \"Oväntat fel inträffade under inloggning\",\r\n loginSuccessful: \"Inloggad\",\r\n updateFailed: \"Uppdateringen misslyckades\",\r\n edit: \"Redigera\",\r\n forgotPassword: \"Glömt lösenord?\",\r\n\r\n fields: {\r\n firstName: \"Förnamn\",\r\n lastName: \"Efternamn\",\r\n phoneNumber: \"Telefonnummer\",\r\n email: \"Email\",\r\n password: \"Lösenord\",\r\n newPassword: \"Nytt Lösenord\",\r\n passwordConfirm: \"Bekräfta Lösenord\",\r\n\r\n phoneNumerHint:\r\n \"Hint: Använd internationell formatering. Ex för Svenskt nummer (46703292943)\",\r\n },\r\n },\r\n\r\n application: {\r\n name: \"Applikation | Applikationer\",\r\n noCompanyError: \"För att skapa en Applikation måste du ha ett företag\",\r\n applicationCreated: \"En ny applikation har skapats\",\r\n choose: \"Välj en Applikation\",\r\n create: \"Skapa en ny Applikation\",\r\n validation: {\r\n nameRequired: \"Din applikation måste ha ett namn\",\r\n nameMax: \"Namn kan högst vara 255 tecken\",\r\n },\r\n fields: {\r\n id: \"ID\",\r\n name: \"Namn\",\r\n createdAt: \"Skapad\",\r\n owner: \"Ägare\",\r\n },\r\n },\r\n\r\n alarm: {\r\n name: \"Larm\",\r\n create: \"Lägg till nytt larm\",\r\n affirmation: \"Bekräfta\",\r\n history: \"Larmhistorik\",\r\n\r\n activeAlarm: \"Alarm-varningar\",\r\n\r\n test: {\r\n title: \"Test av inställningar\",\r\n settings: \"Testa mejl och sms inställningar\",\r\n email: \"Email adress\",\r\n phonenumber: \"Telefonnummer (46....)\",\r\n },\r\n\r\n priority: {\r\n desc: {\r\n a: \"Skickar både email och sms\",\r\n b: \"Skickar endast sms\",\r\n c: \"Skickar endast email\",\r\n },\r\n },\r\n\r\n fields: {\r\n id: \"ID\",\r\n name: \"Namn\",\r\n priority: \"Prioritet\",\r\n alarmDelay: \"Fördröjning innan larm\",\r\n active: \"Larmstatus\",\r\n tagDataKey: \"Sensor\",\r\n tag: \"Nod\",\r\n message: \"Larm-meddelande\",\r\n limitHigh: \"Hög larmgräns\",\r\n limitLow: \"Låg larmgräns\",\r\n contactType: \"Kontakttyp\",\r\n alarmContacts: \"Alarm-kontakter\",\r\n activeDays: \"Aktiva dagar\",\r\n limit: \"Låg och Hög larmgräns\",\r\n activeAlarms: \"Okvitterade Larm\",\r\n messageSent: \"Skickat meddelande\",\r\n reset: \"Kvitterat\",\r\n triggered: \"Utlöst\",\r\n user: \"Kvitterat av\",\r\n value: \"Utlösande värde\",\r\n signalType: \"Typ av Signal\",\r\n digitalTrigger: \"Utlös Vid\",\r\n triggerHigh: \"Hög Signal\",\r\n triggerLow: \"Låg Signal\",\r\n advanced: \"Avancerat larm\",\r\n },\r\n\r\n validation: {\r\n nameRequired: \"Detta fält måste vara ifyllt\",\r\n max: \"Maxgränsen är 255\",\r\n },\r\n },\r\n\r\n batteryStatus: {\r\n levels: \"Batterinivåer\",\r\n value: \"Värde\",\r\n lastSeen: \"Senaste värdet\",\r\n label: \"Batterispänning\",\r\n },\r\n\r\n tagdata: {\r\n name: \"Data\",\r\n amount: \"Antal datapunkter:\",\r\n notation: \"{0} st\",\r\n latestactivity: \"Senaste aktivitet\",\r\n latestvalue: \"Senaste värdet\",\r\n defaultKey: \"Standardnyckel\",\r\n\r\n fields: {\r\n id: \"ID\",\r\n name: \"Namn\",\r\n key: \"Sensor\",\r\n value: \"Värde\",\r\n createdAt: \"Skapad\",\r\n label: \"Label\",\r\n tagDeveui: \"Node\",\r\n },\r\n },\r\n\r\n tag: {\r\n choose: \"Sensor väljare\",\r\n search: \"Sök Nod\",\r\n chooseDecoder: \"Välj en decoder\",\r\n decoder: \"Decoder\",\r\n name: \"Noder\",\r\n amount: \"Antal noder:\",\r\n notation: \"{0} st\",\r\n details: \"Sensordetaljer\",\r\n removeImage: \"Ta bort bild\",\r\n chooseKey: \"Välj nyckel\",\r\n saveKeyAsDefault: \"Standard\",\r\n newKey: \"Ny Sensor\",\r\n filter: \"Filtrera Noder\",\r\n generateId: \"Generera ID\",\r\n\r\n uploadExplanation:\r\n \"Dra in din csv fil eller klicka här för att ladda upp Noder\",\r\n uploadExplanationHint: \"Du kan ladda ner en exempel fil på formatet här: \",\r\n exampleLink: \"CSV Exempel\",\r\n\r\n publishing: {\r\n title: \"Publicering\",\r\n reset: {\r\n 0: \"Återställ MQTT Publicering\",\r\n 1: \"Återställ Sparkplug Publicering\",\r\n 2: \"Återställ Modbus Publicering\",\r\n 3: \"Återställ OPC-UA Publicering\",\r\n },\r\n\r\n mqtt: \"MQTT\",\r\n modbus: \"Modbus\",\r\n sparkplug: \"Sparkplug\",\r\n },\r\n\r\n tabs: {\r\n settings: \"Inställningar\",\r\n data: \"Data\",\r\n events: \"Event Logg\",\r\n },\r\n\r\n createSteps: {\r\n step1: \"Typ av Nod\",\r\n step2: \"Välj Application\",\r\n step3: \"Välj Decoder\",\r\n step4: \"Ange Nycklar\",\r\n step5: \"MQTT\",\r\n finish: \"Klar\",\r\n\r\n spotIo4: \"SpotIO val\",\r\n modbus4: \"Modbus\",\r\n },\r\n\r\n picker: {\r\n step1: \"Välj en Nod\",\r\n step2: \"Välj en Sensor\",\r\n },\r\n\r\n tagPool: {\r\n tagPool: \"Nod-pool\",\r\n deveui: \"Deveui\",\r\n createdAt: \"Created\",\r\n hide: \"Göm från lista\",\r\n take: \"Lägg till sensor\",\r\n show: \"Visa i listan\",\r\n hiddenTags: \"Gömda noder\",\r\n },\r\n\r\n fields: {\r\n id: \"ID\",\r\n name: \"Namn\",\r\n deveui: \"DevEUI\",\r\n appKey: \"AppKey\",\r\n appEui: \"AppEUI\",\r\n applicationId: \"Applikation\",\r\n profile: \"Profil\",\r\n lat: \"Latitud\",\r\n long: \"Longitud\",\r\n latAndLng: \"Latitud och Longitud\",\r\n image: \"Bild på installation\",\r\n battery: \"Batterinivå\",\r\n activeAlarm: \"Larmar\",\r\n activeData: \"Aktiv\",\r\n latestValue: \"Senaste Värde\",\r\n location: \"Placering\",\r\n dataPoints: \"Datapunkter/24h\",\r\n type: \"Typ\",\r\n nodeType: \"Nod Typ\",\r\n },\r\n\r\n nodeTypes: {\r\n 0: \"LORA\",\r\n 1: \"API\",\r\n 2: \"MQTT\",\r\n 3: \"NR\",\r\n 4: \"SPARKPLUG\",\r\n 5: \"SpotIO\",\r\n 6: \"Modbus\",\r\n },\r\n },\r\n\r\n license: {\r\n usedGateways: \"Totalt använda Gateways i Licensen\",\r\n usedNodes: \"Totalt använda Noder i Licensen\",\r\n editMaxTitle: \"Redigera gränser\",\r\n companySettings: \"Konto inställningar\",\r\n licenseManagement: \"Licens hantering\",\r\n publicKey: \"Publik nyckel\",\r\n upload: \"Ladda upp ny licens\",\r\n uploadHint: \"Dra din nya licens eller tryck för att välja licens-fil\",\r\n license: \"Licens\",\r\n licensee: \"Licenshavare\",\r\n coveredFeatures: \"Täckt Funktionalitet\",\r\n fields: {\r\n email: \"Email\",\r\n name: \"Namn\",\r\n maxCompanies: \"Max Antal Företag\",\r\n decoderIncluded: \"Decoder Inkluderad\",\r\n whiteLabel: \"White-Label\",\r\n\r\n licenseId: \"Licens ID\",\r\n status: \"Status\",\r\n publicKey: \"Publik Nyckel\",\r\n maxGateways: \"Max Antal Gateways\",\r\n maxNodes: \"Max Antal Noder\",\r\n expires: \"Löper ut\",\r\n },\r\n\r\n limitations: {\r\n fields: {\r\n companyId: \"Konto ID\",\r\n companyName: \"Konto\",\r\n maxGateways: \"Max Gateways (0 = Obegränsad)\",\r\n maxNodes: \"Max Noder (0 = Obegränsad)\",\r\n updatedAt: \"Uppdaterad\",\r\n\r\n currentNodes: \"Nuvarande Noder\",\r\n currentGateways: \"Nuvarande Gateways\",\r\n },\r\n\r\n errors: {\r\n gateway:\r\n \"Licensen måste utökas för att kunna lägga till fler Gateways, ta kontakt med din leverantör.\",\r\n tag: \"Licensen måste utökas för att kunna lägga till fler Noder, ta kontakt med din leverantör.\",\r\n company:\r\n \"Licensen måste utökas för att kunna lägga till fler Konton, ta kontakt med din leverantör.\",\r\n expiresIn:\r\n \"Licensen går ut om {0} dagar, ta kontakt med din leverantör.\",\r\n },\r\n\r\n tos: {\r\n title: \"Licenseavtal\",\r\n description: \"Läs licenseavtalet och acceptera för att logga in\",\r\n accept: \"Acceptera\",\r\n checkbox: \"Acceptera licenseavtal\",\r\n },\r\n },\r\n\r\n errors: {\r\n couldNotSetLimits: \"Kunde inte sätta limitationer för det valda kontot\",\r\n },\r\n },\r\n\r\n validation: {\r\n required: \"{0} måste vara ifylld\",\r\n max: \"{0} får max vara {1} tecken\",\r\n requiredSingle: \"Detta fält måste vara ifyllt\",\r\n toLong: \"Detta fält överstiger maxlängd\",\r\n contryCodeError:\r\n \"Glöm inte att telefonnumret måste ha en landskod (ex 4607xxxxxxxx)\",\r\n passwordMissmatch: \"Lösenorden matchar inte\",\r\n deveuiConflict: \"Nod med detta DevEUI finns redan på servern\",\r\n },\r\n\r\n warning: {\r\n amount: \"Aktiva Larm:\",\r\n notation: \"{0} st\",\r\n },\r\n\r\n mqtt: {\r\n settingsTabTitle: \"MQTT Brokers\",\r\n brokerListTitle: \"MQTT Brokers\",\r\n createTitle: \"Lägg till MQTT Broker\",\r\n updateTitle: \"Uppdatera MQTT Broker\",\r\n selectBroker: \"Välj en MQTT Broker\",\r\n testBroker: \"Testa anslutning\",\r\n topicCreateTitle: \"MQTT Topics\",\r\n topicDescription:\r\n \"Dem topics som är valda kommer prenumereras på genom den valda MQTT Broker. Varje topic ska vara specifik för Noden, om wildcards (+) används i topic bör det inte vara ett 'Multilevel Wildcard (#)', om det används kommer det ändras till ett vanligt wildcard.\",\r\n topicAdd: \"Lägg till en Topic\",\r\n topicAlreadyExists: \"Den valda Topicen finns redan på denna enheten\",\r\n createTopicTitle: \"Skapa en ny Prenumeration\",\r\n\r\n sparkplug: {\r\n use: \"Använd Sparkplug Publicering\",\r\n meta: {\r\n hint: {\r\n edgeId: \"Sparkplug edge id\",\r\n groupId: \"Sparkplug grupp id\",\r\n },\r\n\r\n edgeId: \"Edge ID\",\r\n groupId: \"Grupp ID\",\r\n useNameForPublish: \"Använd namn istället för NodID\",\r\n },\r\n },\r\n\r\n meta: {\r\n fields: {\r\n topic: \"Topic\",\r\n publishTopic: \"Publicerings Topic (Valfri)\",\r\n publishTopicHint: \"Kan inte vara samma Topic som en prenumeration\",\r\n parsingTopic: \"Dekoder typ\",\r\n payloadTest: \"Payload att testa\",\r\n testTopic: \"Förväntad topic i Decode funktionen\",\r\n },\r\n },\r\n\r\n sslmodes: {\r\n 0: \"None\",\r\n 1: \"CA Signed server certificate\",\r\n 2: \"Self-signed server certificate\",\r\n },\r\n\r\n versions: {\r\n 0: \"3.1.1\",\r\n 1: \"3.1.0\",\r\n },\r\n\r\n validation: {\r\n notfound: \"Kunde inte hitta Broker\",\r\n },\r\n\r\n fields: {\r\n status: \"Status\",\r\n hostname: \"Hostnamn\",\r\n port: \"Port\",\r\n version: \"MQTT Version\",\r\n sslmode: \"SSL/TLS Mode\",\r\n CACertificate: \"CA Certificate\",\r\n ClientCertificate: \"Client Certificate\",\r\n ClientKey: \"Client Key\",\r\n KeyPassPhrase: \"Key Passphrase (Optional)\",\r\n useAuth: \"Använd Autentisering\",\r\n username: \"Användarnamn\",\r\n password: \"Lösenord\",\r\n isGlobal: \"Är Global Broker\",\r\n\r\n metrics: {\r\n messages: {\r\n total: \"Totalt antal Meddelanden\",\r\n week: \"Meddelanden denna Vecka\",\r\n day: \"Meddelanden denna Dag\",\r\n },\r\n\r\n publish: {\r\n total: \"Totalt antal Publicerade\",\r\n week: \"Publicerat denna Vecka\",\r\n day: \"Publicerat denna Dag\",\r\n },\r\n },\r\n },\r\n },\r\n};\r\n","export default {\r\n routes: {\r\n home: \"Hjem\",\r\n login: \"Log ind\",\r\n register: \"Registrer\",\r\n registerCompany: \"Ny virksomhed\",\r\n logout: \"Log ud\",\r\n \r\n company: \"Virksomhed\",\r\n dashboard: \"Dashboard\",\r\n application: \"Applikationer\",\r\n alarm: \"Alarmhåndtering\",\r\n \r\n user: \"Brugere\",\r\n tagdata: \"Data\",\r\n tag: \"Noder\",\r\n script: \"Script Engine\",\r\n report: \"Rapporter\",\r\n contact: \"Kontakt\",\r\n apiRef: \"API-Dokumentation\",\r\n shop: \"Køb noder\",\r\n manual: \"Manual\",\r\n userEdit: \"Konto\",\r\n settings: \"Indstillinger\",\r\n signalTest: \"Felttest\",\r\n gateway: \"Gateways\",\r\n news: \"Nyheder\",\r\n roles: \"Roller\",\r\n \r\n superadmin: \"Admin\",\r\n },\r\n\r\n camOnline: {\r\n servers: \"Cam-Online Servere\",\r\n couldNotFetchServers: \"Kunne ikke hente CamOnline Servere\",\r\n couldNotCreateServer: \"Noget gik galt ved oprettelse af CamOnline Server\",\r\n couldNotDeleteServer: \"Noget gik galt ved sletning af CamOnline Server\",\r\n\r\n serverSelect: \"Vælg Cam-Online Server\",\r\n streamSelect: \"Vælg et kamera\",\r\n createDialogTitle: \"Tilføj en ny server\",\r\n tabTitle: \"Cam-Online\",\r\n fields: {\r\n url: \"URL (f.eks. https://portal.cam-online.se)\",\r\n accessToken: \"Adgangstoken\",\r\n isGlobal: \"Global Server\",\r\n},\r\n },\r\n roles: {\r\n toolbarTitle: \"Roller\",\r\n permissionCounts: \"Tilladelser\",\r\n \r\nmissingRecommendedTitle:\r\n \"Det ser ud til, at du mangler nogle anbefalede tilladelser. Ønsker du at tilføje dem?\",\r\nmissingRecommendedButton: \"Klik her!\",\r\n\r\npickPermissionsTitle: \"Vælg tilladelser for denne rolle\",\r\npickPermissionsDesc:\r\n \"Når du vælger tilladelser, kan du støde på Orange tilladelser. Disse tilladelser anbefales for at få den grundlæggende funktionalitet til at fungere. Du kan vælge en af standardrollerne nedenfor for at bruge dem som skabelon.\",\r\n\r\nlayerTypes: {\r\n 0: \"Frontend-essentials\",\r\n 1: \"Frontend\",\r\n 2: \"Backend\",\r\n},\r\n\r\nfields: {\r\n name: \"Rollenavn\",\r\n permissionCount: \"Antal tilladelser\",\r\n isDefault: \"Er standard\",\r\n isSuper: \"Er administrator\",\r\n},\r\n },\r\n\r\n eventhub: {\r\n waiting: \"Venter på nye begivenheder...\",\r\n \r\n events: {\r\n data: \"Ny data\",\r\n endpoint: \"Endpoint-begivenhed\",\r\n },\r\n },\r\n \r\n downlinks: {\r\n editorTitle: \"Downlinks\",\r\n \r\n validation: {\r\n port: \"Porten skal være større end 0\",\r\n },\r\n },\r\n \r\n conditionTree: {\r\n selectValueTypeTitle: \"Vælg værditype\",\r\n selectType: \"Vælg type\",\r\n selectValue: \"Vælg værdi\",\r\n chooseSensor: \"Vælg sensor\",\r\n\r\n textInputPlaceholder: \"Tekstværdi\",\r\n numberInputPlaceholder: \"Talværdi\",\r\n\r\ntypes: {\r\n 0: \"Sensorværdi\",\r\n 1: \"Tekst\",\r\n 2: \"Tal\",\r\n 3: \"Tid\",\r\n 4: \"Ingen værdi\",\r\n},\r\n\r\nops: {\r\n greater: \"Større end\",\r\n less: \"Mindre end\",\r\n equal: \"Lig med\",\r\n greaterOrEqual: \"Større eller lig med\",\r\n lessOrEqual: \"Mindre eller lig med\",\r\n notEqual: \"Ikke\",\r\n},\r\n},\r\n\r\naccessToken: {\r\ntitle: \"Adgangstokens\",\r\nnewToken: \"Opret en token\",\r\ncardNewTitle: \"Ny token\",\r\ncardTitle: \"Adgangstoken\",\r\nfields: {\r\nid: \"Id\",\r\nlabel: \"Titel\",\r\ntoken: \"Token\",\r\nisCompany: \"Firma-token\",\r\n},\r\n},\r\n\r\nnews: {\r\ncannotGetNews: \"Kunne ikke hente nyheder fra portalen.\",\r\n},\r\n\r\ngateway: {\r\ntoolbar: \"Gateways\",\r\ntoolbarTitle: \"Gateways\",\r\nbestGw: \"Bedste gateway\",\r\n\r\npickLocationButton: \"Indstil breddegrad og længdegrad\",\r\nfields: {\r\n name: \"Navn\",\r\n macAddress: \"GatewayEUI\",\r\n latitude: \"Breddegrad\",\r\n longitude: \"Længdegrad\",\r\n createdAt: \"Oprettet\",\r\n},\r\n},\r\n\r\nsignalTest: {\r\ntoolbarTitle: \"Feltests\",\r\nstartTest: \"Start en ny test\",\r\nendTest: \"Afslut test\",\r\npeekTest: \"Se på test\",\r\ncreateToolbar: \"Start en ny test\",\r\nrawData: \"Rådata\",\r\nupdateTimer: \"Opdateringstimer\",\r\n\r\nfields: {\r\n testId: \"Test-id\",\r\n description: \"Beskrivelse\",\r\n startTest: \"Start\",\r\n endTest: \"Afslut\",\r\n active: \"Aktiv\",\r\n \r\n avgSnr: \"Gennemsnitlig SNR\",\r\n avgRssi: \"Gennemsnitlig RSSI\",\r\n \r\n data: {\r\n rssi: \"RSSI\",\r\n snr: \"SNR\",\r\n lat: \"BREDDEGRAD\",\r\n lng: \"LENGDEGRAD\",\r\n createdAt: \"TID\",\r\n },\r\n },\r\n \r\n tab: {\r\n map: \"KORT\",\r\n data: \"STATISTIK\",\r\n },\r\n},\r\n\r\ntrend: {\r\nres: {\r\nweek: \"Opløsning: Uge\",\r\nday: \"Opløsning: Dag\",\r\nhour: \"Opløsning: Time\",\r\nfive: \"Opløsning: 5 Timer\",\r\n},\r\n},\r\n\r\nnotifications: {\r\nclearNotifications: \"Marker alle som læst\",\r\nnoNotifications: \"Du er opdateret.\",\r\n},\r\n\r\nlanding: {\r\nslogan: \"VISUALISERING GJORT LET\",\r\nor: \"ELLER\",\r\nkey: {\r\ntitle: \"Nøglefunktioner\",\r\n1: \"Nodeadministration\",\r\n2: \"Visualisering\",\r\n3: \"Tilpassede dashboards\",\r\n4: \"Alarmstyring\",\r\n5: \"Personalestyring\",\r\n6: \"Scriptmotor\",\r\n\r\ndescription: {\r\n 1: \"Administrer sensorer til håndtering af data\",\r\n 2: \"Få dine sensordata visualiseret, så du kan observere dataene på den ønskede måde\",\r\n 3: \"Opret dit eget dashboard specialiseret til DIT anvendelsesområde\",\r\n 4: \"Alarmstyring til kritiske anvendelsestilfælde\",\r\n 5: \"Til styring af dit firmas personale\",\r\n 6: \"Avancerede brugere kan bruge scriptmotoren til at bearbejde data\",\r\n },\r\n},\r\n\r\nusecases: {\r\n title: \"Anvendelsesområder\",\r\n 1: \"Miljøsensorer\",\r\n 2: \"Elektricitetssensorer\",\r\n 3: \"Bevægelsessensorer\",\r\n 4: \"Temperatursensorer\",\r\n\r\n description: {\r\n 1: \"Perfekt til smarte landbrugsløsninger som Ljusgarda, der bruger portalen. Alarmfunktionen i SENSORONLINE er nøglen til at holde dine aktiver sikre.\",\r\n 12: \"Læs mere om Ljusgarda\",\r\n 2: \"Mål strømmen til gadelamper i din by. Brug scriptmotoren til at forstå de indsamlede data.\",\r\n 3: \"Mål, hvor mange personer eller biler der forlader eller indtaster din facilitet.\",\r\n 4: \"Selvfølgelig er temperaturmålinger en vigtig del af vores platform. Mange virksomheder bruger og holder øje med deres aktivers temperaturer.\",\r\n },\r\n},\r\n\r\nhelp: {\r\n title: \"Kontakt os\",\r\n\r\n sensors: {\r\n title: \"Har brug for nye noder?\",\r\n description:\r\n \"Hvis du har brug for hjælp til at løse et problem, om det så er hvilken sensor du skal bruge eller hvordan du kan visualisere dine data på en bedre måde. Tøv ikke med at kontakte os, så vi kan gøre dit liv lettere. \\n Du kan se vores portefølje af \",\r\n store: \"noder, som vi sælger her hos KK Partner A/S.\",\r\n },\r\n\r\n api: {\r\n title: \"API til din bekvemmelighed\",\r\n description:\r\n \"Du kan selvfølgelig få eller indsætte data fra dine andre applikationer til platformen. Se vores API-slutpunkter \",\r\n },\r\n\r\n contact: {\r\n title: \"Er du interesseret? Kontakt os!\",\r\n siencepark: \"Skövde Science Park\",\r\n address: \"Kaplansgatan 16B\",\r\n postal: \"521 32 Skövde\",\r\n country: \"Sverige\",\r\n phoneTitle: \"Telefon\",\r\n phonenumber: \"+46 (0) 500 600 022\",\r\n phonenumber2: \"+46 (0) 733 165 100\",\r\n emailTitle: \"Email\",\r\n email: \"info@sensor-online.se\",\r\n },\r\n },\r\n},\r\n\r\n imageMap: {\r\n chooseTag: \"Vælg type markør\",\r\n },\r\n \r\n log: {\r\n type: {\r\n sms: \"SMS\",\r\n app: \"Applikation\",\r\n warning: \"Advarsel\",\r\n error: \"Fejl\",\r\n userevent: \"Brugerbegivenhed\",\r\n login: \"Login\",\r\n },\r\n\r\n logTable: {\r\n title: \"Log\",\r\n },\r\n \r\n activeAlarms: {\r\n title: \"Aktive alarmer\",\r\n },\r\n \r\n activeUsersTable: {\r\n title: \"Logget ind brugere\",\r\n },\r\n \r\n fields: {\r\n type: \"Type\",\r\n user: \"Bruger\",\r\n message: \"Besked\",\r\n createdAt: \"Oprettet\",\r\n \r\n status: \"Status\",\r\n lastAction: \"Begivenhed\",\r\n lastSeen: \"Tidsstempel\",\r\n \r\n alarm: {\r\n name: \"Navn\",\r\n value: \"Værdi\",\r\n messageSent: \"Sendt besked\",\r\n },\r\n },\r\n },\r\ncommon: {\r\nyes: \"Ja\",\r\nno: \"Nej\",\r\non: \"Tændt\",\r\noff: \"Slukket\",\r\ntimestamp: \"Tidsstempel\",\r\nlang: \"Sprog\",\r\nerror: \"Der opstod en fejl, prøv igen senere\",\r\nedit: \"Rediger\",\r\ndelete: \"Slet\",\r\nreset: \"Nulstil\",\r\npurge: \"Sletning\",\r\nsubmit: \"Send\",\r\ncreate: \"Opret\",\r\nupdate: \"Opdater\",\r\nget: \"Få\",\r\nrun: \"Kør\",\r\naddress: \"Adresse\",\r\nlink: \"Link\",\r\nheight: \"Højde\",\r\nwidth: \"Bredde\",\r\nnew: \"Ny\",\r\nvalue: \"Værdi\",\r\nnewValue: \"Ny værdi\",\r\nnothingToSee: \"Intet at se her\",\r\nnext: \"Næste\",\r\nlabel: \"Mærkat\",\r\neditLabel: \"Rediger mærkat\",\r\nexplanation: \"Forklaring\",\r\nclear: \"Ryd\",\r\n\r\npreviousStep: \"Tilbage\",\r\nhours: \"Timer\",\r\nmintues: \"Minutter\",\r\n\r\nsearch: \"Søg\",\r\nclose: \"Luk\",\r\ncancel: \"Annuller\",\r\nsuccess: \"Succesfuldt!\",\r\n\r\nlogin: \"Login\",\r\nregister: \"Tilmeld\",\r\nemail: \"Email\",\r\npassword: \"Kodeord\",\r\nconfirmPassword: \"Bekræft kodeord\",\r\nnewPassword: \"Nyt kodeord\",\r\nforgotPassword: \"Glemt kodeord\",\r\n\r\ncreatedAt: \"Oprettet\",\r\nupdatedAt: \"Opdateret\",\r\n\r\nsave: \"Gem\",\r\nshow: \"Vis\",\r\nupdated: \"Opdateret\",\r\ncreated: \"Oprettet\",\r\ndeleted: \"Slettet\",\r\nback: \"Tilbage\",\r\nsend: \"Send\",\r\nrefresh: \"Opdater\",\r\n\r\npreview: \"Forhåndsvisning\",\r\npreviewSpacing: \"Plads til andre moduler\",\r\n\r\nsaveColor: \"Gem farve\",\r\nalarmColorPrecedence:\r\n \"Alarmfarver vil altid have forrang over manuelt valgte farver. Tving overordning i attributter, hvis dette ikke er det ønskede.\",\r\n\r\nadd: \"Tilføj\",\r\n\r\nsettings: \"Indstillinger\",\r\n\r\nnoTagOrAppChoosen: \"Node og/eller applikation mangler\",\r\nnoDataFound: \"Ingen data fundet\",\r\ndarkTheme: \"Mørkt tema\",\r\n\r\nactive: \"Aktiv\",\r\nnotActive: \"Inaktiv\",\r\n\r\nsent: \"Sendt\",\r\nnotSent: \"Ikke sendt\",\r\n\r\nloginOrRegister: \"Log ind eller registrer\",\r\n\r\ncopy: \"Kopier\",\r\nverify: \"Er du sikker på, at du vil fortsætte?\",\r\nverifyDelete: \"Er du sikker på, at du vil fjerne denne ressource?\",\r\n\r\ndisagree: \"Nej\",\r\naccept: \"Ja\",\r\n\r\nor: \"Eller\",\r\n\r\nregisterCompany: \"Opret nyt firma\",\r\n\r\ndashboard: \"Gå til oversigt\",\r\nswitchCompany: \"Skift firma\",\r\n\r\ninactiveSensors: \"Inaktive sensorer\",\r\nactiveSensors: \"Aktive sensorer\",\r\nsensorStatus: \"Node-status\",\r\nsensorName: \"Node-navn\",\r\n\r\nupdatesPending: \"Ændringer afventer opdatering\",\r\npickLocationConfirm: \"Ønsker du at gemme positionen for denne ressource?\",\r\n\r\ntoFewBytes: \"For få bytes\",\r\nbyteInputRequired: \"Du skal udfylde dette felt\",\r\n\r\ngetMorePages: \"Indlæs flere\",\r\n\r\nsearchType: {\r\n TAG: \"Noder\",\r\n ALARM: \"Alarmer\",\r\n APPLICATION: \"Applikationer\",\r\n DASHBOARD: \"Oversigter\",\r\n GATEWAY: \"Gateways\",\r\n SCRIPT: \"Scripts\",\r\n},\r\n\r\ntime: {\r\n day: \"Dag\",\r\n hour: \"Time\",\r\n quarterHour: \"Kvart time\",\r\n minute: \"Minut\",\r\n},\r\n\r\ndays: {\r\n monday: \"Mandag\",\r\n tuesday: \"Tirsdag\",\r\n wednesday: \"Onsdag\",\r\n thursday: \"Torsdag\",\r\n friday: \"Fredag\",\r\n saturday: \"Lørdag\",\r\n sunday: \"Søndag\",\r\n},\r\n\r\ndateRange: {\r\n 0: \"Seneste time\",\r\n 1: \"Seneste 5 timer\",\r\n 2: \"Seneste 24 timer\",\r\n 3: \"Seneste 7 dage\",\r\n 4: \"Seneste 30 dage\",\r\n},\r\n\r\nstaticinformation: {\r\n datapoints: \"Datapunkter seneste 24 timer\",\r\n inactiveSensors: \"Inaktive sensorer\",\r\n activeAlarms: \"Aktive alarmer\",\r\n datapointsLastWeek: \"Datapunkter sidste uge pr. dag\",\r\n weekday: \"Ugedag\",\r\n},\r\n\r\nerrors: {\r\n getDecoders: \"Kunne ikke hente dekodere\",\r\n backendConnection: \"Der kunne ikke oprettes forbindelse til backend.\",\r\n},\r\n\r\nactions: {\r\n createCategory: \"Opret kategori\",\r\n editCategory: \"Rediger kategori\",\r\n remove: \"Fjern\",\r\n\r\n createDashboard: \"Opret oversigt\",\r\n copyDashboard: \"Kopier oversigt\",\r\n},\r\n\r\niconSelector: {\r\n selectIcon: \"Vælg ikon\",\r\n searchPlaceholder: \"Søg efter ikoner\",\r\n},\r\n},\r\n\r\nsettings: {\r\n title: \"Indstillinger\",\r\n userSettings: \"Brugerindstillinger\",\r\n themes: \"Temaer\",\r\n\r\n company: {\r\n title: \"Firma indstillinger\",\r\n },\r\n\r\n data: {\r\n toolbarTransparancy: \"Gennemsigtig værktøjslinje\",\r\n stickySideMenu: \"Fast side-menu\",\r\n },\r\n\r\n global: {\r\n name: \"Generelle indstillinger\",\r\n branding: \"Branding\",\r\n powered_by: \"Drevet af\",\r\n SMS_PROVIDER: \"SMS-udbyder\",\r\n SMS_IP1_FROM: \"IP1 Afsendernavn\",\r\n SMS_IP1_USERNAME: \"IP1 Brugernavn\",\r\n SMS_IP1_PASSWORD: \"IP1 Adgangskode\",\r\n SMS_TWILIO_ACCOUNTSID: \"Twilio AccountSID\",\r\n SMS_TWILIO_ACCESSTOKEN: \"Twilio AccessToken\",\r\n SMS_TWILIO_NUMBER: \"Twilio-nummer\",\r\n },\r\n},\r\n\r\ncompanysetting: {\r\n field: {\r\n smsprovider: \"SMS-udbyder\",\r\n alarmTitle: \"Alarm\",\r\n\r\n inactivityAlarmContact: \"E-mail til inaktivitetsalarm\",\r\n\r\n hint: {\r\n inactivityAlarmContact:\r\n \"E-mail-adresse til modtagelse af alarmer, når enheder har været inaktive i mindst 6 timer\",\r\n },\r\n \r\n ip1: {\r\n username: \"IP1-brugernavn\",\r\n password: \"IP1-adgangstoken / adgangskode\",\r\n from: \"Afsendernavn\",\r\n hint: {\r\n from: \"Dette er et navn, der vil blive brugt, når SensorOnline sender SMS'er\",\r\n username:\r\n \"Hvis du vil finde dit brugernavn, skal du besøge dokumentationen: https://docs.sensor-online.se\",\r\n password:\r\n \"Hvis du vil finde din adgangskode, skal du besøge dokumentationen: https://docs.sensor-online.se\",\r\n },\r\n },\r\n \r\n twilio: {\r\n number: \"Twilio-nummer\",\r\n accountSid: \"Twilio AccountSID\",\r\n accessToken: \"Twilio AccessToken\",\r\n hint: {\r\n number:\r\n \"Et nummer, du ejer på Twilio, som du kan sende beskeder med.\",\r\n accountSid:\r\n \"Du kan finde flere oplysninger om, hvor du finder AccountSID, i vores dokumentation: https://docs.sensor-online.se\",\r\n accessToken:\r\n \"Du kan finde flere oplysninger om, hvor du finder AccessToken, i vores dokumentation: https://docs.sensor-online.se\",\r\n },\r\n },\r\n },\r\n},\r\n\r\nmap: {\r\nsetPosFormTitle: \"Vælg sensor for at ændre position\",\r\n},\r\n\r\ndashboard: {\r\nname: \"Dashboards\",\r\nselectDashboard: \"Dashboards\",\r\ncreateTitleClean: \"Opret nyt dashboard\",\r\ncopyDeleteTitle: \"Slet eller kopier dashboard\",\r\ncreateTitle: \"Eller opret et nyt dashboard\",\r\nchooseTitle: \"Vælg dashboard\",\r\nchangeTitle: \"Skift dashboard\",\r\nnavigationTitle: \"Navigationsmenu\",\r\n\r\nfields: { name: \"Navn\" },\r\nnameReq: \"Dette felt skal udfyldes\",\r\n\r\ncategories: {\r\n create: \"Opret kategori\",\r\n title: \"Titel\",\r\n icon: \"Ikon\",\r\n},\r\n\r\ncopy: {\r\n tooltip: \"Kopier widget\",\r\n},\r\n\r\npublic: {\r\n title: \"Offentlige dashboards\",\r\n create: \"Opret et offentligt dashboard\",\r\n createNew: \"Opret et nyt offentligt dashboard\",\r\n copiedSuccessful: \"Link kopieret til udklipsholderen\",\r\n copiedUnsuccessful: \"Kunne ikke kopiere link {link}\",\r\n URL: \"Dashboard-URL\",\r\n yes: \"Ja\",\r\n no: \"Nej\",\r\n remove: \"Fjern\",\r\n\r\n fields: {\r\n host: \"Vært\",\r\n expiresAt: \"Gyldig indtil\",\r\n expired: \"Aktiv\",\r\n copyAction: \"Link\",\r\n dashboardName: \"Dashbaord\",\r\n },\r\n},\r\n},\r\nmodule: {\r\ncreate: \"Opret en ny enhed\",\r\nedit: \"Rediger enhed\",\r\nmetas: \"Attributter\",\r\n\r\nchart: {\r\n types: {\r\n line: \"Linje\",\r\n area: \"Område\",\r\n bar: \"Søjle\",\r\n scatter: \"Spredning\",\r\n vertical: \"Vertikal\",\r\n },\r\n },\r\n \r\n mapMarkers: {\r\n node: \"Peg med nodens info\",\r\n sensor: \"Tekstetiket med seneste sensorværdi\",\r\n },\r\n \r\n meta: {\r\n label: \"Attributter\",\r\n save: \"Gem attributter\",\r\n opacity: \"Gennemsigtighed\",\r\n \r\n paletteToModuleMode: \"Skift modulfarver\",\r\n paletteToCardMode: \"Skift kortfarver\",\r\n \r\n valueMatch: \"Attribut 1\",\r\n value: \"Attribut 2\",\r\n key: \"Sensor\",\r\n icon: \"Ikon\",\r\n \r\n styles: {\r\n text: {\r\n textcolor: \"Tekstfarve\",\r\n background: \"Baggrund - Indhold\",\r\n titleBackground: \"Baggrund - Titel\",\r\n },\r\n\r\n single: {\r\n textcolor: \"Tekstfarve\",\r\n background: \"Baggrund - Indhold\",\r\n titleBackground: \"Baggrund - Titel\",\r\n sparkline: \"Linjediagram\",\r\n sparklineLabel: \"Linjediagram mærkat\",\r\n },\r\n \r\n color: {\r\n cardBackground: \"Kortbaggrund\",\r\n titleBackground: \"Titelbaggrund\",\r\n titleText: \"Titeltekst\",\r\n valueBackground: \"Værdi-baggrund\",\r\n valueText: \"Værdi-tekst\",\r\n },\r\n},\r\n\r\nfontStyleTypes: {\r\ntitle: \"Titel\",\r\nvalue: \"Værdi\",\r\ncontent: \"Indhold\",\r\n},\r\n\r\nkeys: {\r\nvalue_match: \"Værdi-navn\",\r\nicon: \"Suffiksikon\",\r\nsufix: \"Suffiks\",\r\nprefix: \"Præfiks\",\r\ndeveui: \"Node\",\r\nmaxheight: \"Maksimal højde\",\r\nscriptid: \"Script-ID\",\r\ntarget: \"Mål\",\r\ntagkey: \"Sensor\",\r\ntagkey_x: \"Sensor X\",\r\ntagkey_y: \"Sensor Y\",\r\ntagkey_x_max: \"Sensor X Maks.\",\r\ntagkey_y_max: \"Sensor X Min.\",\r\nforceColors: \"Tving farver\",\r\ndecimal_rounding: \"Decimal afrunding\",\r\ndashboard_id: \"Dashboard-ID\",\r\nsync_y: \"Synkroniser Y-akse\",\r\nzoom_slider: \"Zoomslider\",\r\ndigital: \"Firkantsbølge\",\r\nalarm_id: \"Alarmgrænser\",\r\nso_chart_type: \"Diagramtype\",\r\nso_ignore_body: \"Kun titel\",\r\nmin_value: \"Minimumsværdi\",\r\nmax_value: \"Maksimumsværdi\",\r\naxis_label: \"Akselmærkat\",\r\ndefault_timespan: \"Standard tidsinterval\",\r\nfont_size: \"Skriftstørrelse\",\r\nhide_trend_icon: \"Skjul trendikon\",\r\nhorizontel_single_title: \"Vandret titel\",\r\nso_hide_node_info: \"Skjul nodens information\",\r\nfont_style_large: \"Skrifttype\",\r\nso_single_sparkline: \"Linjediagram\",\r\ngauge_180: \"180° måler\",\r\nbutton_label: \"Knapmærkat\",\r\nbutton_label_on: \"Mærkat for TÆND-knap\",\r\nbutton_label_off: \"Mærkat for SLUK-knap\",\r\nhide_title: \"Skjul titel\",\r\n},\r\n\r\nfields: {\r\nvalue_match: \"Værdi\",\r\nname: \"Navn\",\r\nicon: \"Suffiksikon\",\r\nsufix: \"Suffiks\",\r\nprefix: \"Præfiks\",\r\ndeveui: \"Node\",\r\nmaxheight: \"Maksimal højde (f.eks. 300 for 300px)\",\r\nscriptid: \"Script-ID\",\r\ntarget: \"Mål\",\r\ntagkey: \"Sensor\",\r\ntagkey_x: \"Sensor X\",\r\ntagkey_y: \"Sensor Y\",\r\ntagkey_x_max: \"Sensor X Maks.\",\r\ntagkey_y_max: \"Sensor X Min.\",\r\nforceColors: \"Tving farver\",\r\ndecimal_rounding: \"Decimaler\",\r\ndashboard_id: \"Dashboard-ID\",\r\nsync_y: \"Synkroniser Y-akse\",\r\nzoom_slider: \"Vis zoomslider\",\r\ndigital: \"Firkantsbølge\",\r\nalarm_id: \"Alarmgrænser\",\r\nchart_type: \"Diagramtype\",\r\nignoreBody: \"Kun titel\",\r\nmin_value: \"Minimumsværdi\",\r\nmax_value: \"Maksimumsværdi\",\r\naxis_label: \"Akselmærkat\",\r\ndefault_timespan: \"Standard tidsinterval\",\r\nfont_style_large: {\r\ntype: \"Type\",\r\nsize: \"Størrelse\",\r\nweight: \"Vægt\",\r\n},\r\n},\r\n\r\ndesc: {\r\nforceColors: \r\n\"Tving de valgte farver til at tage forrang over alarmfarver\",\r\n},\r\n},\r\n\r\nfields: {\r\ntitle: \"Titel\",\r\ntypes: \"Type\",\r\ncontent: \"Indhold\",\r\nsm: \"Størrelse på lille skærm\",\r\nmd: \"Størrelse på mellemstor skærm\",\r\nmin: \"Min. værdi\",\r\nmax: \"Maks. værdi\",\r\nimage: \"Billede\",\r\nurl: \"URL\",\r\nsync_chart: `Synkroniser alle serier på X-aksen\r\nnår dataformaterne er meget forskellige)`,\r\n},\r\n\r\nenum: {\r\nsize: { xs: \"EKSTRA LILLE\", sm: \"LILLE\", md: \"MEDIUM\", lg: \"STOR\" },\r\ntypes: {\r\n0: \"Diagram\",\r\n1: \"Måler\",\r\n2: \"Tekst\",\r\n3: \"Billede\",\r\n4: \"Google Kort\",\r\n5: \"Virksomhedsoplysninger\",\r\n6: \"IFrame\",\r\n7: \"SMHI\",\r\n8: \"Seneste værdi\",\r\n9: \"Rå tabel\",\r\n10: \"Diagram\",\r\n11: \"Billedkort\",\r\n12: \"Funktionsknap\",\r\n13: \"Node-Info\",\r\n14: \"Trenddiagram\",\r\n15: \"Node-overblik\",\r\n16: \"360° Vippevisualisering\",\r\n17: \"Fyldniveauindikator\",\r\n18: \"Værdiindstillingslåse\",\r\n19: \"Kamera\",\r\n},\r\n},\r\n\r\nfunctionButtonTypes: {\r\nscript: \"Scriptudførelse\",\r\ninput: \"Direkte værdiindtastning\",\r\nnavigation: \"Dashboard Link\",\r\ndownlink: \"Downlinks\",\r\nonoffSwitch: \"TÆND/SLUK-knap\",\r\n},\r\n},\r\n\r\nweather: {\r\ntitle: \"SMHI Vejrudsigt\",\r\nicon: \"Vejr\",\r\ntemp: \"Temperatur\",\r\nwindDir: \"Vindretning\",\r\nwindSpeed: \"Vindhastighed\",\r\nhumidity: \"Fugtighed\",\r\nthunder: \"Torden\",\r\ndate: \"Dato\",\r\nprecipitation: \"Nedbør\",\r\n},\r\n\r\ncontact: {\r\n titel: \"Kontakt os\",\r\n descriptionTitle: \"Sensor-Online\",\r\n description:\r\n \"Vi ved, at det kan være svært at komme i gang. Tøv ikke med at kontakte os, og vi vil gerne hjælpe med at besvare dine spørgsmål.\",\r\n emailTitle: \"Email\",\r\n email: \"info@sensor-online.se\",\r\n phoneTitle: \"Telefon\",\r\n phoneOne: \"+46 (0) 500 6000 22\",\r\n phoneTwo: \"+46 (0) 733 165 100\",\r\n locationSiencepark: \"Skövde Science Park\",\r\n locationStreet: \"Kaplansgatan 16B\",\r\n locationPostalcode: \"521 32 Skövde\",\r\n locationCountry: \"Sverige\",\r\n },\r\n\r\n company: {\r\n name: \"Firmanavn\",\r\n orgNumber: \"Moms nummer\",\r\n\r\n companyInfo: \"Firmaoplysninger\",\r\n\r\naddUser: \"Tilføj ny bruger\",\r\n\r\ninvite: \"Inviter ny bruger\",\r\ninviteSent: \"Invitation sendt\",\r\ninviteFailed:\r\n \"Kunne ikke finde brugeren. Sørg for, at brugeren er registreret!\",\r\n\r\nshareApp: \"Del applikation\",\r\n\r\nfields: {\r\n name: \"Firmanavn\",\r\n orgNumber: \"Organisationsnummer\",\r\n postalAdress: \"Postadresse\",\r\n deliveryAdress: \"Leveringsadresse\",\r\n contactPhonenumber: \"Kontakt telefonnummer\",\r\n invoiceAdress: \"Email for kontakt\",\r\n refrenceNmuber: \"Reference nummer\",\r\n image: \"Firma logo\",\r\n},\r\n\r\nvalidation: {\r\n nameRequired: \"Du skal indtaste et firmanavn\",\r\n nameMax: \"Firmanavnet må ikke være mere end 255 tegn\",\r\n\r\n orgNumberRequired: \"Du skal indtaste dit CVR-nummer\",\r\n orgNumberFormatError: \"Forkert format for CVR-nummer\",\r\n\r\n emailRequired: \"Du skal indtaste en email-adresse\",\r\n emailFormatError: \"Indtast en gyldig email-adresse\",\r\n\r\n passwordMissmatch: \"Adgangskoderne stemmer ikke overens\",\r\n},\r\n},\r\n\r\nreport: {\r\ntitle: \"Rapporter\",\r\nrefrenceDateDesc:\r\n\"Referencedagen er den dag, der refereres til ved afsendelse af en rapport. Hvis intervallet er månedligt, skal du vælge den dag, den sendes (f.eks. den 1. i hver måned). Eller ugentligt (hvor dagen er mandag til fredag, når rapporten skal sendes ud).\",\r\ncreate: \"Opret rapportkørsel\",\r\nupdate: \"Opdater rapportkørsel\",\r\nexportDownload: \"Download rapport\",\r\nexport: \"Eksporter\",\r\ndownloadFailed: \"Rapporten kunne ikke hentes. Prøv igen senere!\",\r\nnoData: \"Der blev ikke fundet data inden for det valgte tidsrum\",\r\nfields: {\r\nname: \"Rapportnavn\",\r\ntype: \"Type\",\r\ntempo: \"Interval\",\r\ncreatedAt: \"Oprettet\",\r\nupdatedAt: \"Opdateret\",\r\nid: \"ID\",\r\nrefrenceDate: \"Referencedag\",\r\nreportContacts: \"Rapportkontakter\",\r\nlastSent: \"Sidst sendt\",\r\n},\r\n\r\ntempo: {\r\n desc: {\r\n 0: \"Send den daglige rapport fra nu af kl. 03:00\",\r\n 1: \"Send den ugentlige rapport om mandagen med data fra den foregående uge.\",\r\n 2: \"Send den månedlige rapport den 1. dag i måneden for den foregående måned.\",\r\n },\r\n\r\n 0: \"Daglig\",\r\n 1: \"Ugentlig\",\r\n 2: \"Månedlig\",\r\n},\r\n\r\ntypes: {\r\n regular: \"Almindelig\",\r\n trend: \"Trend\",\r\n},\r\n},\r\n\r\nscript: {\r\n name: \"Scripts\",\r\n create: \"Opret en ny script\",\r\n edit: \"Rediger script\",\r\n tagsTitle: \"Node ID og sensorer\",\r\n placeHolderContent: ` // Konverter temperaturen til fahrenheit\r\n var tempToFahrenheit = Data.Read(\"INSERT-DEVEUI\", \"INSERT-KEY\") * 9/5 + 32;\r\n\r\n // Skriv den nye værdi til en ny nøgle\r\nData.Write(\"INSERT-DEVEUI\", \"INSERT-KEY\", tempToFahrenheit);`,\r\nexamples: \"Eksempler\",\r\nhelpTitle: \"Eksempler og hjælp\",\r\n\r\ntype: {\r\n 0: \"Gentagende Script\",\r\n 1: \"Kaldt Script\",\r\n 2: \"Udløst Script\",\r\n},\r\n\r\nfields: {\r\n name: \"Navn\",\r\n type: \"Type\",\r\n interval: \"Interval\",\r\n lastRun: \"Sidst kørt tidspunkt\",\r\n enabled: \"Aktiveret\",\r\n boundTag: \"Udløsende tag\",\r\n},\r\n\r\nvalidation: {\r\n intervalRequired: \"Dette felt skal udfyldes\",\r\n intervalMinValue: \"Den mindste værdi for intervallet er 0\",\r\n},\r\n},\r\n\r\nuser: {\r\nname: \"Bruger\",\r\n\r\nemail: \"Email\",\r\nrole: \"Rolle\",\r\n\r\nuserInfo: \"Personlige oplysninger\",\r\n\r\nloginFailed: \"Login mislykkedes\",\r\nsignInFailed: \"Email/adgangskode matcher ikke. Prøv igen.\",\r\nsignInError: \"Uventet fejl under login\",\r\nloginSuccessful: \"Logget ind\",\r\nupdateFailed: \"Opdatering mislykkedes\",\r\nedit: \"Rediger\",\r\nforgotPassword: \"Glemt adgangskode?\",\r\n\r\nfields: {\r\n firstName: \"Fornavn\",\r\n lastName: \"Efternavn\",\r\n phoneNumber: \"Telefonnummer\",\r\n email: \"Email\",\r\n password: \"Adgangskode\",\r\n newPassword: \"Ny adgangskode\",\r\n passwordConfirm: \"Bekræft adgangskode\",\r\n\r\n phoneNumerHint:\r\n \"Tip: Brug international formatering. F.eks. for et svensk nummer (4575381414)\",\r\n},\r\n},\r\n\r\napplication: {\r\nname: \"Applikation | Applikationer\",\r\nnoCompanyError: \"Du skal først registrere en virksomhed for at oprette applikationer\",\r\napplicationCreated: \"Din nye applikation er oprettet\",\r\nchoose: \"Vælg en applikation\",\r\ncreate: \"Opret en ny applikation\",\r\nvalidation: {\r\nnameRequired: \"Din applikation skal have et navn\",\r\nnameMax: \"Navnet må ikke være længere end 255 tegn\",\r\n},\r\nfields: {\r\nid: \"ID\",\r\nname: \"Navn\",\r\ncreatedAt: \"Oprettet\",\r\nowner: \"Ejer\",\r\n},\r\n},\r\n\r\nalarm: {\r\nname: \"Alarm\",\r\ncreate: \"Tilføj ny alarmregel\",\r\naffirmation: \"Bekræft\",\r\nhistory: \"Alarmhistorik\",\r\n\r\nactiveAlarm: \"Alarmadvarsler\",\r\n\r\ntest: {\r\n title: \"Test af indstillinger\",\r\n settings: \"Test email- og sms-indstillinger\",\r\n email: \"Email-adresse\",\r\n phonenumber: \"Telefonnummer (45....)\",\r\n},\r\n\r\npriority: {\r\n desc: {\r\n a: \"Send både email og SMS\",\r\n b: \"Send kun SMS\",\r\n c: \"Send kun mail-meddelelse\",\r\n },\r\n},\r\n\r\nfields: {\r\n id: \"ID\",\r\n name: \"Navn\",\r\n priority: \"Prioritet\",\r\n alarmDelay: \"Forsinkelsestid før alarm udløses\",\r\n active: \"Alarmstatus\",\r\n tagDataKey: \"Sensor\",\r\n tag: \"Node\",\r\n message: \"Alarmbesked\",\r\n limitHigh: \"Høj grænse\",\r\n limitLow: \"Lav grænse\",\r\n contactType: \"Kontakttype\",\r\n alarmContacts: \"Alarmkontakter\",\r\n activeDays: \"Aktive dage\",\r\n limit: \"Lav og høj alarmgrænser\",\r\n activeAlarms: \"Alarmadvarsler\",\r\n messageSent: \"Alarmbesked sendt\",\r\n reset: \"Nulstil\",\r\n triggered: \"Udløst\",\r\n user: \"Nulstillet af\",\r\n value: \"Udløsende værdi\",\r\n signalType: \"Signaltype\",\r\n digitalTrigger: \"Udløs ved\",\r\n triggerHigh: \"Høj signalværdi\",\r\n triggerLow: \"Lav signalværdi\",\r\n advanced: \"Avanceret alarm\",\r\n },\r\n\r\n validation: {\r\n nameRequired: \"Dette felt skal udfyldes\",\r\n max: \"Maksimalt antal tegn er 255\",\r\n },\r\n},\r\n\r\nbatteryStatus: {\r\nlevels: \"Batteriniveau\",\r\nvalue: \"Værdi\",\r\nlastSeen: \"Seneste værdi\",\r\nlabel: \"Batterispænding\",\r\n},\r\n\r\ntagdata: {\r\nname: \"Data\",\r\namount: \"Antal datapunkter indsamlet:\",\r\nnotation: \"{0}\",\r\nlatestactivity: \"Seneste aktivitet\",\r\nlatestvalue: \"Seneste værdi\",\r\ndefaultKey: \"Standard nøgle\",\r\n\r\nfields: {\r\n id: \"ID\",\r\n name: \"Navn\",\r\n key: \"Sensor\",\r\n value: \"Værdi\",\r\n createdAt: \"Oprettet\",\r\n label: \"Mærkat\",\r\n},\r\n},\r\n\r\ntag: {\r\nchoose: \"Vælg Node\",\r\nsearch: \"Søg Node\",\r\nchooseDecoder: \"Vælg en dekoder\",\r\ndecoder: \"Dekoder\",\r\nname: \"Noder\",\r\namount: \"Antal noder:\",\r\nnotation: \"{0}\",\r\ndetails: \"Sensoroplysninger\",\r\nremoveImage: \"Slet billede\",\r\nchooseKey: \"Vælg nøgle\",\r\nsaveKeyAsDefault: \"Standard\",\r\nnewKey: \"Ny Sensor\",\r\nfilter: \"Filtrer Noder\",\r\ngenerateId: \"Generér ID\",\r\n\r\nuploadExplanation: \"Træk din Csv-fil herover, eller klik her for at uploade Noder\",\r\nuploadExplanationHint: \"Du kan downloade en eksempelfil i csv-format her: \",\r\nexampleLink: \"CSV Eksempel\",\r\n\r\ncreateSteps: {\r\n step1: \"Type af Node\",\r\n step2: \"Vælg Applikation\",\r\n step3: \"Vælg Dekoder\",\r\n step4: \"Indstil Nøgler\",\r\n step5: \"MQTT\",\r\n finish: \"Færdig\",\r\n},\r\n\r\npicker: {\r\n step1: \"Vælg en Node\",\r\n step2: \"Vælg en Sensor\",\r\n},\r\n\r\ntagPool: {\r\n tagPool: \"Nodes pulje\",\r\n deveui: \"DevEUI\",\r\n createdAt: \"Oprettet\",\r\n hide: \"Skjul på liste\",\r\n show: \"Vis i standardliste\",\r\n hiddenTags: \"Skjulte noder\",\r\n take: \"Tilføj sensor\",\r\n},\r\n\r\nfields: {\r\n id: \"ID\",\r\n name: \"Navn\",\r\n deveui: \"DevEUI\",\r\n appKey: \"AppKey\",\r\n appEui: \"AppEUI\",\r\n applicationId: \"Applikation\",\r\n profile: \"Profil\",\r\n lat: \"Breddegrad\",\r\n long: \"Længdegrad\",\r\n latAndLng: \"Breddegrad og Længdegrad\",\r\n image: \"Billede af sensorinstallation\",\r\n battery: \"Batteriniveau\",\r\n activeAlarm: \"Alarm\",\r\n activeData: \"Aktiv\",\r\n latestValue: \"Seneste værdi\",\r\n location: \"Placering\",\r\n dataPoints: \"Datapunkter/24h\",\r\n type: \"Type\",\r\n nodeType: \"Nodetype\",\r\n},\r\n\r\nnodeTypes: {\r\n 0: \"LORA\",\r\n 1: \"API\",\r\n 2: \"MQTT\",\r\n 3: \"NR\",\r\n},\r\n},\r\n\r\nlicense: {\r\nlicense: \"Licens\",\r\nlicensee: \"Licensindehaver\",\r\ncoveredFeatures: \"Dækkede funktioner\",\r\nfields: {\r\nemail: \"Email\",\r\nname: \"Navn\",\r\nmaxCompanies: \"Maks. antal virksomheder\",\r\ndecoderIncluded: \"Dekoder inkluderet\",\r\nwhiteLabel: \"White-Label\",\r\n},\r\n},\r\n\r\nvalidation: {\r\nrequired: \"{0} skal udfyldes\",\r\nmax: \"{0} skal være {1} tegn\",\r\nrequiredSingle: \"Dette felt skal udfyldes\",\r\ntoLong: \"Dette felt indeholder for mange tegn\",\r\ncontryCodeError:\r\n\"Glem ikke, at telefonnummeret skal have landekode (f.eks. 4512345678)\",\r\npasswordMissmatch: \"Adgangskoderne stemmer ikke overens\",\r\ndeveuiConflict: \"Node med denne DevEUI findes allerede på denne server\",\r\n},\r\n\r\nwarning: {\r\namount: \"Aktive alarmer:\",\r\nnotation: \"{0}\",\r\n},\r\n\r\nmqtt: {\r\nsettingsTabTitle: \"MQTT Brokere\",\r\nbrokerListTitle: \"MQTT Brokere\",\r\ncreateTitle: \"Tilføj en ny MQTT Broker\",\r\nupdateTitle: \"Opdater MQTT Broker\",\r\nselectBroker: \"Vælg en MQTT Broker\",\r\ntestBroker: \"Test Konfiguration\",\r\ntopicCreateTitle: \"MQTT Emner\",\r\ntopicDescription:\r\n\"De valgte emner vil blive abonneret på via den konfigurerede broker. Emnerne skal være specifikke for enheden, og hvis jokertegnet (+) bruges, skal det være et enkelt niveau jokertegn. Multiniveau jokertegn (#) vil blive omdannet til enkelt niveau jokertegn.\",\r\ntopicAdd: \"Tilføj et nyt Emne\",\r\ntopicAlreadyExists: \"Det valgte emne findes allerede\",\r\ncreateTopicTitle: \"Opret et nyt abonnement\",\r\n\r\nmeta: {\r\n fields: {\r\n topic: \"Emne\",\r\n publishTopic: \"Offentliggør Emne (Valgfrit)\",\r\n publishTopicHint: \"Kan ikke være det samme som nogen af Abonnér Emnerne\",\r\n parsingTopic: \"Dekodertype\",\r\n },\r\n},\r\n\r\nsslmodes: {\r\n 0: \"Ingen\",\r\n 1: \"CA signerede servercertifikater\",\r\n 2: \"Selvsignerede servercertifikater\",\r\n},\r\n\r\nversions: {\r\n 0: \"3.1.1\",\r\n 1: \"3.1.0\",\r\n},\r\n\r\nvalidation: {\r\n notfound: \"Kunne ikke finde Broker\",\r\n},\r\n\r\nfields: {\r\n status: \"Status\",\r\n hostname: \"Værtsnavn\",\r\n port: \"Port\",\r\n version: \"MQTT-version\",\r\n sslmode: \"SSL/TLS-tilstand\",\r\n CACertificate: \"CA-certifikat\",\r\n ClientCertificate: \"Klientcertifikat\",\r\n ClientKey: \"Klientnøgle\",\r\n KeyPassPhrase: \"Nøglefrase (Valgfri)\",\r\n useAuth: \"Brug godkendelse\",\r\n username: \"Brugernavn\",\r\n password: \"Adgangskode\",\r\n isGlobal: \"Er global broker\",\r\n\r\n metrics: {\r\n messages: {\r\n total: \"Samlede beskeder\",\r\n week: \"Beskeder denne uge\",\r\n day: \"Beskeder i dag\",\r\n },\r\n\r\n publish: {\r\n total: \"Samlet offentliggørelser\",\r\n week: \"Offentliggørelser denne uge\",\r\n day: \"Offentliggørelser i dag\",\r\n },\r\n },\r\n},\r\n},\r\n};\r\n\r\n\r\n\r\n\r\n \r\n\r\n\r\n\r\n \r\n\r\n\r\n\r\n\r\n \r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n","import en from \"./locales/en\";\nimport sv from \"./locales/sv\";\nimport da from \"./locales/da\";\n\nexport default {\n sv,\n en,\n da,\n};\n","import Repository from \"../Repository\";\nimport { apiConfig, company } from \"../../_helpers/apiHelper\";\n\nconst resource = \"/features\";\nconst debug = false;\n\nexport default {\n getAllFeatures() {\n // SuperAdmin Endpoint\n if (debug)\n return [\n {\n featureAccessId: 1,\n name: \"FEATURE_MAP_DASHBOARD\",\n // companies: [],\n companies: [{ name: \"IotAB\", companyId: 1 }],\n },\n ];\n\n return Repository.get(`${resource}`, apiConfig());\n },\n\n toggleFeature(featureAccessId, companyId) {\n return Repository.put(\n `${resource}/${featureAccessId}/${companyId}`,\n null,\n apiConfig()\n );\n },\n\n getCompanyFeatures() {\n return Repository.get(`${resource}/${company()}`, apiConfig());\n },\n};\n","import store from \"../stores/store\";\n\nexport default {\n HttpStatus: {\n ok: 200,\n created: 201,\n accepted: 202,\n no_content: 204,\n bad_request: 400,\n unauthorized: 401,\n forbidden: 403,\n not_found: 404,\n conflict: 409,\n },\n\n checkForConflict(response) {\n if (\n response.status === this.HttpStatus.bad_request &&\n response.data.errors != null &&\n response.data.errors.Deveui != null\n )\n return true;\n else return false;\n },\n};\n\nexport function getAuthHeader(user) {\n return {\n \"Access-Control-Allow-Origin\": true,\n Authorization: `Bearer ${user.token}`,\n \"Content-Type\": \"application/json\",\n };\n}\n\nexport function apiConfig() {\n let user = store.getters[\"users/user\"];\n if (user?.token == undefined)\n return {\n headers: {\n \"Access-Control-Allow-Origin\": true,\n \"Content-Type\": \"application/json\",\n },\n };\n\n return {\n headers: {\n \"Access-Control-Allow-Origin\": true,\n Authorization: `Bearer ${user.token}`,\n \"Content-Type\": \"application/json\",\n },\n };\n}\n\nexport function company() {\n return store.getters[\"users/companyId\"];\n}\n\nexport function tagsWithKeyQueryParameter(tagsWithKeys) {\n if (typeof tagsWithKeys !== \"object\") return \"\";\n\n return (\n \"twk=\" +\n encodeURIComponent(\n Buffer.from(JSON.stringify(tagsWithKeys)).toString(\"base64\")\n )\n );\n}\n","import Repository from \"../Repository\";\nimport { apiConfig, getAuthHeader } from \"../../_helpers/apiHelper\";\nimport DateHelper from \"../../_helpers/DateHelper\";\nimport store from \"../../stores/store\";\n\nconst resource = \"/tag\";\nconst decoderResource = \"/decoder\";\n\nexport default {\n get(user) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(`${resource}`, config);\n },\n\n create(user, applicationId, payload) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.post(\n `/applications/${applicationId}/tag`,\n payload,\n config\n );\n },\n\n update(user, payload) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.put(`${resource}/${payload.deveui}`, payload, config);\n },\n\n delete(user, tagId) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.delete(`${resource}/${tagId}`, config);\n },\n\n getById(user, tagId) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(`${resource}/${tagId}`, config);\n },\n\n getByCompanyId(user, companyId) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(`${resource}/company/${companyId}`, config);\n },\n\n getKeys(user, tagId) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(`${resource}/${tagId}/keys`, config);\n },\n\n getAllKeys(user) {\n var config = { headers: getAuthHeader(user) };\n\n return Repository.get(`${resource}/keys/all`, config);\n },\n\n getTagWithMetaAndKeys(deveuiAndKeys) {\n return Repository.post(\n `${resource}/meta-with-keys`,\n deveuiAndKeys,\n apiConfig()\n );\n },\n\n uploadImage(user, tagId, image) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.post(`${resource}/${tagId}/image`, image, config);\n },\n\n deleteImage(user, tagId) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.delete(`${resource}/${tagId}/image`, config);\n },\n\n setDefaultKey(user, tagId, key) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.post(\n `${resource}/${tagId}/default/${encodeURIComponent(key)}`,\n null,\n config\n );\n },\n\n getTagPool(user) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(`${resource}/pool`, config);\n },\n\n updateTagPoolStatus(user, deveui) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.put(`${resource}/pool/${deveui}`, null, config);\n },\n\n addTagKey(user, payload) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.post(`${resource}/key/add`, payload, config);\n },\n\n updateTagKey(user, payload) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.post(`${resource}/key/update`, payload, config);\n },\n\n deleteTagKey(user, deveui, key) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.delete(\n `${resource}/key/delete/${deveui}/${encodeURIComponent(key)}`,\n config\n );\n },\n\n getKeyLabel(user, deveui, key) {\n if (user === undefined) user = store.getters[\"users/user\"];\n\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(\n `${resource}/key/label/${deveui}/${encodeURIComponent(key)}`,\n config\n );\n },\n\n getDecoders(user) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(`${decoderResource}`, config);\n },\n\n setData(user, tagId, payload) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.post(`${resource}/${tagId}/tagdata`, payload, config);\n },\n\n getDetails(user, tagId) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(`${resource}/detail/${tagId}`, config);\n },\n\n getTagWithInformation(deveui) {\n if (deveui === undefined || deveui === \"\") return {};\n\n return Repository.get(`${resource}/info/${deveui}`, apiConfig());\n },\n\n updateSparkplugMeta(user, deveui, meta) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.put(`${resource}/${deveui}/sparkplug`, meta, config);\n },\n\n getPositions(deveui, from, to) {\n return Repository.get(\n `${resource}/${deveui}/positions/${encodeURIComponent(\n DateHelper.methods.toApiDate(from)\n )}/${encodeURIComponent(DateHelper.methods.toApiDate(to))}`,\n apiConfig()\n );\n },\n\n removePublishing(deveui, publishingType) {\n return Repository.delete(\n `${resource}/publishing/${deveui}/${publishingType}`,\n apiConfig()\n );\n },\n};\n","import Vue from \"vue\";\nimport Router from \"vue-router\";\nimport store from \"@/stores/store\";\nimport i18n from \"@/plugins/i18n.js\";\nimport restrictHelper from \"./_helpers/RestrictHelper.js\";\n\n// Import components\n// const Home = () => import(\"@/views/Home.vue\");\nconst Home = () => import(\"@/views/Landing.vue\");\nconst CommonParent = () => import(\"@/views/CommonParent.vue\");\nconst CleanDashboard = () => import(\"@/views/CleanDashboard.vue\");\nconst AdminDashboard = () => import(\"@/views/AdminDashboard.vue\");\n\nconst Company = () => import(\"@/views/company/Company.vue\");\nconst CompanyUsers = () => import(\"@/components/company/Users.vue\");\nconst CompanyEdit = () => import(\"@/components/company/Edit.vue\");\nconst CompanyCreate = () => import(\"@/components/company/Create.vue\");\nconst CreateUser = () => import(\"@/components/company/CreateUser.vue\");\nconst CompanyApps = () => import(\"@/components/company/Applications.vue\");\n\nconst UserCompanyRegister = () => import(\"@/components/user/Register\");\nconst EditUser = () => import(\"@/components/user/Detail\");\n\nconst ForgotPassword = () => import(\"@/views/ForgotPassword.vue\");\nconst ForgotPasswordComponent = () =>\n import(\"@/components/password/ForgotPasswordComponent.vue\");\nconst NewPassword = () => import(\"@/components/password/NewPassword.vue\");\n\nconst Application = () => import(\"@/views/Application.vue\");\nconst ApplicationCreate = () => import(\"@/components/application/Create.vue\");\nconst ApplicationEdit = () => import(\"@/components/application/Edit.vue\");\n\nconst Tag = () => import(\"@/views/Tag.vue\");\nconst TagList = () => import(\"@/components/tag/Tag.vue\");\nconst TagCreate = () => import(\"@/components/tag/Create.vue\");\nconst TagPool = () => import(\"@/components/tag/TagPool.vue\");\n\nconst TagDetail = () => import(\"@/views/TagDetail.vue\");\n\nconst Alarm = () => import(\"@/views/Alarm.vue\");\nconst AlarmCreate = () => import(\"@/components/alarm/Create.vue\");\nconst AlarmEdit = () => import(\"@/components/alarm/Edit.vue\");\nconst AlarmList = () => import(\"@/components/alarm/AlarmList.vue\");\nconst ActiveAlarms = () => import(\"@/components/alarm/ActiveAlarms.vue\");\n\nconst Login = () => import(\"@/views/Login.vue\");\nconst Register = () => import(\"@/views/Register.vue\");\nconst Logout = () => import(\"@/views/Logout.vue\");\n\nconst ScriptView = () => import(\"@/views/Script.vue\");\nconst ScriptList = () => import(\"@/components/script/ScriptList.vue\");\nconst ScriptCreate = () => import(\"@/components/script/ScriptCreate.vue\");\nconst ScriptEdit = () => import(\"@/components/script/ScriptEdit.vue\");\n\nconst Report = () => import(\"@/views/Report.vue\");\nconst ReportList = () => import(\"@/components/report/ReportList.vue\");\nconst ReportCreate = () => import(\"@/components/report/ReportCreate.vue\");\nconst ReportEdit = () => import(\"@/components/report/ReportEdit.vue\");\nconst DashboardModule = () => import(\"@/components/common/ModuleGrid\");\nconst DashboardPublic = () => import(\"@/views/DashboardPublic.vue\");\n\nconst Contact = () => import(\"@/views/Contact.vue\");\nconst News = () => import(\"@/views/News.vue\");\nconst SettingView = () => import(\"@/views/Setting.vue\");\nconst Settings = () => import(\"@/components/setting/SettingEdit.vue\");\n\nconst SingalTest = () => import(\"@/views/SignalTest.vue\");\nconst PeekSignalTest = () =>\n import(\"@/components/signaltest/PeekSignalTest.vue\");\n\nconst GatewayView = () => import(\"@/views/Gateway.vue\");\nconst GatewayList = () => import(\"@/components/gateway/GatewayList.vue\");\nconst GatewayCreate = () => import(\"@/components/gateway/CreateGateway.vue\");\n\nconst RoleContainer = () => import(\"@/views/RolesContainer.vue\");\nconst RoleList = () => import(\"@/components/roles/RoleList.vue\");\nconst RoleCreate = () => import(\"@/components/roles/RoleCreate.vue\");\nconst RoleEdit = () => import(\"@/components/roles/RoleEdit.vue\");\n\nconst BaseView = () => import(\"@/views/BaseView.vue\");\nconst TemplateDashboard = () => import(\"@/components/db/TemplateDashboard.vue\");\nconst TemplateDashboardForm = () =>\n import(\"@/components/db/TemplateDashboardForm.vue\");\n\nconst DbMapCreateDashboard = () =>\n import(\"@/components/db/dbMap/DbMapCreateDashboard.vue\");\n\nimport { Roles } from \"@/_helpers/Role\";\n\nVue.use(Router);\n\nconst router = new Router({\n routes: [\n {\n path: \"/\",\n name: \"home\",\n component: Home,\n meta: { authorize: [] },\n },\n\n {\n path: \"/settings\",\n component: SettingView,\n meta: { authorize: Roles.CompanyOrUser },\n children: [\n {\n path: \"\",\n name: \"setting/edit\",\n component: Settings,\n },\n ],\n },\n\n {\n path: \"/template-dashboard\",\n name: \"TemplateDashboardBase\",\n component: BaseView,\n meta: { permit: \"Dashboard.View\" },\n children: [\n {\n path: \"\",\n name: \"TemplateDashboardView\",\n component: TemplateDashboard,\n meta: { permit: \"Dashboard.View\" },\n },\n {\n path: \"create\",\n name: \"TemplateDashboardCreate\",\n component: TemplateDashboardForm,\n meta: { permit: \"Dashboard.Create\" },\n },\n {\n path: \"update/:id\",\n name: \"TemplateDashboardUpdate\",\n component: TemplateDashboardForm,\n meta: { permit: \"Dashboard.Update\" },\n },\n ],\n },\n\n {\n path: \"/map\",\n name: \"MapDashboard\",\n meta: { permit: \"Dashboard.View\" },\n component: BaseView,\n children: [\n // {\n // path: \"\",\n // name: \"MapDashboard.View\",\n // component: ViewMapDashboard,\n // meta: { permit: \"Dashboard.View\"}\n // },\n\n {\n path: \"create\",\n name: \"MapDashboard.Create\",\n component: DbMapCreateDashboard,\n meta: { permit: \"Dashboard.Create\" },\n children: [\n {\n path: \":dashboardCategoryId\",\n name: \"MapDashboard.CreateWithCategory\",\n meta: { permit: \"Dashboard.Create\" },\n },\n ],\n },\n ],\n },\n\n {\n path: \"/dashboard\",\n name: \"dashboardChooser\",\n component: CleanDashboard,\n meta: { permit: \"Dashboard.View\" },\n },\n\n {\n path: \"/dashboard/:id\",\n component: DashboardModule,\n meta: { permit: \"Dashboard.View\" },\n },\n\n {\n path: \"/public/:id\",\n component: DashboardPublic,\n meta: { permit: \"ALL\" },\n },\n\n {\n path: \"/alarm\",\n component: Alarm,\n children: [\n {\n path: \"\",\n name: \"alarm\",\n component: AlarmList,\n meta: { permit: \"Alarm.View\" },\n },\n {\n path: \"active\",\n component: ActiveAlarms,\n meta: { permit: \"Alarm.View\" },\n },\n {\n path: \"create\",\n component: AlarmCreate,\n meta: { permit: \"Alarm.Create\" },\n },\n {\n path: \":id\",\n component: AlarmEdit,\n meta: { permit: \"Alarm.Update\" },\n },\n ],\n },\n\n {\n path: \"/gateways\",\n component: GatewayView,\n children: [\n {\n path: \"\",\n component: GatewayList,\n meta: { permit: \"Gateway.View\" },\n },\n {\n path: \"create\",\n component: GatewayCreate,\n meta: { permit: \"Gateway.Create\" },\n },\n ],\n },\n\n {\n path: \"/signaltest\",\n component: CommonParent,\n meta: { permit: \"SignalTest.View\" },\n children: [\n {\n path: \"\",\n component: SingalTest,\n meta: { permit: \"SignalTest.View\" },\n },\n {\n path: \"peek/:id\",\n component: PeekSignalTest,\n meta: { permit: \"SignalTest.View\" },\n },\n ],\n },\n\n {\n path: \"/script\",\n component: ScriptView,\n children: [\n {\n path: \"\",\n component: ScriptList,\n meta: { permit: \"Script.View\" },\n },\n\n {\n path: \"create\",\n component: ScriptCreate,\n meta: { permit: \"Script.Create\" },\n },\n\n {\n path: \":id\",\n component: ScriptEdit,\n meta: { permit: \"Script.Update\" },\n },\n ],\n },\n\n {\n path: \"/company\",\n component: Company,\n children: [\n {\n path: \"\",\n component: CompanyUsers,\n meta: { permit: \"Company.View\" },\n },\n {\n path: \"edit\",\n component: CompanyEdit,\n meta: { permit: \"Company.Update\" },\n },\n {\n path: \"create\",\n component: CompanyCreate,\n meta: { permit: \"Company.Create\" },\n },\n {\n path: \"applications\",\n component: CompanyApps,\n meta: { permit: \"Application.View\" },\n },\n {\n path: \"usercreate\",\n component: CreateUser,\n meta: { permit: \"User.Create\" },\n },\n {\n path: \"user/:id\",\n component: EditUser,\n meta: { permit: \"User.Update\" },\n },\n ],\n },\n\n {\n path: \"/forgot\",\n component: ForgotPassword,\n children: [\n {\n path: \"\",\n component: ForgotPasswordComponent,\n },\n {\n path: \":id\",\n component: NewPassword,\n },\n ],\n },\n\n {\n path: \"/application\",\n component: Application,\n children: [\n {\n path: \"\",\n component: CompanyApps,\n meta: { permit: \"Application.View\" },\n },\n {\n path: \"create\",\n component: ApplicationCreate,\n meta: { permit: \"Application.Create\" },\n },\n {\n path: \":id\",\n component: ApplicationEdit,\n meta: { permit: \"Application.Update\" },\n },\n ],\n },\n\n {\n path: \"/superadmin\",\n component: AdminDashboard,\n meta: { permit: \"SuperAdmin\" },\n },\n\n {\n path: \"/report\",\n component: Report,\n children: [\n {\n path: \"\",\n component: ReportList,\n meta: { permit: \"Report.View\" },\n },\n {\n path: \"create\",\n component: ReportCreate,\n meta: { permit: \"Report.Create\" },\n },\n\n {\n path: \":id\",\n component: ReportEdit,\n meta: { permit: \"Report.Update\" },\n },\n ],\n },\n\n {\n path: \"/tag\",\n component: Tag,\n children: [\n {\n path: \"\",\n component: TagList,\n meta: { permit: \"Tag.View\" },\n },\n {\n path: \"create\",\n component: TagCreate,\n meta: { permit: \"Tag.Create\" },\n },\n {\n path: \"create/:deveui\",\n component: TagCreate,\n meta: { permit: \"Tag.Update\" },\n },\n {\n path: \"pool\",\n component: TagPool,\n meta: { permit: \"TagPool.View\" },\n },\n ],\n },\n\n {\n path: \"/roles\",\n component: RoleContainer,\n children: [\n {\n path: \"\",\n component: RoleList,\n meta: { permit: \"Roles.View\" },\n },\n {\n path: \"create\",\n component: RoleCreate,\n meta: { permit: \"Roles.Create\" },\n },\n\n {\n path: \"edit/:id\",\n component: RoleEdit,\n meta: { permit: \"Roles.Update\" },\n },\n ],\n },\n\n {\n path: \"/tagdetails/:deveui\",\n component: TagDetail,\n meta: { permit: \"Tag.View\" },\n },\n\n {\n path: \"/register\",\n component: Register,\n meta: { permit: \"Company.Create\" },\n children: [\n {\n path: \"\",\n component: UserCompanyRegister,\n meta: { permit: \"Company.Create\" },\n },\n ],\n },\n\n {\n path: \"/login\",\n name: \"Login\",\n component: Login,\n },\n {\n path: \"/logout\",\n name: \"Logout\",\n component: Logout,\n },\n\n {\n path: \"/contact\",\n name: \"Contact\",\n component: Contact,\n },\n\n {\n path: \"/news\",\n name: \"News\",\n component: News,\n },\n ],\n\n duplicateNavigationPolicy: \"reload\",\n});\n\nrouter.beforeEach((to, from, next) => {\n if (\n store.state.languages !== undefined &&\n store.state.languages.language &&\n store.state.languages.language !== i18n.locale\n ) {\n i18n.locale = store.state.languages.language;\n next();\n } else if (\n store.state.languages === undefined ||\n !store.state.languages.language\n ) {\n store\n .dispatch(\"languages/setLanguage\", navigator.languages, { root: true })\n .then(() => {\n i18n.locale = store.state.languages.language;\n next();\n });\n }\n\n if (to.meta.authorize) {\n if (restrictHelper.methods.permitted(to.meta.permit)) {\n next();\n } else {\n return;\n }\n }\n\n next();\n});\n\nexport default router;\n","import Repository from \"@/api/Repository\";\nimport { apiConfig } from \"@/_helpers/apiHelper\";\n\nconst resource = \"/opc\";\n\nexport default {\n getServers() {\n return Repository.get(`${resource}/servers`, apiConfig());\n },\n\n createServer(serverDto) {\n return Repository.post(`${resource}/servers/create`, serverDto, apiConfig());\n },\n\n getServersById(serverId) {\n return Repository.get(`${resource}/servers/${serverId}`, apiConfig());\n },\n\n updateServer(serverId, serverDto) {\n return Repository.put(`${resource}/servers/${serverId}`, serverDto, apiConfig());\n },\n\n deleteServer(serverId) {\n return Repository.delete(`${resource}/servers/${serverId}`, apiConfig());\n },\n\n getNodesByServerId(serverId) {\n return Repository.get(`${resource}/servers/${serverId}/nodes`, apiConfig());\n },\n\n getNodesByDeveui(deveui) {\n return Repository.get(`${resource}/nodes/${deveui}`, apiConfig());\n },\n\n createNode(deveui, nodeDto) {\n return Repository.post(`${resource}/nodes/${deveui}`, nodeDto, apiConfig());\n },\n\n updateNode(nodeId, nodeDto) {\n return Repository.put(`${resource}/nodes/${nodeId}`, nodeDto, apiConfig());\n },\n\n deleteNode(nodeId) {\n return Repository.delete(`${resource}/nodes/${nodeId}`, apiConfig());\n },\n\n addNodeMonitoring(serverId, nodeId) {\n return Repository.post(`${resource}/monitoring/${serverId}/${nodeId}`, apiConfig());\n }\n};","import Repository from \"../Repository\";\r\nimport { getAuthHeader } from \"../../_helpers/apiHelper\";\r\nimport store from \"../../stores/store.js\";\r\n\r\nconst resource = \"/mqtt\";\r\n\r\nexport default {\r\n getBrokers(user, companyId) {\r\n var config = {\r\n headers: getAuthHeader(user),\r\n };\r\n\r\n return Repository.get(`${resource}/company/${companyId}`, config);\r\n },\r\n\r\n getBrokersWithMetrics(user, companyId) {\r\n var config = {\r\n headers: getAuthHeader(user),\r\n };\r\n\r\n return Repository.get(`${resource}/metrics/company/${companyId}`, config);\r\n },\r\n\r\n getBroker(user, brokerId) {\r\n var config = {\r\n headers: getAuthHeader(user),\r\n };\r\n\r\n return Repository.get(`${resource}/${brokerId}`, config);\r\n },\r\n\r\n createBroker(user, companyId, payload) {\r\n var config = {\r\n headers: getAuthHeader(user),\r\n };\r\n\r\n return Repository.post(`${resource}/${companyId}`, payload, config);\r\n },\r\n\r\n updateBroker(user, brokerId, payload) {\r\n var config = {\r\n headers: getAuthHeader(user),\r\n };\r\n\r\n return Repository.put(`${resource}/${brokerId}`, payload, config);\r\n },\r\n\r\n deleteBroker(user, brokerId) {\r\n var config = {\r\n headers: getAuthHeader(user),\r\n };\r\n\r\n return Repository.delete(`${resource}/${brokerId}`, config);\r\n },\r\n\r\n getMqttMeta(user, mqttMetaId) {\r\n var config = {\r\n headers: getAuthHeader(user),\r\n };\r\n\r\n return Repository.get(`${resource}/mqttmeta/${mqttMetaId}`, config);\r\n },\r\n\r\n createMqttMeta(user, brokerId, deveui, payload) {\r\n var config = {\r\n headers: getAuthHeader(user),\r\n };\r\n\r\n return Repository.post(\r\n `${resource}/mqttmeta/${brokerId}/${deveui}`,\r\n payload,\r\n config\r\n );\r\n },\r\n\r\n updateMqttMeta(user, mqttMetaId, brokerId, payload) {\r\n var config = {\r\n headers: getAuthHeader(user),\r\n };\r\n\r\n var url = `${resource}/mqttmeta/${brokerId}/null`;\r\n if (mqttMetaId) url = `${resource}/mqttmeta/${brokerId}/${mqttMetaId}`;\r\n return Repository.put(url, payload, config);\r\n },\r\n\r\n deleteTopic(user, topicId) {\r\n var config = {\r\n headers: getAuthHeader(user),\r\n };\r\n\r\n return Repository.delete(`${resource}/mqttmeta/topic/${topicId}`, config);\r\n },\r\n\r\n testBroker(user, payload) {\r\n var config = {\r\n headers: getAuthHeader(user),\r\n };\r\n\r\n return Repository.post(`${resource}/mqttbroker/test`, payload, config);\r\n },\r\n\r\n testDecode(payload) {\r\n let user = store.state?.users?.currentUser;\r\n if (!user) return undefined;\r\n\r\n var config = {\r\n headers: getAuthHeader(user),\r\n };\r\n\r\n return Repository.post(`${resource}/topic/decode/test`, payload, config)\r\n .then((d) => {\r\n return { success: true, response: d.data };\r\n })\r\n .catch((d) => {\r\n return { success: false, response: d.response?.data ?? \"Unkown error\" };\r\n });\r\n },\r\n};\r\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Notification.vue?vue&type=style&index=0&id=3d3ef689&prod&lang=css\"","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.SO_API_BASE_URL != null)?_c('v-app',{staticClass:\"grey lighten-4\",staticStyle:{\"max-height\":\"100vh\"}},[_c('license-notification'),(\n _vm.$router.currentRoute.name !== 'home' &&\n _vm.currentUser.role != 'PublicDashboard'\n )?_c('NavBar'):_vm._e(),_c('v-main',{class:{\n sientificLight: !this.darkmode && _vm.userSettings.theme != 'Colors',\n sientificDark: this.darkmode && _vm.userSettings.theme != 'Colors',\n backg: _vm.userSettings.theme == 'Colors' && !this.darkmode,\n backgdark: _vm.userSettings.theme == 'Colors' && this.darkmode,\n },staticStyle:{\"padding\":\"0\"}},[_c('router-view')],1),(_vm.message != '')?_c('v-snackbar',{attrs:{\"bottom\":\"\",\"right\":\"\",\"timeout\":3000,\"color\":_vm.alertType == 'error' ? 'red' : 'green'},model:{value:(_vm.refresh),callback:function ($$v) {_vm.refresh=$$v},expression:\"refresh\"}},[_vm._v(_vm._s(_vm.message)+\" \")]):_vm._e(),(_vm.$router.currentRoute.name === 'dashboardChooser')?_c('v-footer',{attrs:{\"app\":\"\"}},[_c('span',[_vm._v(\" \"+_vm._s(this.globalSettings.powered_by ? this.globalSettings.powered_by : \"Nodeledge AB\"))])]):_vm._e(),(_vm.permitted('Tag.View'))?_c('data-hub'):_vm._e()],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('nav',[_c('v-app-bar',{style:(_vm.userSettings != undefined && _vm.userSettings.toolbarTransparent\n ? 'background: transparent;box-shadow:none;'\n : ''),attrs:{\"app\":\"\",\"clipped\":\"\"}},[_c('v-app-bar-nav-icon',{on:{\"click\":function($event){$event.stopPropagation();_vm.drawer = !_vm.drawer}}}),_c('v-spacer'),(_vm.status.loggedIn)?_c('div',{staticClass:\"d-flex justify-center align-center\"},[_c('search'),(_vm.permitted('Dashboard.View'))?_c('DashboardTreeSelect'):_vm._e(),(_vm.permitted('Settings.GetSettings', ''))?_c('Notification'):_vm._e()],1):_vm._e()],1),_c('v-navigation-drawer',{class:{\n darkSientific: _vm.darkTheme && _vm.userSettings.theme == 'Scientific',\n lightSientific: !_vm.darkTheme && _vm.userSettings.theme == 'Scientific',\n lightDrawer: !_vm.darkTheme && _vm.userSettings.theme != 'Scientific',\n darkDrawer: _vm.darkTheme && _vm.userSettings.theme != 'Scientific',\n primary: _vm.userSettings.theme != 'Scientific',\n 'white--text': !_vm.darkTheme,\n 'dark--text': _vm.darkTheme,\n },attrs:{\"app\":\"\",\"temporary\":!_vm.userSettings.stickySideMenu},model:{value:(_vm.drawer),callback:function ($$v) {_vm.drawer=$$v},expression:\"drawer\"}},[_c('v-list',[_c('v-list-item',[_c('v-list-item-content',[_c('v-img',{attrs:{\"height\":\"75px\",\"width\":\"200px\",\"src\":_vm.whiteLabel\n ? 'so-white-label.png'\n : _vm.darkTheme\n ? '/sensor-online-dark.svg'\n : '/sensor-online.svg'}})],1)],1),_c('v-divider'),_vm._l((_vm.viewableLinks),function(link){return _c('v-list-item',{key:link.text,attrs:{\"router\":\"\",\"to\":link.route}},[_c('v-list-item-action',[_c('v-icon',[_vm._v(_vm._s(link.icon))])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(\" \"+_vm._s(link.text)+\" \")])],1)],1)}),_c('v-divider'),_c('v-list-item',{attrs:{\"href\":this.SO_API_BASE_URL,\"target\":\"_blank\"}},[_c('v-list-item-action',[_c('v-icon',[_vm._v(_vm._s(_vm.apiLink.icon))])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(\" \"+_vm._s(_vm.apiLink.text)+\" \")])],1)],1),(_vm.showShopLink == true)?_c('v-list-item',{attrs:{\"href\":_vm.sensorShopLink.externalRoute,\"target\":\"_blank\"}},[_c('v-list-item-action',[_c('v-icon',[_vm._v(_vm._s(_vm.sensorShopLink.icon))])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(\" \"+_vm._s(_vm.sensorShopLink.text)+\" \")])],1)],1):_vm._e(),_c('v-divider'),_c('v-list-item',[_c('v-list-item-content',[_c('v-switch',{attrs:{\"label\":_vm.$t('common.darkTheme')},model:{value:(_vm.darkTheme),callback:function ($$v) {_vm.darkTheme=$$v},expression:\"darkTheme\"}})],1)],1),_c('v-divider'),(_vm.isSuperAdmin() == true)?_c('v-container',{staticClass:\"mg-5\"},[_c('v-subheader',{staticClass:\"justify-center\",attrs:{\"elevation\":\"100\"}},[_c('v-label',[_vm._v(\" \"+_vm._s(_vm.$t(\"common.switchCompany\"))+\" \")])],1),_c('v-autocomplete',{staticStyle:{\"margin-bottom\":\"5rem\"},attrs:{\"items\":_vm.companies,\"placeholder\":_vm.$t('routes.company'),\"item-text\":\"name\",\"item-value\":\"companyId\",\"outlined\":\"\",\"hide-details\":\"\"},on:{\"change\":_vm.submit},model:{value:(_vm.company),callback:function ($$v) {_vm.company=$$v},expression:\"company\"}})],1):_vm._e()],2)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('v-menu',{attrs:{\"bottom\":\"\",\"offset-y\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on, attrs }){return [_c('v-btn',_vm._g(_vm._b({attrs:{\"fab\":\"\",\"small\":\"\"}},'v-btn',attrs,false),on),[_c('v-badge',{attrs:{\"content\":_vm.notifications.length,\"value\":_vm.notifications.length,\"color\":\"error\",\"overlap\":\"\"}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(_vm._s(_vm.notifications.length > 0 ? \"mdi-bell-ring\" : \"mdi-bell\"))])],1)],1)]}}]),model:{value:(_vm.notificationTray),callback:function ($$v) {_vm.notificationTray=$$v},expression:\"notificationTray\"}},[_vm._l((_vm.notifications),function(notification){return _c('v-list',{key:notification.notificationId,staticClass:\"hide-scrollbar\",staticStyle:{\"overflow\":\"scroll\",\"padding\":\"1rem\"},attrs:{\"max-width\":\"600px\",\"min-height\":\"80px\",\"max-height\":\"600px\"}},[_c('v-list-item',{on:{\"click\":function($event){return _vm.clearNotifications(notification.notificationId, notification.route)}}},[_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(\" \"+_vm._s(notification.label)+\" \")]),_c('v-list-item-subtitle',[_vm._v(\" \"+_vm._s(notification.message)+\" \")])],1)],1),_c('v-divider')],1)}),(_vm.notifications.length <= 0)?_c('v-list',{attrs:{\"max-width\":\"600px\",\"min-width\":\"450px\"}},[_c('v-list-item-content',[_c('v-list-item-title',{staticClass:\"text-center\"},[_vm._v(_vm._s(_vm.$t(\"notifications.noNotifications\")))]),_c('v-list-item-subtitle')],1)],1):_vm._e(),_c('v-btn',{attrs:{\"color\":\"primary\",\"block\":\"\"},on:{\"click\":function($event){return _vm.clearNotifications(null)}}},[_vm._v(_vm._s(_vm.$t(\"notifications.clearNotifications\")))])],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n \n \n \n \n {{\n notifications.length > 0 ? \"mdi-bell-ring\" : \"mdi-bell\"\n }}\n \n \n \n \n \n \n \n {{ notification.label }}\n \n \n {{ notification.message }}\n \n \n \n \n \n \n \n {{\n $t(\"notifications.noNotifications\")\n }}\n \n \n \n {{\n $t(\"notifications.clearNotifications\")\n }}\n \n\n\n\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Notification.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Notification.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Notification.vue?vue&type=template&id=3d3ef689\"\nimport script from \"./Notification.vue?vue&type=script&lang=js\"\nexport * from \"./Notification.vue?vue&type=script&lang=js\"\nimport style0 from \"./Notification.vue?vue&type=style&index=0&id=3d3ef689&prod&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('v-dialog',{attrs:{\"max-width\":\"600\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('v-btn',_vm._g({attrs:{\"color\":\"primary\",\"text\":\"\"}},on),[_vm._v(\" \"+_vm._s(_vm.$t(\"dashboard.selectDashboard\"))+\" \")])]}}]),model:{value:(_vm.dialog),callback:function ($$v) {_vm.dialog=$$v},expression:\"dialog\"}},[_c('v-card',[_c('v-card-title',[_vm._v(_vm._s(_vm.$t(\"dashboard.navigationTitle\")))]),_c('v-card-text',[(_vm.dialog)?_c('DashboardCategoryViewer',{on:{\"close\":function($event){_vm.dialog = false}}}):_vm._e()],1),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{attrs:{\"color\":\"primary lighten-1\",\"text\":\"\"},on:{\"click\":function($event){_vm.dialog = false}}},[_vm._v(_vm._s(_vm.$t(\"common.close\")))])],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n \r\n \r\n \r\n {{ $t(\"dashboard.selectDashboard\") }}\r\n \r\n \r\n \r\n {{ $t(\"dashboard.navigationTitle\") }}\r\n \r\n \r\n \r\n \r\n \r\n\r\n {{\r\n $t(\"common.close\")\r\n }}\r\n \r\n \r\n \r\n\r\n\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DashboardTreeSelect.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DashboardTreeSelect.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./DashboardTreeSelect.vue?vue&type=template&id=b6f82782\"\nimport script from \"./DashboardTreeSelect.vue?vue&type=script&lang=js\"\nexport * from \"./DashboardTreeSelect.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('v-container',{staticClass:\"searchbox\"},[_c('v-text-field',{staticStyle:{\"max-width\":\"400px\",\"justify-self\":\"center\",\"align-self\":\"center\"},attrs:{\"prepend-inner-icon\":\"mdi-magnify\",\"label\":\"Search\",\"counter\":\"\",\"hide-details\":\"\",\"autocomplete\":\"off\"},on:{\"change\":_vm.search,\"keydown\":_vm.search,\"focus\":function($event){_vm.showResults = true},\"blur\":_vm.blur},model:{value:(_vm.searchTerm),callback:function ($$v) {_vm.searchTerm=$$v},expression:\"searchTerm\"}}),(_vm.showResults == true)?_c('v-card',{staticClass:\"item-box\"},[(Object.keys(_vm.items).length <= 0 && !_vm.loading)?_c('div',[_c('h4',{staticStyle:{\"padding\":\"1rem\"}},[_vm._v(_vm._s(_vm.$t(\"common.nothingToSee\")))])]):_vm._e(),(_vm.loading)?_c('v-progress-linear',{staticStyle:{\"wdith\":\"100%\"},attrs:{\"height\":5,\"color\":\"primary\",\"indeterminate\":\"\"}}):_vm._e(),_vm._l((_vm.items),function(value,key){return _c('div',{key:key,staticClass:\"item-category\",style:(`background: ${_vm.typeColor(key)}40`)},[_c('h3',[_vm._v(_vm._s(_vm.$t(`common.searchType.${key}`)))]),_c('v-divider',{attrs:{\"color\":_vm.typeColor(key)}}),_vm._l((value),function(item,i){return _c('div',{key:i,staticClass:\"item\"},[_c('h5',{staticClass:\"text--darken\",attrs:{\"href\":_vm.getRoute(item)},on:{\"mousedown\":(e) => _vm.navigate(e, item)}},[_vm._v(\" \"+_vm._s(item.title)+\" \")]),_c('p',[_vm._v(_vm._s(item.description))])])}),_c('v-divider',{attrs:{\"color\":_vm.typeColor(key)}})],2)})],2):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n \r\n \r\n\r\n \r\n \r\n {{ $t(\"common.nothingToSee\") }}\r\n \r\n \r\n\r\n \r\n {{ $t(`common.searchType.${key}`) }}\r\n \r\n \r\n navigate(e, item)\"\r\n class=\"text--darken\"\r\n >\r\n {{ item.title }}\r\n \r\n {{ item.description }}\r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Search.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Search.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Search.vue?vue&type=template&id=46fcf96f&scoped=true\"\nimport script from \"./Search.vue?vue&type=script&lang=js\"\nexport * from \"./Search.vue?vue&type=script&lang=js\"\nimport style0 from \"./Search.vue?vue&type=style&index=0&id=46fcf96f&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"46fcf96f\",\n null\n \n)\n\nexport default component.exports","\n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n \n \n {{ link.icon }}\n \n \n \n {{ link.text }}\n \n \n \n\n \n \n \n {{ apiLink.icon }}\n \n \n \n {{ apiLink.text }}\n \n \n \n \n \n \n {{ sensorShopLink.icon }}\n \n \n \n {{ sensorShopLink.text }}\n \n \n \n\n \n \n \n \n \n \n \n \n \n \n {{ $t(\"common.switchCompany\") }}\n \n \n \n \n \n \n \n\n\n\n\n\n\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??ref--13-1!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavBar.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??ref--13-1!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavBar.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./NavBar.vue?vue&type=template&id=269e3eaa&scoped=true\"\nimport script from \"./NavBar.vue?vue&type=script&lang=js\"\nexport * from \"./NavBar.vue?vue&type=script&lang=js\"\nimport style0 from \"./NavBar.vue?vue&type=style&index=0&id=269e3eaa&prod&lang=css\"\nimport style1 from \"./NavBar.vue?vue&type=style&index=1&id=269e3eaa&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"269e3eaa\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('v-btn',{staticClass:\"event-container-button slide-out\",staticStyle:{\"right\":\"0px\"},attrs:{\"fab\":\"\",\"small\":\"\",\"dark\":\"\",\"color\":\"grey darken-2\",\"fixed\":\"\",\"right\":\"\"},on:{\"click\":function($event){return _vm.openWindow()}}},[_c('v-icon',[_vm._v(\"mdi-connection\")])],1),_c('div',{staticClass:\"event-container slide-out\",style:(`width: ${_vm.window ? _vm.containerWidth : '0px'} `)},[_c('div',{staticClass:\"event-container-header\"},[_c('v-btn',{attrs:{\"fab\":\"\",\"small\":\"\",\"dark\":\"\",\"color\":\"grey darken-2\"},on:{\"click\":function($event){_vm.window = !_vm.window}}},[_c('v-icon',[_vm._v(\"mdi-close\")])],1),_c('v-autocomplete',{staticClass:\"pl-2\",attrs:{\"items\":_vm.searchTags,\"filled\":\"\",\"chips\":\"\",\"item-text\":\"nameWithDeveui\",\"return-object\":\"\",\"multiple\":\"\",\"dark\":\"\",\"placeholder\":_vm.$t('tag.filter'),\"label\":_vm.$t('tag.filter')},scopedSlots:_vm._u([{key:\"selection\",fn:function(data){return [_c('v-chip',_vm._b({staticStyle:{\"color\":\"white\"},attrs:{\"input-value\":data.selected,\"color\":\"#2e4250\",\"close\":\"\"},on:{\"click\":data.select,\"click:close\":function($event){return _vm.remove(data.item)}}},'v-chip',data.attrs,false),[_vm._v(_vm._s(data.item.name))])]}}]),model:{value:(_vm.filterNodes),callback:function ($$v) {_vm.filterNodes=$$v},expression:\"filterNodes\"}})],1),(_vm.window && _vm.events.length <= 0)?_c('div',{staticClass:\"events-loading\"},[_c('v-progress-circular',{attrs:{\"indeterminate\":\"\",\"color\":\"primary\"}}),_c('h4',[_vm._v(_vm._s(_vm.$t(\"eventhub.waiting\")))])],1):_vm._e(),(_vm.window)?_c('div',{staticClass:\"event-messages-container\"},_vm._l((_vm.filteredEvents),function(event){return _c('div',{key:event.id,staticClass:\"event-message\"},[_c('div',{staticClass:\"event-message-header\"},[_c('h3',[_vm._v(\" \"+_vm._s(event.tag.name)+\" \")]),_c('h5',[_vm._v(\" \"+_vm._s(_vm.distanceAgo(event.date))+\" \")])]),_c('span',{staticClass:\"font-size: 1rem\"}),_c('pre',{domProps:{\"innerHTML\":_vm._s(\n event.data\n ? _vm.syntaxHighlight(JSON.stringify(event.data, undefined, 2))\n : ''\n )}})])}),0):_vm._e()])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n \r\n \r\n mdi-connection\r\n \r\n \r\n \r\n mdi-close\r\n \r\n\r\n \r\n \r\n {{ data.item.name }}\r\n \r\n \r\n \r\n\r\n \r\n \r\n {{ $t(\"eventhub.waiting\") }}\r\n \r\n\r\n \r\n \r\n \r\n \r\n {{ event.tag.name }}\r\n \r\n\r\n \r\n {{ distanceAgo(event.date) }}\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DataHub.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DataHub.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./DataHub.vue?vue&type=template&id=51dd616c\"\nimport script from \"./DataHub.vue?vue&type=script&lang=js\"\nexport * from \"./DataHub.vue?vue&type=script&lang=js\"\nimport style0 from \"./DataHub.vue?vue&type=style&index=0&id=51dd616c&prod&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('v-snackbar',{staticStyle:{\"z-index\":\"99999999\"},attrs:{\"timeout\":30000,\"value\":_vm.showLicenseNotification && _vm.isInValidPath,\"absolute\":\"\",\"center\":\"\",\"rounded\":\"\",\"top\":\"\",\"color\":\"warning\"},on:{\"input\":(v) => _vm.setLicenseNotification(v)},scopedSlots:_vm._u([{key:\"action\",fn:function({ attrs }){return [_c('v-btn',_vm._b({attrs:{\"icon\":\"\"},on:{\"click\":() => _vm.setLicenseNotification(false)}},'v-btn',attrs,false),[_c('v-icon',[_vm._v(\"mdi-alpha-x\")])],1)]}}])},[(_vm.$route.path.includes('gateways/create'))?_c('span',[_vm._v(_vm._s(_vm.$t(\"license.limitations.errors.gateway\")))]):(_vm.$route.path.includes('tag/create'))?_c('span',[_vm._v(_vm._s(_vm.$t(\"license.limitations.errors.tag\")))]):(_vm.$route.path.includes('company/create'))?_c('span',[_vm._v(_vm._s(_vm.$t(\"license.limitations.errors.company\")))]):_c('span',[_vm._v(_vm._s(_vm.$t(\"license.limitations.errors.expiresIn\", [_vm.expiresIn])))])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n setLicenseNotification(v)\"\r\n absolute\r\n center\r\n rounded\r\n top\r\n color=\"warning\"\r\n >\r\n {{\r\n $t(\"license.limitations.errors.gateway\")\r\n }}\r\n {{\r\n $t(\"license.limitations.errors.tag\")\r\n }}\r\n {{\r\n $t(\"license.limitations.errors.company\")\r\n }}\r\n {{\r\n $t(\"license.limitations.errors.expiresIn\", [expiresIn])\r\n }}\r\n\r\n \r\n setLicenseNotification(false)\">\r\n mdi-alpha-x\r\n \r\n \r\n \r\n\r\n\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LicenseNotification.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LicenseNotification.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./LicenseNotification.vue?vue&type=template&id=69dca006\"\nimport script from \"./LicenseNotification.vue?vue&type=script&lang=js\"\nexport * from \"./LicenseNotification.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n {{ message }}\r\n \r\n\r\n \r\n \r\n {{\r\n this.globalSettings.powered_by\r\n ? this.globalSettings.powered_by\r\n : \"Nodeledge AB\"\r\n }}\r\n \r\n\r\n \r\n \r\n\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js??ref--13-1!../node_modules/cache-loader/dist/cjs.js??ref--1-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js??ref--13-1!../node_modules/cache-loader/dist/cjs.js??ref--1-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=ad563d54\"\nimport script from \"./App.vue?vue&type=script&lang=js\"\nexport * from \"./App.vue?vue&type=script&lang=js\"\nimport style0 from \"./App.vue?vue&type=style&index=0&id=ad563d54&prod&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import Vue from \"vue\";\nimport Vuetify from \"vuetify/lib\";\nimport \"vuetify/dist/vuetify.min.css\";\nimport \"@mdi/font/css/materialdesignicons.css\";\nimport { colors } from \"vuetify/lib\";\n\nVue.use(Vuetify);\n\nconst opts = {\n iconfont: \"mdi\",\n theme: {\n dark: false,\n themes: {\n light: {\n primary: \"#2196F3\",\n accent: colors.blue.accent1,\n success: colors.green,\n info: colors.yellow.accent3,\n error: colors.red.accent1,\n background: colors.grey.lighten5,\n altBg: colors.grey.lighten3,\n },\n dark: {\n primary: colors.blue.darken3, //\"#5b4fd6\",\n secondary: colors.blue.darken1,\n accent: colors.lightBlue.accent4,\n success: colors.green,\n info: colors.yellow.accent3,\n error: colors.red.accent1,\n background: colors.grey.darken3,\n altBg: colors.grey.darken1,\n },\n },\n },\n};\n\nexport default new Vuetify(opts);\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('v-row',[_c('v-col',{attrs:{\"sm\":\"12\",\"md\":\"7\"}},[_c('vc-date-picker',{staticStyle:{\"max-width\":\"100%\"},attrs:{\"mode\":\"range\",\"is-inline\":\"\",\"is-range\":\"\"},model:{value:(_vm.ranges),callback:function ($$v) {_vm.ranges=$$v},expression:\"ranges\"}})],1),_c('v-col',{attrs:{\"sm\":\"12\",\"md\":\"5\"}},[_c('v-row',_vm._l((_vm.setRanges),function(r){return _c('v-col',{key:r.index,attrs:{\"sm\":\"12\",\"md\":\"12\"}},[_c('v-chip',{staticClass:\"text-center\",staticStyle:{\"width\":\"100%\"},attrs:{\"color\":\"primary\"},on:{\"click\":function($event){return _vm.changeRange(r.range)}}},[_vm._v(_vm._s(r.displayName))])],1)}),1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n \n \n \n \n\n \n \n \n {{ r.displayName }}\n \n \n \n \n\n\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DatePicker.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DatePicker.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./DatePicker.vue?vue&type=template&id=2b982a75\"\nimport script from \"./DatePicker.vue?vue&type=script&lang=js\"\nexport * from \"./DatePicker.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { mapActions, mapState } from \"vuex\";\n\nexport default {\n computed: {\n ...mapState(\"settings\", [\"moduleSettings\"]),\n },\n methods: {\n ...mapActions(\"settings\", [\"addModuleSetting\"]),\n\n storeTimeOffset(moduleId, timeOffset) {\n this.addModuleSetting({ moduleId, timeOffset });\n },\n\n getModuleSettingsTimeOffset(moduleId) {\n if (moduleId != undefined || moduleId != null)\n return this.moduleSettings[moduleId] != undefined ||\n this.moduleSettings[moduleId] != null\n ? this.moduleSettings[moduleId]\n : undefined;\n\n return undefined;\n },\n },\n};\n","export default {\r\n computed: {\r\n isInsideDashboard() {\r\n let reg = this.$route.path.match(\r\n /^\\/dashboard\\/((?:[^\\\\/]+?))(?:\\/(?=$))?$/i\r\n );\r\n\r\n return reg != null && reg.length > 0;\r\n }\r\n },\r\n};\r\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('v-text-field',{attrs:{\"label\":_vm.$t('user.fields.phoneNumber'),\"hint\":_vm.$t('user.fields.phoneNumerHint'),\"persistent-hint\":\"\",\"prepend-icon\":\"mdi-phone\",\"rules\":_vm.validate ? _vm.phoneNumberRules : []},model:{value:(_vm.number),callback:function ($$v) {_vm.number=$$v},expression:\"number\"}})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n \r\n\r\n\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PhonenumberInput.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PhonenumberInput.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./PhonenumberInput.vue?vue&type=template&id=7311ee2a\"\nimport script from \"./PhonenumberInput.vue?vue&type=script&lang=js\"\nexport * from \"./PhonenumberInput.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { gmapApi } from \"vue2-google-maps\";\r\n\r\nexport default {\r\n methods: {\r\n getAddress(latLng) {\r\n return new Promise((resolve, reject) => {\r\n const geocoder = new this.mixinGoogleMaps.maps.Geocoder();\r\n geocoder.geocode({ location: latLng }, (results, status) => {\r\n if (status == \"OK\") {\r\n resolve(results[0].formatted_address);\r\n } else {\r\n reject(status);\r\n }\r\n });\r\n });\r\n },\r\n\r\n async reverseGeoCode(latLng) {\r\n if (!latLng) return;\r\n return await this.getAddress(latLng);\r\n },\r\n },\r\n\r\n computed: {\r\n mixinGoogleMaps: gmapApi,\r\n },\r\n};\r\n","export default {\r\n computed: {\r\n soTheme() {\r\n return this.$vuetify.theme.currentTheme;\r\n },\r\n\r\n isDark() {\r\n return this.$vuetify.theme.dark;\r\n },\r\n\r\n defaultTextColor() {\r\n return this.$vuetify.theme.dark ? \"#ffffff\" : \"#0a0a0a\";\r\n },\r\n },\r\n};\r\n","import Vue from \"vue\";\nimport App from \"./App.vue\";\nimport router from \"./router\";\nimport store from \"./stores/store\";\nimport vuetify from \"./plugins/vuetify\";\nimport i18n from \"@/plugins/i18n\";\nimport VCalendar from \"v-calendar\";\nimport * as VueGoogleMaps from \"vue2-google-maps\";\nimport VueFriendlyIframe from \"vue-friendly-iframe\";\nimport VueScrollTo from \"vue-scrollto\";\nimport DatePicker from \"@/components/common/DatePicker\";\nimport ModuleSettingHelper from \"@/_helpers/moduleSettingsHelper\";\nimport CommonHelper from \"@/_helpers/commonHelper\";\nimport DateHelper from \"@/_helpers/DateHelper\";\nimport RestrictHelper from \"@/_helpers/RestrictHelper\";\nimport PhonenumberInput from \"@/components/common/PhonenumberInput\";\nimport GoogleMapsHelper from \"@/_helpers/mapsHelper\";\nimport Particles from \"particles.vue\";\nimport themeMixin from \"./_helpers/themeMixin\";\n\nimport ECharts from \"vue-echarts\";\nimport { use } from \"echarts/core\";\nimport { CanvasRenderer } from \"echarts/renderers\";\nimport {\n ScatterChart,\n BarChart,\n LineChart,\n GaugeChart,\n PieChart,\n} from \"echarts/charts\";\nimport {\n GridComponent,\n TooltipComponent,\n TitleComponent,\n LegendComponent,\n DataZoomComponent,\n MarkLineComponent,\n PolarComponent,\n} from \"echarts/components\";\n\nDate.prototype.addDays = function (days, zeroTime = true) {\n var date = new Date(this.valueOf());\n date.setDate(date.getDate() + days);\n if (zeroTime) date.setHours(0, 0, 0, 0);\n\n return date;\n};\n\nDate.prototype.addHours = function (h) {\n this.setTime(this.getTime() + h * 60 * 60 * 1000);\n return this;\n};\n\nDate.prototype.zeroTime = function () {\n var date = new Date(this.valueOf());\n date.setHours(0, 0, 0, 0);\n\n return date;\n};\n\nDate.prototype.zeroTimeFromMinutes = function () {\n var date = new Date(this.valueOf());\n date.setMinutes(0, 0, 0);\n\n return date;\n};\n\nVue.prototype.$todo = function () {\n throw \"Not implemented yet\";\n};\n\nuse([\n CanvasRenderer,\n BarChart,\n LineChart,\n GaugeChart,\n PieChart,\n GridComponent,\n TooltipComponent,\n TitleComponent,\n LegendComponent,\n DataZoomComponent,\n MarkLineComponent,\n ScatterChart,\n PolarComponent,\n]);\n\nVue.component(\"e-chart\", ECharts);\nVue.component(\"phone-number-input\", PhonenumberInput);\nVue.component(\"vue-friendly-iframe\", VueFriendlyIframe);\nVue.component(\"DatePicker\", DatePicker);\n\nVue.mixin(ModuleSettingHelper);\nVue.mixin(DateHelper);\nVue.mixin(RestrictHelper);\nVue.mixin(GoogleMapsHelper);\nVue.mixin(CommonHelper);\nVue.mixin(themeMixin);\n\nVue.config.productionTip = false;\nVue.use(Particles);\n\nVue.use(VueScrollTo);\nVue.use(VueScrollTo, {\n container: \"body\",\n duration: 500,\n easing: \"ease\",\n offset: 0,\n force: true,\n cancelable: true,\n onStart: false,\n onDone: false,\n onCancel: false,\n x: false,\n y: true,\n});\n\nVue.use(VueGoogleMaps, {\n load: {\n plugins: [\"places\", \"drawing\", \"visualization\", \"geometry\"],\n key: process.env.VUE_APP_GOOGLE_MAPS_API_KEY,\n },\n installComponents: true,\n});\n\nVue.use(VCalendar, {\n componentPrefix: \"vc\",\n});\n\nnew Vue({\n store,\n router,\n vuetify,\n i18n,\n render: (h) => h(App),\n}).$mount(\"#app\");\n","import Repository from \"../Repository\";\nimport { company, apiConfig, getAuthHeader } from \"../../_helpers/apiHelper\";\n\nconst resource = \"/dashboards\";\nconst companyResource = \"/companies\";\n\nexport default {\n getDashboards(user, companyId) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(`${companyResource}/${companyId}/dashboards`, config);\n },\n\n getDashboard(user, dashboardId) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(`${resource}/${dashboardId}`, config);\n },\n\n duplicate(user, dashboardId, payload) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.post(\n `${resource}/${dashboardId}/duplicate`,\n payload,\n config\n );\n },\n\n create(user, payload) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.post(`${resource}`, payload, config);\n },\n\n createForCompany(payload, dashboardType = undefined) {\n let url =\n `${resource}/create/${company()}` +\n (dashboardType !== undefined ? \"/\" + dashboardType : \"\");\n return Repository.post(url, payload, apiConfig());\n },\n\n update(user, dashboardId, payload) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.put(`${resource}/${dashboardId}`, payload, config);\n },\n\n delete(user, dashboardId) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.delete(`${resource}/${dashboardId}`, config);\n },\n\n setDefault(user, dashboardId) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.put(`${resource}/${dashboardId}/default`, null, config);\n },\n\n getDefault(user) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(`${resource}/default`, config);\n },\n\n createPublicDashboard(user, companyId, dashboardId, expiresAt) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.post(\n `${resource}/public/${companyId}/${dashboardId}/${expiresAt}`,\n null,\n config\n );\n },\n\n getPublicDashboards(user, companyId) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(`${resource}/public/company/${companyId}`, config);\n },\n\n getPublicDashboard(publicDashboardId) {\n return Repository.get(`${resource}/public/${publicDashboardId}`);\n },\n\n deletePublicDashboard(user, publicDashboardId) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.delete(`${resource}/public/${publicDashboardId}`, config);\n },\n\n getDashboardCategories(user, companyId) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(`${resource}/categories/${companyId}`, config);\n },\n\n createDashboardCategories(user, companyId, payload) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.post(\n `${resource}/categories/${companyId}`,\n payload,\n config\n );\n },\n\n updateDashboardCategories(user, categoryId, payload) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.put(\n `${resource}/categories/${categoryId}`,\n payload,\n config\n );\n },\n\n updateDashboardIndexes(user, payload) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.put(`${resource}/categories/indexes`, payload, config);\n },\n\n removeDashboardIndexes(user, categoryId) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.delete(`${resource}/categories/${categoryId}`, config);\n },\n\n removeDashboardMarker(markerId) {\n return Repository.delete(`${resource}/map/marker/${markerId}`, apiConfig());\n },\n\n createOrUpdateMarker(dashboardId, payload) {\n return Repository.post(\n `${resource}/map/marker/${dashboardId}`,\n payload,\n apiConfig()\n );\n },\n};\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DataHub.vue?vue&type=style&index=0&id=51dd616c&prod&lang=scss\"","import i18n from \"@/plugins/i18n\";\n\nexport default {\n decoders: [\n { name: i18n.t(\"tag.chooseDecoder\"), key: \"\" },\n { name: \"Acrios LoadCell\", key: \"acrios_load\" },\n { name: \"Adeunis Temp\", key: \"adeunis_temp\" },\n { name: \"Adeunis 4DI\", key: \"adeunis_4di\" },\n { name: \"Adeunis 50A\", key: \"adeunis50a\" },\n { name: \"Adeunis 100A\", key: \"adeunis100a\" },\n { name: \"Aqualabo\", key: \"aqualabo\" },\n { name: \"Ellenex\", key: \"ellenex\" },\n { name: \"Elsys\", key: \"elsys\" },\n { name: \"Hummbox\", key: \"hummbox\" },\n { name: \"Tecscale\", key: \"tecscale\" },\n { name: \"Yabby Gps\", key: \"yabby_gps\" },\n { name: \"Guppy Gps\", key: \"guppy_gps\" },\n { name: \"Oyster Gps\", key: \"oyster_gps\" },\n { name: \"Ursalink N1\", key: \"ursalink_n1\" },\n { name: \"Ursalink T1\", key: \"ursalink_t1\" },\n { name: \"Radiobrige DI\", key: \"radiobridge_di\" },\n { name: \"SigFox Tempguard\", key: \"sigfox_tempguard\" },\n { name: \"Sensative Strips\", key: \"strips\" },\n { name: \"Axiom Water Gauge\", key: \"axiom_water_guage\" },\n { name: \"Epic Sensor\", key: \"epicwlt\" },\n { name: \"Ecoadapt\", key: \"ecoadapt\" },\n { name: \"Squid Decoder\", key: \"squid\" },\n { name: \"IMBuildings People Counter\", key: \"people_counter\" },\n { name: \"EnLink\", key: \"enlink\" },\n { name: \"Ursalink AM100\", key: \"ursalink_am100\" },\n { name: \"Ursalink EM500\", key: \"ursalink_em500\" },\n { name: \"Digital Matter Sensordata\", key: \"dm_sensordata\" },\n { name: \"MCF88\", key: \"mcf88\" },\n { name: \"ELA Innovation\", key: \"ela_innovation\" },\n { name: \"Polysense\", key: \"polysense\" },\n { name: \"Robeau DN20\", key: \"robeau_dn20\" },\n { name: \"Robeau DN25\", key: \"robeau_dn25\" },\n { name: \"Pycom Scale\", key: \"pycomscale\" },\n {\n name: \"MCF88 RS485 Thermoelement\",\n key: \"mcf88_rs485_thermoelement\",\n },\n { name: \"Raw Data\", key: \"raw\" },\n { name: \"Netvox 150\", key: \"netvox_150\" },\n { name: \"Tekbox TBS12\", key: \"tekbox_tbs12\" },\n { name: \"Tektelic Agri\", key: \"tektelic_agri\" },\n { name: \"Talkpool OY1210\", key: \"talkpool_oy1210\" },\n { name: \"IoT-AB Pycom\", key: \"iot_pycom\" },\n { name: \"Keller ADT1\", key: \"keller_adt1\" },\n { name: \"Snow Depth Lidar\", key: \"snow_depth\" },\n { name: \"Laird RS1XX\", key: \"laird_rs1xx\" },\n { name: \"Browan TBMS100\", key: \"browan_tbms100\" },\n { name: \"Infinite Informatics ADS270\", key: \"infinite_ads270\" },\n { name: \"ParametricPCR2\", key: \"parametric_pcr2\" },\n { name: \"Adeunis Field Tester\", key: \"adeunis_ftd\" },\n { name: \"ICT International EF NODE\", key: \"ict_ef_node\" },\n { name: \"Decentlab Depth Temp\", key: \"dl_depth\" },\n { name: \"Decentlab Range Finder\", key: \"decentlab_range_finder\" },\n { name: \"Decentlab Pressure Temp\", key: \"decentlab_pressure_temp\" },\n { name: \"Decentlab 10HS\", key: \"decentlab_10hs\" },\n { name: \"Decentlab 5TE\", key: \"decentlab_5te\" },\n { name: \"Decentlab 5TM\", key: \"decentlab_5tm\" },\n { name: \"Decentlab AC\", key: \"decentlab_ac\" },\n { name: \"Decentlab ATM22\", key: \"decentlab_atm22\" },\n { name: \"Decentlab ATM41\", key: \"decentlab_atm41\" },\n { name: \"Decentlab CTD10\", key: \"decentlab_ctd10\" },\n { name: \"Decentlab DLR2002\", key: \"decentlab_dlr2002\" },\n { name: \"Decentlab DLR2003\", key: \"decentlab_dlr2003\" },\n { name: \"Decentlab DLR2004\", key: \"decentlab_dlr2004\" },\n { name: \"Decentlab DLR2005\", key: \"decentlab_dlr2005\" },\n { name: \"Decentlab DLR2006\", key: \"decentlab_dlr2006\" },\n { name: \"Decentlab DLR2008\", key: \"decentlab_dlr2008\" },\n { name: \"Decentlab DLR20010\", key: \"decentlab_dlr20010\" },\n { name: \"Decentlab DLR20012\", key: \"decentlab_dlr20012\" },\n { name: \"Decentlab DS18\", key: \"decentlab_ds18\" },\n { name: \"Decentlab GS3\", key: \"decentlab_gs3\" },\n { name: \"Decentlab IAM\", key: \"decentlab_iam\" },\n { name: \"Decentlab ITST\", key: \"decentlab_itst\" },\n { name: \"Decentlab KL66\", key: \"decentlab_kl66\" },\n { name: \"Decentlab LP8P\", key: \"decentlab_lp8p\" },\n { name: \"Decentlab MBX\", key: \"decentlab_mbx\" },\n { name: \"Decentlab OPTOD\", key: \"decentlab_optod\" },\n { name: \"Decentlab PAR\", key: \"decentlab_par\" },\n { name: \"Decentlab PR21\", key: \"decentlab_pr21\" },\n { name: \"Decentlab PR26\", key: \"decentlab_pr26\" },\n { name: \"Decentlab PR36\", key: \"decentlab_pr36\" },\n { name: \"Decentlab PR36CTD\", key: \"decentlab_pr36ctd\" },\n { name: \"Decentlab PYR\", key: \"decentlab_pyr\" },\n { name: \"Decentlab RHC\", key: \"decentlab_rhc\" },\n { name: \"Decentlab SHT21\", key: \"decentlab_sht21\" },\n { name: \"Decentlab SHT35\", key: \"decentlab_sht35\" },\n { name: \"Decentlab SMTP\", key: \"decentlab_smtp\" },\n { name: \"Decentlab TBRG\", key: \"decentlab_tbrg\" },\n { name: \"Decentlab TRS11\", key: \"decentlab_trs11\" },\n { name: \"Decentlab TRS12\", key: \"decentlab_trs12\" },\n { name: \"Decentlab TRS21\", key: \"decentlab_trs21\" },\n { name: \"Decentlab ZN1\", key: \"decentlab_zn1\" },\n { name: \"Decentlab ZN2\", key: \"decentlab_zn2\" },\n ],\n};\n","export * from \"-!../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../node_modules/cache-loader/dist/cjs.js??ref--1-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=style&index=0&id=ad563d54&prod&lang=css\"","import Repository from \"../Repository\";\nimport { getAuthHeader } from \"../../_helpers/apiHelper\";\n\nconst resource = \"/users\";\n\nexport default {\n get(user) {\n var config = {\n headers: getAuthHeader(user)\n };\n\n return Repository.get(`${resource}`, config);\n },\n\n getAll(user) {\n var config = {\n headers: getAuthHeader(user)\n };\n\n return Repository.get(`${resource}/all`, config);\n },\n\n getById(user, userId) {\n var config = {\n headers: getAuthHeader(user)\n };\n\n return Repository.get(`${resource}/${userId}`, config);\n },\n\n getCompany(user) {\n var config = {\n headers: getAuthHeader(user)\n };\n\n return Repository.get(`${resource}/${user.userId}/company`, config);\n },\n\n register(payload) {\n return Repository.post(`${resource}`, payload);\n },\n\n edit(user, userId, payload) {\n var config = {\n headers: getAuthHeader(user)\n };\n\n return Repository.put(`${resource}/${userId}`, payload, config);\n },\n\n delete(user, userId) {\n var config = {\n headers: getAuthHeader(user)\n };\n\n return Repository.delete(`${resource}/${userId}`, config);\n },\n\n updateRole(user, targetUserId, role) {\n var config = {\n headers: getAuthHeader(user)\n };\n\n return Repository.put(\n `${resource}/${targetUserId}/role/${role}`,\n null,\n config\n );\n },\n\n login(email, password) {\n const data = {\n email: email,\n password: password\n };\n\n return Repository.post(`${resource}/authenticate`, data);\n },\n\n createUserWithCompany(user, payload) {\n var config = {\n headers: getAuthHeader(user)\n }\n return Repository.post(`${resource}/create/company`, payload, config);\n },\n\n forgotPassword(email) {\n return Repository.post(`${resource}/forgot/${email}`, null);\n },\n\n forgotPasswordUpdate(guid, password) {\n return Repository.put(`${resource}/forgot/${guid}`, { password: password });\n }\n};\n","import Repository from \"../Repository\";\nimport { getAuthHeader } from \"../../_helpers/apiHelper\";\n\nconst resource = \"/companies\";\n\nexport default {\n get(user) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(`${resource}`, config);\n },\n getAll(user) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(`${resource}/all`, config);\n },\n\n getCompany(user) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(`${resource}`, config);\n },\n\n getCompanyById(user, companyId) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(`${resource}/${companyId}`, config);\n },\n\n getCompanyUsers(user, companyId) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(`${resource}/${companyId}/users`, config);\n },\n\n getCompanyApplications(user, companyId) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(`${resource}/${companyId}/applications`, config);\n },\n\n getCompanyTagData(user, companyId) {\n var header = getAuthHeader(user);\n header[\"Accept-Encoding\"] = \"br\";\n\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(`${resource}/${companyId}/tagdata`, config);\n },\n\n create(user, payload) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.post(`${resource}`, payload, config);\n },\n\n edit(user, companyId, payload) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.put(`${resource}/${companyId}`, payload, config);\n },\n\n delete(user, companyId) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.delete(`${resource}/${companyId}`, config);\n },\n\n getTagDataWithMetrics(user, companyId, metrics) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(`${resource}/${companyId}/tagdata${metrics}`, config);\n },\n\n getTagDataDefaults(user, companyId) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(`${resource}/${companyId}/defaults`, config);\n },\n\n getTagDataPoints(user, companyId) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(`${resource}/${companyId}/tagdata/count`, config);\n },\n\n createUser(user, companyId, userPayload) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.post(\n `${resource}/${companyId}/user`,\n userPayload,\n config\n );\n },\n\n postImage(user, companyId, image) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.post(`${resource}/${companyId}/image`, image, config);\n },\n\n deleteImage(user, companyId) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.delete(`${resource}/${companyId}/image`, config);\n },\n\n latestActivity(user, companyId) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(`${resource}/${companyId}/tag/activity`, config);\n },\n\n getBatteryStatuses(user, companyId) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(`${resource}/${companyId}/tag/batteries`, config);\n },\n\n getLatestTagData(user, companyId) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(`${resource}/${companyId}/latesttagdata`, config);\n },\n\n getDatapointsLastWeek(user, companyId) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(`${resource}/${companyId}/datapointsweek`, config);\n },\n\n getDatapointsLastDay(user, companyId) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(`${resource}/${companyId}/datapointsday`, config);\n },\n\n getSensorDatapointsLastDay(user, companyId) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(\n `${resource}/${companyId}/sensordatapoints/day`,\n config\n );\n },\n\n getTagsWithInformation(user, companyId) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(`${resource}/${companyId}/tags`, config);\n },\n\n getShared(user) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(`${resource}/shared`, config);\n },\n};\n","import Repository from \"../Repository\";\nimport { getAuthHeader } from \"../../_helpers/apiHelper\";\n\nconst resource = \"/applications\";\n\nexport default {\n create(user, companyId, applicationPayload) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.post(\n `${resource}/${companyId}`,\n applicationPayload,\n config\n );\n },\n\n update(user, id, applicationPayload) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.put(`${resource}/${id}`, applicationPayload, config);\n },\n\n delete(user, applicationId) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.delete(`${resource}/${applicationId}`, config);\n },\n\n get(user, applicationId) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(`${resource}/${applicationId}`, config);\n },\n};\n","import Repository from \"../Repository\";\nimport { getAuthHeader } from \"../../_helpers/apiHelper\";\n\nconst resource = \"/alarms\";\nconst companyResource = \"/companies\";\n\nexport default {\n get(user, companyId) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(`${companyResource}/${companyId}/alarm`, config);\n },\n\n getById(user, alarmId) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(`${resource}/${alarmId}`, config);\n },\n\n create(user, companyId, alarmPayload) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.post(\n `${companyResource}/${companyId}/alarm`,\n alarmPayload,\n config\n );\n },\n\n update(user, companyId, alarmId, alarmPayload) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.put(\n `${companyResource}/${companyId}/alarm/${alarmId}`,\n alarmPayload,\n config\n );\n },\n\n getActiveAlarms(user, companyId) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(\n `${companyResource}/${companyId}/alarm/active`,\n config\n );\n },\n\n getAlarmHistory(user, companyId) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(\n `${companyResource}/${companyId}/alarm/history`,\n config\n );\n },\n\n setActiveAlarmStatus(user, activeAlarmId) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.post(\n `${resource}/active/${activeAlarmId}/status`,\n null,\n config\n );\n },\n\n delete(user, alarmId) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.delete(`${resource}/${alarmId}`, config);\n },\n\n duplicate(user, alarmId) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.post(`${resource}/copy/${alarmId}`, null, config);\n },\n\n testSettings(user, payload) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.post(`${resource}/setting/test`, payload, config);\n },\n};\n","import Repository from \"../Repository\";\nimport { getAuthHeader } from \"../../_helpers/apiHelper\";\n\nconst resource = \"/script\";\n\nexport default {\n getScripts(user, companyId) {\n var config = {\n headers: getAuthHeader(user)\n };\n\n return Repository.get(`${resource}/company/${companyId}`, config);\n },\n\n getScript(user, scriptId) {\n var config = {\n headers: getAuthHeader(user)\n };\n\n return Repository.get(`${resource}/${scriptId}`, config);\n },\n\n create(user, companyId, payload) {\n var config = {\n headers: getAuthHeader(user)\n };\n\n return Repository.post(`${resource}/${companyId}`, payload, config);\n },\n\n put(user, scriptId, payload) {\n var config = {\n headers: getAuthHeader(user)\n };\n\n return Repository.put(`${resource}/${scriptId}`, payload, config);\n },\n\n delete(user, scriptId) {\n var config = {\n headers: getAuthHeader(user)\n };\n\n return Repository.delete(`${resource}/${scriptId}`, config);\n },\n\n test(user, payload, companyId) {\n var config = {\n headers: getAuthHeader(user)\n };\n\n return Repository.post(`${resource}/test/${companyId}`, payload, config);\n },\n execute(user, scriptId) {\n var config = {\n headers: getAuthHeader(user)\n };\n\n return Repository.get(`${resource}/run/${scriptId}`, config);\n }\n};\n","import Repository from \"../Repository\";\nimport { getAuthHeader } from \"../../_helpers/apiHelper\";\n\nconst resource = \"/report\";\n\nexport default {\n getReport(user, reportId) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(`${resource}/${reportId}`, config);\n },\n\n getReports(user, companyId) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(`${resource}/company/${companyId}`, config);\n },\n\n create(user, payload) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.post(`${resource}`, payload, config);\n },\n\n update(user, reportId, payload) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.put(`${resource}/${reportId}`, payload, config);\n },\n\n delete(user, reportId) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.delete(`${resource}/${reportId}`, config);\n },\n\n multiExport(user, payload, companyId = null) {\n var config = {\n headers: getAuthHeader(user),\n responseType: \"blob\",\n };\n\n return Repository.post(\n `${resource}/multiexport/${companyId}`,\n payload,\n config\n );\n },\n};\n","import Repository from \"../Repository\";\nimport { getAuthHeader } from \"../../_helpers/apiHelper\";\n\nconst resource = \"/dashboards\";\nconst moduleResource = \"modules\";\n\nexport default {\n get(user, dashboardId) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(\n `${resource}/${dashboardId}/${moduleResource}`,\n config\n );\n },\n\n getModule(user, moduleId) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(`${resource}/modules/${moduleId}`, config);\n },\n\n create(user, dashboardId, payload) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.post(\n `${resource}/${dashboardId}/${moduleResource}`,\n payload,\n config\n );\n },\n\n update(user, moduleId, payload) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.put(\n `${resource}/${moduleResource}/${moduleId}`,\n payload,\n config\n );\n },\n\n updateModules(user, payload) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.put(\n `${resource}/${moduleResource}/multiple`,\n payload,\n config\n );\n },\n\n delete(user, moduleId) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.delete(\n `${resource}/${moduleResource}/${moduleId}`,\n config\n );\n },\n\n postImage(user, moduleId, image) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.post(\n `${resource}/modules/${moduleId}/image`,\n image,\n config\n );\n },\n\n deleteImage(user, moduleId) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.delete(`${resource}/modules/${moduleId}/image`, config);\n },\n\n getTagDataForModule(user, moduleId, metrics) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(\n `${resource}/modules/${moduleId}/tagdata${metrics}`,\n config\n );\n },\n\n getTagDataForModuleByLimit(user, moduleId, limit) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(\n `${resource}/modules/${moduleId}/tagdata/limit/${limit}`,\n config\n );\n },\n\n getLatestTagDataForModule(user, moduleId) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(\n `${resource}/modules/${moduleId}/tagdata/latest`,\n config\n );\n },\n\n copyModule(user, moduleId) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.post(\n `${resource}/modules/copy/${moduleId}`,\n null,\n config\n );\n },\n};\n","import Repository from \"../Repository\";\nimport { getAuthHeader } from \"../../_helpers/apiHelper\";\n\nconst resource = \"/logs\";\n\nexport default {\n get(user, metrics) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(`${resource}${metrics}`, config);\n },\n\n getActiveUsers(user) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(`${resource}/activeusers`, config);\n },\n\n getDatapoints(user) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(`${resource}/datapoints`, config);\n },\n\n getActiveAlarms(user) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(`/alarms/active/all`, config);\n },\n};\n","import Repository from \"../Repository\";\nimport { getAuthHeader } from \"../../_helpers/apiHelper\";\n\nconst resource = \"/notification\";\n\nexport default {\n get(user, userId) {\n var config = {\n headers: getAuthHeader(user)\n };\n\n return Repository.get(`${resource}/${userId}`, config);\n },\n\n deactivate(user, notificationId) {\n var config = {\n headers: getAuthHeader(user)\n };\n\n return Repository.put(`${resource}/deactivate/${notificationId}`, {}, config);\n },\n\n deactivateAll(user, userId) {\n var config = {\n headers: getAuthHeader(user)\n };\n\n return Repository.put(`${resource}/deactivate/all/${userId}`, {}, config);\n }\n};\n","import Repository from \"../Repository\";\r\nimport { getAuthHeader } from \"../../_helpers/apiHelper\";\r\n\r\nconst resource = \"/signaltest\";\r\n\r\nexport default {\r\n getTests(user, companyId) {\r\n var config = {\r\n headers: getAuthHeader(user),\r\n };\r\n\r\n return Repository.get(`${resource}/${companyId}`, config);\r\n },\r\n\r\n peek(user, testId) {\r\n var config = {\r\n headers: getAuthHeader(user),\r\n };\r\n\r\n return Repository.get(`${resource}/peek/${testId}`, config);\r\n },\r\n\r\n getTest(user, testId) {\r\n var config = {\r\n headers: getAuthHeader(user),\r\n };\r\n\r\n return Repository.get(`${resource}/single/${testId}`, config);\r\n },\r\n\r\n startTest(user, companyId, deveui, payload) {\r\n var config = {\r\n headers: getAuthHeader(user),\r\n };\r\n\r\n return Repository.post(\r\n `${resource}/${companyId}/${deveui}`,\r\n payload,\r\n config\r\n );\r\n },\r\n\r\n endTest(user, testId) {\r\n var config = {\r\n headers: getAuthHeader(user),\r\n };\r\n\r\n return Repository.put(`${resource}/end/${testId}`, null, config);\r\n },\r\n\r\n deleteTest(user, testId) {\r\n var config = {\r\n headers: getAuthHeader(user),\r\n };\r\n\r\n return Repository.delete(`${resource}/${testId}`, config);\r\n },\r\n};\r\n","import Repository from \"../Repository\";\nimport { getAuthHeader } from \"../../_helpers/apiHelper\";\n\nconst resource = \"/gateway\";\n\nexport default {\n create(user, applicationId, gatewayPayload) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.post(\n `${resource}/${applicationId}`,\n gatewayPayload,\n config\n );\n },\n\n delete(user, gatewayId) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.delete(`${resource}/${gatewayId}`, config);\n },\n\n getByCompany(user, companyId) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(`${resource}/company/${companyId}`, config);\n },\n\n getById(user, gatewayId) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(`${resource}/${gatewayId}`, config);\n },\n\n updatePosition(user, gatewayId, position) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.put(`${resource}/${gatewayId}/pos`, position, config);\n },\n};\n","import Repository from \"../Repository\";\r\nimport { getAuthHeader } from \"../../_helpers/apiHelper\";\r\n\r\nconst resource = \"/downlink\";\r\n\r\nexport default {\r\n getForTag(user, deveui) {\r\n var config = {\r\n headers: getAuthHeader(user)\r\n };\r\n\r\n return Repository.get(`${resource}/tag/${deveui}`, config);\r\n },\r\n\r\n removeDownlink(user, downlinkQueueId) {\r\n var config = {\r\n headers: getAuthHeader(user)\r\n };\r\n\r\n return Repository.delete(`${resource}/${downlinkQueueId}`, config);\r\n },\r\n\r\n createDownlink(user, deveui, payload) {\r\n var config = {\r\n headers: getAuthHeader(user)\r\n };\r\n\r\n return Repository.post(`${resource}/${deveui}`, payload, config);\r\n }\r\n};\r\n","import Repository from \"../Repository\";\r\nimport { getAuthHeader } from \"../../_helpers/apiHelper\";\r\n\r\nconst resource = \"/roles\";\r\n\r\nexport default {\r\n getAllByCompany(user, companyId) {\r\n var config = {\r\n headers: getAuthHeader(user),\r\n };\r\n\r\n return Repository.get(`${resource}/${companyId}`, config);\r\n },\r\n\r\n getPermissions(user) {\r\n var config = {\r\n headers: getAuthHeader(user),\r\n };\r\n\r\n return Repository.get(`${resource}/permissions`, config);\r\n },\r\n\r\n\r\n getRecommendedPermissions(user, payload) {\r\n var config = {\r\n headers: getAuthHeader(user),\r\n };\r\n\r\n return Repository.post(`${resource}/recommended-permissions`, payload, config);\r\n },\r\n\r\n getUserPermissionsByUserId(user) {\r\n var config = {\r\n headers: getAuthHeader(user)\r\n }\r\n\r\n return Repository.get(`${resource}/current-user-permissions`, config);\r\n },\r\n\r\n create(user, companyId, payload) {\r\n var config = {\r\n headers: getAuthHeader(user),\r\n };\r\n\r\n return Repository.post(`${resource}/${companyId}`, payload, config);\r\n },\r\n\r\n\r\n update(user, userRoleId, payload) {\r\n var config = {\r\n headers: getAuthHeader(user),\r\n };\r\n\r\n return Repository.put(`${resource}/${userRoleId}`, payload, config);\r\n },\r\n\r\n\r\n delete(user, userRoleId) {\r\n var config = {\r\n headers: getAuthHeader(user),\r\n };\r\n\r\n return Repository.delete(`${resource}/${userRoleId}`, config);\r\n },\r\n};\r\n","import UsersRepository from \"./repositories/usersRepository\";\nimport CompanyRepository from \"./repositories/companyRepository\";\nimport AppsRepository from \"./repositories/applicationRepository\";\nimport TagDataRepository from \"./repositories/tagDataRepository\";\nimport TagRepository from \"./repositories/tagRepository\";\nimport AlarmRepository from \"./repositories/alarmRepository\";\nimport ScriptRepository from \"./repositories/scriptRepository\";\nimport ReportRepository from \"./repositories/reportRepository\";\nimport DashboardRepository from \"./repositories/dashboardRepository\";\nimport ModuleRepository from \"./repositories/moduleRepository\";\nimport LogRepository from \"./repositories/logRepository\";\nimport NotificationRepository from \"./repositories/notificationRepository\";\nimport SignalTestRepository from \"./repositories/signalTestRepository\";\nimport LicenseRepository from \"./repositories/licenseRepository\";\nimport GatewayRepository from \"./repositories/gatewayRepository\";\nimport IntegrationsRepository from \"./repositories/integrationsRepository\";\nimport DownlinkRepository from \"./repositories/downlinkRepository\";\nimport RoleRepository from \"./repositories/roleRepository\";\n\nconst repositories = {\n users: UsersRepository,\n companies: CompanyRepository,\n applications: AppsRepository,\n tagdata: TagDataRepository,\n tag: TagRepository,\n alarm: AlarmRepository,\n script: ScriptRepository,\n report: ReportRepository,\n dashboard: DashboardRepository,\n module: ModuleRepository,\n log: LogRepository,\n notification: NotificationRepository,\n signalTest: SignalTestRepository,\n license: LicenseRepository,\n gateways: GatewayRepository,\n integrations: IntegrationsRepository,\n downlinks: DownlinkRepository,\n roles: RoleRepository\n};\n\nexport const RepositoryFactory = {\n get: (name) => repositories[name],\n};\n","import { RepositoryFactory } from \"../../api/RepositoryFactory\";\r\n\r\nconst IntegrationRepository = RepositoryFactory.get(\"integrations\");\r\n\r\nexport const accessTokens = {\r\n namespaced: true,\r\n state: {\r\n },\r\n\r\n actions: {\r\n async getAccessTokens({rootState}) {\r\n var user = rootState.users.currentUser\r\n\r\n return await IntegrationRepository.getAccessTokens(user, rootState.users.userCompany.companyId)\r\n .then(d => d.data);\r\n },\r\n\r\n async deleteAccessToken({rootState}, tokenId) {\r\n var user = rootState.users.currentUser\r\n await IntegrationRepository.deleteToken(user, tokenId);\r\n },\r\n\r\n async createToken({rootState}, payload) {\r\n await IntegrationRepository.createToken(rootState.users.currentUser, rootState.users.userCompany.companyId, payload);\r\n }\r\n\r\n \r\n },\r\n\r\n mutations: {\r\n },\r\n};\r\n","import { RepositoryFactory } from \"../../api/RepositoryFactory\";\nimport i18n from \"@/plugins/i18n\";\nconst AlarmRepository = RepositoryFactory.get(\"alarm\");\n\nexport const alarms = {\n namespaced: true,\n state: {\n currentAlarm: {},\n activeAlarms: [],\n alarms: [],\n settingResponse: {},\n status: {\n loading: false,\n },\n },\n\n actions: {\n async testSettings({ commit, rootState }, payload) {\n var user = rootState.users.currentUser;\n\n await AlarmRepository.testSettings(user, payload)\n .then((res) => {\n commit(\"SET_SETTING_RESPONSE\", res.data);\n })\n .catch((res) => {\n commit(\"SET_SETTING_RESPONSE\", res.response.data);\n });\n },\n\n async getAlarms({ commit, rootState }) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await AlarmRepository.get(user, rootState.users.userCompany.companyId)\n .then((alarms) => {\n commit(\"GET_ALARM\", alarms.data);\n commit(\"LOADING\", false);\n })\n .catch(() => {\n commit(\"LOADING\", false);\n });\n },\n\n async createAlarm({ dispatch, commit, rootState }, { alarmPayload }) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await AlarmRepository.create(\n user,\n rootState.users.userCompany.companyId,\n alarmPayload\n )\n .then((alarm) => {\n dispatch(\"getAlarms\");\n commit(\"CREATE_ALARM\", alarm.data);\n commit(\"LOADING\", false);\n dispatch(\"alert/success\", i18n.t(\"common.created\"), { root: true });\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n },\n\n async updateAlarm({ dispatch, commit, rootState }, { payload, alarmId }) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await AlarmRepository.update(\n user,\n rootState.users.userCompany.companyId,\n alarmId,\n payload\n )\n .then(() => {\n commit(\"LOADING\", false);\n dispatch(\"alert/success\", i18n.t(\"common.updated\"), { root: true });\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n commit(\"LOADING\", false);\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n });\n\n await dispatch(\"getAlarms\");\n },\n\n async setCurrentAlarm({ commit }, alarm) {\n commit(\"SET_CURRENT\", alarm);\n },\n\n async getAlarmById({ commit, rootState }, alarmId) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await AlarmRepository.getById(user, alarmId)\n .then((alarm) => {\n commit(\"SET_CURRENT\", alarm.data);\n commit(\"LOADING\", false);\n })\n .catch(() => {\n commit(\"LOADING\", false);\n });\n },\n\n async getActiveAlarms({ dispatch, commit, rootState }) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await AlarmRepository.getActiveAlarms(\n user,\n rootState.users.userCompany.companyId\n )\n .then((alarms) => {\n commit(\"GET_ACTIVE_ALARM\", alarms.data);\n commit(\"LOADING\", false);\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n },\n\n async getAlarmHistory({ dispatch, commit, rootState }) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await AlarmRepository.getAlarmHistory(\n user,\n rootState.users.userCompany.companyId\n )\n .then((alarms) => {\n commit(\"GET_ACTIVE_ALARM\", alarms.data);\n commit(\"LOADING\", false);\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n },\n\n async setAlarmStatus({ dispatch, commit, rootState }, activeAlarmId) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await AlarmRepository.setActiveAlarmStatus(user, activeAlarmId)\n .then(() => {\n commit(\"LOADING\", false);\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n\n await dispatch(\"getActiveAlarms\");\n },\n\n resetState({ commit }) {\n commit(\"RESET_STATE\");\n },\n\n async removeAlarm({ dispatch, commit, rootState }, id) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await AlarmRepository.delete(user, id)\n .then(() => {\n dispatch(\"getAlarms\");\n commit(\"LOADING\", false);\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n },\n\n async duplicateAlarm({ dispatch, commit, rootState }, id) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await AlarmRepository.duplicate(user, id)\n .then(() => {\n dispatch(\"getAlarms\");\n commit(\"LOADING\", false);\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n },\n\n clearTestResponse({ commit }) {\n commit(\"SET_SETTING_RESPONSE\", {});\n },\n },\n\n mutations: {\n LOADING(state, status) {\n state.status.loading = status;\n },\n\n SET_CURRENT(state, alarm) {\n state.currentAlarm = alarm;\n },\n\n GET_ALARM(state, alarms) {\n state.alarms = alarms;\n },\n\n GET_ACTIVE_ALARM(state, alarms) {\n state.activeAlarms = alarms;\n },\n\n CREATE_ALARM(state, alarm) {\n state.currentAlarm = alarm;\n },\n\n SET_SETTING_RESPONSE(state, res) {\n state.settingResponse = res;\n },\n\n // eslint-disable-next-line\n RESET_STATE(state) {\n state = {\n currentAlarm: {},\n activeAlarms: [],\n alarms: [],\n status: {\n loading: false,\n },\n };\n },\n },\n};\n","const state = {\n active: false,\n message: null,\n alertType: \"success\",\n};\n\nconst actions = {\n success({ commit }, message) {\n commit(\"success\", message);\n },\n error({ commit }, message) {\n commit(\"error\", message);\n },\n clear({ commit }, message) {\n commit(\"success\", message);\n },\n};\n\nconst mutations = {\n success(state, message) {\n state.active = true;\n state.message = message;\n state.alertType = \"success\";\n },\n error(state, message) {\n state.active = true;\n state.message = message;\n state.alertType = \"error\";\n },\n clear(state) {\n state.active = false;\n state.message = null;\n state.alertType = \"success\";\n },\n};\n\nexport const alert = {\n namespaced: true,\n state,\n actions,\n mutations,\n};\n","import { RepositoryFactory } from \"../../api/RepositoryFactory\";\nimport i18n from \"@/plugins/i18n\";\nconst AppRepository = RepositoryFactory.get(\"applications\");\n\nexport const applications = {\n namespaced: true,\n state: {\n currentApplication: {},\n tags: [],\n gateways: [],\n tagData: [],\n status: {\n loading: false,\n loggedIn: false,\n },\n },\n\n actions: {\n async createApplication(\n { dispatch, commit, rootState },\n { applicationPayload }\n ) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n var companyId = rootState.users.userCompany.companyId;\n\n await AppRepository.create(user, companyId, applicationPayload)\n .then((application) => {\n dispatch(\"companies/getCompanyApplications\", null, { root: true });\n commit(\"CREATE_APPLICATION\", application);\n commit(\"LOADING\", false);\n dispatch(\"alert/success\", i18n.t(\"common.created\"), { root: true });\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n },\n\n async update({ dispatch, commit, rootState }, { id, applicationPayload }) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await AppRepository.update(user, id, applicationPayload)\n .then(() => {\n dispatch(\"companies/getCompanyApplications\", null, { root: true });\n dispatch(\"alert/success\", i18n.t(\"common.updated\"), { root: true });\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n },\n\n async deleteApplication(\n { dispatch, commit, rootState },\n { applicationId }\n ) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await AppRepository.delete(user, applicationId)\n .then(() => {\n commit(\"DELETE_APPLICATION\");\n dispatch(\"alert/success\", i18n.t(\"common.deleted\"), { root: true });\n dispatch(\"companies/getCompanyApplications\", null, { root: true });\n commit(\"LOADING\", false);\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n },\n\n async getApplication({ dispatch, commit, rootState }, id) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await AppRepository.get(user, id)\n .then((res) => {\n commit(\"SET_APPLICATION\", res.data);\n commit(\"LOADING\", false);\n })\n .catch((res) => {\n if (res.response !== undefined && res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n commit(\"LOADING\", false);\n });\n },\n\n async setApplication({ commit }, application) {\n commit(\"SET_APPLICATION\", application);\n },\n\n resetState({ commit }) {\n commit(\"RESET_STATE\");\n },\n },\n\n mutations: {\n LOADING(state, status) {\n state.status.loading = status;\n },\n\n CREATE_APPLICATION(state, application) {\n state.currentApplication = application;\n },\n\n DELETE_APPLICATION(state) {\n state.currentApplication = {};\n },\n\n GET_TAG_DATA(state, tagData) {\n state.tagData = tagData;\n },\n\n SET_APPLICATION(state, application) {\n state.currentApplication = application;\n },\n\n // eslint-disable-next-line\n RESET_STATE(state) {\n state = {\n currentApplication: {},\n tags: [],\n gateways: [],\n tagData: [],\n status: {\n loading: false,\n loggedIn: false,\n },\n };\n },\n },\n};\n","import Repository from \"../Repository\";\r\nimport { getAuthHeader } from \"../../_helpers/apiHelper\";\r\n\r\nconst resource = \"/camonline\";\r\n\r\nexport default {\r\n get(user, companyId) {\r\n var config = {\r\n headers: getAuthHeader(user),\r\n };\r\n\r\n return Repository.get(`${resource}/${companyId}`, config);\r\n },\r\n\r\n create(user, companyId, payload) {\r\n var config = {\r\n headers: getAuthHeader(user),\r\n };\r\n\r\n return Repository.post(`${resource}/${companyId}`, payload, config);\r\n },\r\n\r\n delete(user, camOnlineServerId) {\r\n var config = {\r\n headers: getAuthHeader(user),\r\n };\r\n\r\n return Repository.delete(`${resource}/${camOnlineServerId}`, config);\r\n },\r\n};\r\n","import axios from \"axios\";\r\nimport CORepository from \"../../api/repositories/camOnlineRepository\";\r\nimport i18n from \"../../plugins/i18n\";\r\n\r\nexport const camOnline = {\r\n namespaced: true,\r\n state: {\r\n servers: [],\r\n },\r\n\r\n actions: {\r\n async getServers({ dispatch, commit, rootState }) {\r\n var user = rootState.users.currentUser;\r\n var company = rootState.users.userCompany.companyId;\r\n\r\n await CORepository.get(user, company)\r\n .then((d) => commit(\"SET_SERVERS\", d.data))\r\n .catch(() =>\r\n dispatch(\"alert/error\", i18n.t(\"camOnline.couldNotFetchServers\"), {\r\n root: true,\r\n })\r\n );\r\n },\r\n\r\n async createServer({ dispatch, rootState }, payload) {\r\n var user = rootState.users.currentUser;\r\n var company = rootState.users.userCompany.companyId;\r\n await CORepository.create(user, company, payload)\r\n .then(async () => await dispatch(\"getServers\"))\r\n .catch(() =>\r\n dispatch(\"alert/error\", i18n.t(\"camOnline.couldNotCreateServer\"), {\r\n root: true,\r\n })\r\n );\r\n },\r\n\r\n async deleteServer({ dispatch, rootState }, serverId) {\r\n var user = rootState.users.currentUser;\r\n\r\n await CORepository.delete(user, serverId)\r\n .then(async () => await dispatch(\"getServers\"))\r\n .catch(() =>\r\n dispatch(\"alert/error\", i18n.t(\"camOnline.couldNotDeleteServer\"), {\r\n root: true,\r\n })\r\n );\r\n },\r\n\r\n async getStreams({ state }, serverId) {\r\n var server = state.servers.find((e) => e.camOnlineServerId == serverId);\r\n if (server == undefined) {\r\n console.error(\"Could not find the requested server: \" + serverId);\r\n return [];\r\n }\r\n\r\n try {\r\n var result = await axios.get(server.url + \"/api/stream/all\", {\r\n headers: {\r\n Authorization: `Bearer ${server.accessToken}`,\r\n },\r\n });\r\n\r\n return result.data;\r\n } catch {\r\n console.error(\"Something went wrong while fetching streams\");\r\n return [];\r\n }\r\n },\r\n },\r\n\r\n mutations: {\r\n SET_SERVERS(state, servers) {\r\n state.servers = servers;\r\n },\r\n },\r\n\r\n getters: {\r\n getServer: (state) => (id) => {\r\n var server = state.servers.find((e) => e.camOnlineServerId == id);\r\n return server ?? {};\r\n },\r\n },\r\n};\r\n","import { RepositoryFactory } from \"../../api/RepositoryFactory\";\nimport i18n from \"@/plugins/i18n\";\n\nconst CompanyRepository = RepositoryFactory.get(\"companies\");\n\nexport const companies = {\n namespaced: true,\n state: {\n company: {},\n companies: [],\n shared: {},\n companyUsers: [],\n companyApps: [],\n latestActivity: {},\n status: {\n loading: false,\n loggedIn: false,\n },\n },\n\n actions: {\n async getCompanyUsers({ dispatch, commit, rootState }) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n var company = rootState.users.userCompany;\n\n await CompanyRepository.getCompanyUsers(user, company.companyId).then(\n (users) => {\n commit(\"GET_COMPANY_USERS\", users.data);\n commit(\"LOADING\", false);\n },\n (error) => {\n dispatch(\"alert/error\", error, { root: true });\n commit(\"LOADING\", false);\n }\n );\n\n commit(\"LOADING\", false);\n },\n\n async getCompanyApplications({ dispatch, commit, rootState }) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n var company = rootState.users.userCompany;\n\n await CompanyRepository.getCompanyApplications(user, company.companyId)\n .then((applications) => {\n commit(\"GET_COMPANY_APPLICATION\", applications.data);\n commit(\"LOADING\", false);\n })\n .catch(() => {\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n });\n },\n\n // Get all companies\n async getAll({ dispatch, commit, rootState }) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await CompanyRepository.getAll(user)\n .then((companies) => {\n commit(\"GET_COMPANIES\", companies.data);\n commit(\"LOADING\", false);\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n\n commit(\"LOADING\", false);\n },\n\n async getById({ commit, dispatch, rootState }, { companyId }) {\n commit(\"LOADING\", true);\n var user = rootState.users.currentUser;\n\n await CompanyRepository.getCompanyById(user, companyId)\n .then((company) => {\n commit(\"EDIT_COMPANY\", company.data);\n commit(\"LOADING\", false);\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n commit(\"LOADING\", false);\n });\n commit(\"LOADING\", false);\n },\n\n // Edit a company\n async editCompany({ dispatch, commit, rootState }, { company }) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n var companyId = rootState.users.userCompany.companyId;\n\n await CompanyRepository.edit(user, companyId, company).then(\n (company) => {\n commit(\"EDIT_COMPANY\", company.data);\n dispatch(\n \"languages/setLanguage\",\n rootState.users.userCompany.country,\n {\n root: true,\n }\n );\n dispatch(\"alert/success\", i18n.t(\"common.updated\"), { root: true });\n commit(\"LOADING\", false);\n },\n (res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n }\n );\n },\n\n // Create a company\n async createCompany({ dispatch, commit, rootState }, { company }) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await CompanyRepository.create(user, company).then(\n (company) => {\n commit(\"CREATE_COMPANY\", company);\n\n dispatch(\"alert/success\", i18n.t(\"common.created\"), { root: true });\n commit(\"LOADING\", false);\n },\n (res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n }\n );\n },\n\n async createUser({ dispatch, commit, rootState }, payload) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await CompanyRepository.createUser(\n user,\n rootState.users.userCompany.companyId,\n payload\n )\n .then(() => {\n dispatch(\"alert/success\", i18n.t(\"common.created\"), { root: true });\n dispatch(\"getCompanyUsers\");\n commit(\"LOADING\", false);\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n },\n\n resetState({ commit }) {\n commit(\"RESET_STATE\");\n },\n\n async postImage({ dispatch, commit, rootState }, { image }) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await CompanyRepository.postImage(\n user,\n rootState.users.userCompany.companyId,\n image\n )\n .then(() => {\n commit(\"LOADING\", false);\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n commit(\"LOADING\", false);\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n });\n },\n\n async deleteImage({ dispatch, commit, rootState }) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await CompanyRepository.deleteImage(\n user,\n rootState.users.userCompany.companyId\n )\n .then(() => {\n commit(\"LOADING\", false);\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n commit(\"LOADING\", false);\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n });\n },\n\n async getLatestActivity({ dispatch, commit, rootState }) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await CompanyRepository.latestActivity(\n user,\n rootState.users.userCompany.companyId\n )\n .then((activity) => {\n commit(\"LOADING\", false);\n commit(\"SET_LATEST_ACTIVITY\", activity.data);\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n commit(\"LOADING\", false);\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n });\n },\n\n async getBatteryStatuses({ commit, dispatch, rootState }) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await CompanyRepository.getBatteryStatuses(\n user,\n rootState.users.userCompany.companyId\n )\n .then((statuses) => {\n commit(\"LOADING\", false);\n dispatch(\"tag/setBatteryStatuses\", statuses.data, { root: true });\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n commit(\"LOADING\", false);\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n });\n },\n\n async getShared({ commit, rootState }) {\n await CompanyRepository.getShared(rootState.users.currentUser)\n .then((d) => commit(\"GET_SHARED\", d.data))\n .catch((d) => {\n console.error(d);\n });\n },\n },\n\n mutations: {\n LOADING(state, status) {\n state.status.loading = status;\n },\n\n SET_LATEST_ACTIVITY(state, activity) {\n state.latestActivity = activity;\n },\n\n GET_COMPANIES(state, companies) {\n state.companies = companies;\n },\n\n GET_COMPANY_APPLICATION(state, applications) {\n state.companyApps = applications;\n },\n\n GET_COMPANY_USERS(state, users) {\n state.companyUsers = users;\n },\n\n GET_SHARED(state, shared) {\n state.shared = shared;\n },\n\n CREATE_COMPANY(state, company) {\n state.company = company;\n },\n\n EDIT_COMPANY(state, company) {\n state.company = company;\n },\n\n // eslint-disable-next-line\n RESET_STATE(state) {\n state = {\n company: {},\n companies: [],\n companyUsers: [],\n companyApps: [],\n status: {\n loading: false,\n loggedIn: false,\n },\n };\n },\n },\n\n getters: {\n // eslint-disable-next-line\n getSharedName: (state, getters, rootState, rootGetters) => (id) => {\n if (rootGetters[\"users/companyId\"] == id)\n return rootGetters[\"users/companyName\"];\n return state.shared[id];\n },\n },\n};\n","import Repository from \"../Repository\";\r\nimport { getAuthHeader } from \"../../_helpers/apiHelper\";\r\n\r\nconst resource = \"/settings\";\r\n\r\nexport default {\r\n get(user) {\r\n var config = {\r\n headers: getAuthHeader(user),\r\n };\r\n\r\n return Repository.get(`${resource}`, config);\r\n },\r\n\r\n set(user, payload) {\r\n var config = {\r\n headers: getAuthHeader(user),\r\n };\r\n\r\n return Repository.post(`${resource}`, payload, config);\r\n },\r\n\r\n getGlobal(user) {\r\n var config = {\r\n headers: getAuthHeader(user),\r\n };\r\n\r\n return Repository.get(`${resource}/global`, config);\r\n },\r\n\r\n setGlobal(user, payload) {\r\n var config = {\r\n headers: getAuthHeader(user),\r\n };\r\n\r\n return Repository.post(`${resource}/global`, payload, config);\r\n },\r\n\r\n getCompanyFields(user) {\r\n var config = {\r\n headers: getAuthHeader(user)\r\n }\r\n\r\n return Repository.get(`${resource}/company/fields`, config);\r\n },\r\n\r\n getCompany(user, companyId) {\r\n var config = {\r\n headers: getAuthHeader(user)\r\n }\r\n\r\n return Repository.get(`${resource}/company/${companyId}`, config);\r\n },\r\n\r\n setCompany(user, companyId, payload) {\r\n var config = {\r\n headers: getAuthHeader(user)\r\n }\r\n\r\n return Repository.put(`${resource}/company/${companyId}`, payload, config);\r\n }\r\n};\r\n","import SettingRepository from \"../../api/repositories/settingRepository\";\r\nimport LicenseRepository from \"../../api/repositories/licenseRepository\";\r\nimport licenseRepository from \"../../api/repositories/licenseRepository\";\r\n\r\nimport { addHours } from \"date-fns\";\r\n\r\nexport const configuration = {\r\n namespaced: true,\r\n state: {\r\n darkmode: false,\r\n SO_API_BASE_URL: null,\r\n userSettings: {\r\n theme: \"Scientific\",\r\n toolbarTransparent: true,\r\n stickySideMenu: false,\r\n },\r\n globalSettings: {},\r\n license: {},\r\n companyFields: [],\r\n companySettings: {},\r\n serverMeta: {},\r\n nodesLeftForCompany: 9999,\r\n expiresIn: 999,\r\n lastShownExpiery: undefined,\r\n showLicenseNotification: false,\r\n showLicenseExpiery: false,\r\n canCreateCompany: false,\r\n canCreateGateway: false,\r\n canCreateNode: false,\r\n },\r\n\r\n actions: {\r\n async getNodesLeftForCompany({ commit, rootState }) {\r\n var user = rootState.users.currentUser;\r\n var company = rootState.users.userCompany.companyId;\r\n await LicenseRepository.nodesLeftForCompany(user, company)\r\n .then((d) => commit(\"SET_NODES_LEFT_COMPANY\", d.data))\r\n .catch(() => commit(\"SET_NODES_LEFT_COMPANY\", 9999));\r\n },\r\n\r\n setLicenseNotification({ commit }, val) {\r\n commit(\"SHOW_LICENSE_NOTIFICATION\", val);\r\n },\r\n\r\n setDarkmode({ commit }, message) {\r\n if (typeof message == \"boolean\") {\r\n commit(\"SET_DARKMODE\", message);\r\n }\r\n },\r\n\r\n async getServerMeta({ commit, rootState }) {\r\n var result = await licenseRepository\r\n .getLicenseServerMeta(rootState.users.currentUser)\r\n .then((d) => {\r\n commit(\"SET_SERVER_META\", d.data);\r\n return true;\r\n })\r\n .catch(() => false);\r\n if (!result) console.error(\"Could not fetch server meta\");\r\n },\r\n\r\n async getBaseUrl({ commit, rootState }) {\r\n if (\r\n rootState.configuration.SO_API_BASE_URL == undefined ||\r\n rootState.configuration.SO_API_BASE_URL == null\r\n ) {\r\n try {\r\n const envConfig = await fetch(\"/environmentConfig.json\");\r\n var envJson = await envConfig.json();\r\n commit(\"SET_BASE_URL\", envJson.SO_API_BASE_URL);\r\n } catch (exception) {\r\n commit(\"SET_BASE_URL\", process.env.VUE_APP_SO_API_BASE_URL);\r\n }\r\n }\r\n },\r\n\r\n async getLicenseTerms({ commit, rootState }, force = false) {\r\n if (\r\n !force &&\r\n rootState.configuration.license &&\r\n Object.keys(rootState.configuration.license).length !== 0\r\n ) {\r\n return;\r\n }\r\n\r\n // If the base url is not set we cannot get the terms\r\n // This will probably be resolved during existing requests.\r\n if (rootState.configuration.SO_API_BASE_URL == null) return;\r\n\r\n var user = rootState.users.currentUser;\r\n\r\n await LicenseRepository.getTerms(user).then((res) =>\r\n commit(\"SET_LICENSE\", res.data)\r\n );\r\n },\r\n\r\n async getUserSettings({ commit, rootState, dispatch }) {\r\n var user = rootState.users.currentUser;\r\n if (user === undefined || user === null) return;\r\n await SettingRepository.get(user).then((data) =>\r\n commit(\"SET_USER_SETTINGS\", data.data)\r\n );\r\n\r\n await dispatch(\"users/getUserPermissionsByCurrentUser\", null, {\r\n root: true,\r\n });\r\n },\r\n\r\n async setUserSettings({ dispatch, rootState }, payload) {\r\n var user = rootState.users.currentUser;\r\n await SettingRepository.set(user, payload).then(() =>\r\n dispatch(\"getUserSettings\")\r\n );\r\n },\r\n\r\n async getGlobalSettings({ commit, rootState }) {\r\n var user = rootState.users.currentUser;\r\n if (user === undefined || user === null) return;\r\n\r\n await SettingRepository.getGlobal(user).then((data) => {\r\n commit(\"SET_GLOBAL_SETTINGS\", data.data);\r\n });\r\n },\r\n\r\n async setGlobalSettings({ dispatch, rootState }, payload) {\r\n var user = rootState.users.currentUser;\r\n await SettingRepository.setGlobal(user, payload).then(() =>\r\n dispatch(\"getGlobalSettings\")\r\n );\r\n },\r\n\r\n async setCompanySettings({ dispatch, rootState }, payload) {\r\n var user = rootState.users.currentUser;\r\n var company = rootState.users.userCompany.companyId;\r\n\r\n await SettingRepository.setCompany(user, company, payload).then(() =>\r\n dispatch(\"getCompanySettings\")\r\n );\r\n },\r\n\r\n async getCompanySettings({ dispatch, commit, rootState }) {\r\n var user = rootState.users.currentUser;\r\n var company = rootState.users.userCompany.companyId;\r\n\r\n // Make sure to reset the fields and settings before\r\n commit(\"SET_COMPANY_FIELDS\", []);\r\n commit(\"SET_COMPANY\", {});\r\n await SettingRepository.getCompany(user, company).then((data) => {\r\n commit(\"SET_COMPANY\", data.data);\r\n });\r\n\r\n // Get the fields\r\n await dispatch(\"getCompanyFields\");\r\n },\r\n\r\n async getCompanyFields({ commit, rootState }) {\r\n var user = rootState.users.currentUser;\r\n\r\n await SettingRepository.getCompanyFields(user).then((data) => {\r\n commit(\"SET_COMPANY_FIELDS\", data.data);\r\n });\r\n },\r\n\r\n setCompanySettingLocal({ commit }, { key, value }) {\r\n commit(\"SET_COMPANY_SETTING\", { key, value });\r\n },\r\n\r\n async getCanCreateBools({ commit, rootState }) {\r\n var user = rootState.users.currentUser;\r\n var company = rootState.users.userCompany.companyId;\r\n\r\n await LicenseRepository.canCreate(user, company)\r\n .then((d) => commit(\"SET_CAN_CREATE\", d.data))\r\n .catch(() => commit(\"SET_CAN_CREATE\", undefined));\r\n },\r\n },\r\n\r\n mutations: {\r\n SET_CAN_CREATE(state, data) {\r\n state.canCreateCompany = data?.canCreateCompany ?? false;\r\n state.canCreateGateway = data?.canCreateGateway ?? false;\r\n state.canCreateNode = data?.canCreateNode ?? false;\r\n state.expiresIn = data?.expiresIn ?? 999;\r\n state.showLicenseExpiery = false;\r\n if (\r\n state.expiresIn <= 30 &&\r\n (state.lastShownExpiery === undefined ||\r\n state.lastShownExpiery < new Date())\r\n ) {\r\n state.lastShownExpiery = addHours(new Date(), 24);\r\n state.showLicenseExpiery = true;\r\n }\r\n },\r\n\r\n SET_SERVER_META(state, data) {\r\n state.serverMeta = data;\r\n },\r\n\r\n SET_DARKMODE(state, message) {\r\n state.darkmode = message;\r\n },\r\n SET_BASE_URL(state, url) {\r\n state.SO_API_BASE_URL = url;\r\n },\r\n\r\n SET_USER_SETTINGS(state, payload) {\r\n for (var i in Object.keys(payload)) {\r\n let key = Object.keys(payload)[i];\r\n if (payload[key] == \"true\" || payload[key] == \"false\")\r\n payload[key] = payload[key] == \"true\" ? true : false;\r\n }\r\n\r\n state.userSettings = payload;\r\n },\r\n\r\n SET_LICENSE(state, payload) {\r\n state.license = payload;\r\n },\r\n\r\n SET_GLOBAL_SETTINGS(state, payload) {\r\n state.globalSettings = payload;\r\n },\r\n\r\n SET_COMPANY(state, payload) {\r\n state.companySettings = payload;\r\n },\r\n\r\n SET_COMPANY_FIELDS(state, payload) {\r\n state.companyFields = payload;\r\n },\r\n\r\n SET_COMPANY_SETTING(state, keyValue) {\r\n state.companySettings[keyValue.key] = keyValue.value;\r\n },\r\n\r\n SHOW_LICENSE_NOTIFICATION(state, val) {\r\n state.showLicenseNotification = val;\r\n },\r\n\r\n SET_NODES_LEFT_COMPANY(state, val) {\r\n state.nodesLeftForCompany = val;\r\n },\r\n },\r\n\r\n getters: {\r\n license(state) {\r\n return state.license;\r\n },\r\n },\r\n};\r\n","import { RepositoryFactory } from \"../../api/RepositoryFactory\";\nimport i18n from \"@/plugins/i18n\";\nconst DashboardRepository = RepositoryFactory.get(\"dashboard\");\n\nexport const dashboards = {\n namespaced: true,\n state: {\n currentDashboard: {},\n dashboards: [],\n defaultDashboard: {},\n publicDashboard: null,\n publicDashboards: [],\n categories: [],\n hasDefault: false,\n status: {\n loading: false,\n },\n },\n\n actions: {\n async getDashboards({ dispatch, commit, rootState }) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await DashboardRepository.getDashboards(\n user,\n rootState.users.userCompany.companyId\n )\n .then((dashboards) => {\n commit(\"SET_DASHBOARDS\", dashboards.data);\n commit(\"LOADING\", false);\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n },\n\n async duplicate({ dispatch, commit, rootState }, { dashboardId, payload }) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await DashboardRepository.duplicate(user, dashboardId, payload)\n .then(() => {\n dispatch(\"getDashboards\");\n commit(\"LOADING\", false);\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n },\n\n async getDashboard({ dispatch, commit, rootState }, { dashboardId }) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await DashboardRepository.getDashboard(user, dashboardId)\n .then((dashboard) => {\n commit(\"SET_DASHBOARD\", dashboard.data);\n commit(\"LOADING\", false);\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n commit(\"LOADING\", false);\n });\n },\n\n async setDashboard({ commit }, dashboard) {\n commit(\"SET_DASHBOARD\", dashboard);\n },\n\n async create(\n { dispatch, commit, rootState },\n { payload, dashboardType = undefined }\n ) {\n commit(\"LOADING\", true);\n\n return await DashboardRepository.createForCompany(payload, dashboardType)\n .then(() => {\n dispatch(\"getDashboards\");\n commit(\"LOADING\", false);\n return true;\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n return false;\n });\n },\n\n async update({ dispatch, commit, rootState }, { dashboardId, payload }) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await DashboardRepository.update(user, dashboardId, payload)\n .then(() => {\n dispatch(\"getDashboards\");\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n },\n\n async delete({ dispatch, commit, rootState }, dashboardId) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await DashboardRepository.delete(user, dashboardId)\n .then(() => {\n dispatch(\"getDashboards\");\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n\n await dispatch(\"getPublicDashboards\");\n },\n\n async setDefault({ dispatch, commit, rootState }, { dashboardId }) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n await DashboardRepository.setDefault(user, dashboardId)\n .then(() => {\n dispatch(\"getDashboards\");\n commit(\"LOADING\", false);\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n },\n\n async getDefault({ dispatch, commit, rootState }) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n await DashboardRepository.getDefault(user)\n .then((dashboard) => {\n commit(\"SET_DEFAULT\", dashboard.data);\n commit(\"LOADING\", false);\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n },\n\n async createPublicDashboard(\n { dispatch, commit, rootState },\n { dashboardId, expiresAt }\n ) {\n var user = rootState.users.currentUser;\n await DashboardRepository.createPublicDashboard(\n user,\n rootState.users.userCompany.companyId,\n dashboardId,\n expiresAt\n )\n .then((dashboard) => {\n commit(\"SET_PUBLIC_DASHBOARD\", dashboard.data);\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n });\n },\n\n async getPublicDashboards({ dispatch, commit, rootState }) {\n var user = rootState.users.currentUser;\n\n await DashboardRepository.getPublicDashboards(\n user,\n rootState.users.userCompany.companyId\n )\n .then((dashboard) => commit(\"SET_PUBLIC_DASHBOARDS\", dashboard.data))\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n });\n },\n\n async getPublicDashboard({ commit, rootState }, id) {\n var user = rootState.users.currentUser;\n if (user && user.userId != undefined) return;\n\n await DashboardRepository.getPublicDashboard(id).then((dashboard) => {\n commit(\"SET_PUBLIC_DASHBOARD\", dashboard.data);\n });\n },\n\n async deletePublicDashboard({ dispatch, rootState }, id) {\n var user = rootState.users.currentUser;\n\n await DashboardRepository.deletePublicDashboard(user, id)\n .then(() => {\n dispatch(\"getPublicDashboards\");\n })\n .catch(() => {\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n });\n },\n\n async getDashboardCategories({ commit, rootState, dispatch }) {\n var user = rootState.users.currentUser;\n\n await DashboardRepository.getDashboardCategories(\n user,\n rootState.users.userCompany.companyId\n )\n .then((d) => {\n commit(\"SET_DASHBOARD_CATEGORIES\", d.data);\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n });\n },\n\n async createDashboardCategories({ commit, rootState, dispatch }, payload) {\n var user = rootState.users.currentUser;\n commit(\"LOADING\", true);\n await DashboardRepository.createDashboardCategories(\n user,\n rootState.users.userCompany.companyId,\n payload\n )\n .then(() => {\n commit(\"LOADING\", false);\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n });\n commit(\"LOADING\", false);\n },\n\n async updateDashboardCategories(\n { commit, rootState, dispatch },\n { categoryId: categoryId, payload: payload }\n ) {\n var user = rootState.users.currentUser;\n commit(\"LOADING\", true);\n await DashboardRepository.updateDashboardCategories(\n user,\n categoryId,\n payload\n )\n .then(() => {\n commit(\"LOADING\", false);\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n });\n commit(\"LOADING\", false);\n },\n\n async updateDashboardCategoryIndexes(\n { commit, rootState, dispatch },\n payload\n ) {\n var user = rootState.users.currentUser;\n commit(\"LOADING\", true);\n\n await DashboardRepository.updateDashboardIndexes(user, payload)\n .then(() => {\n commit(\"LOADING\", false);\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n });\n\n commit(\"LOADING\", false);\n },\n\n async removeDashboardCategory({ commit, rootState, dispatch }, categoryId) {\n var user = rootState.users.currentUser;\n commit(\"LOADING\", true);\n\n await DashboardRepository.removeDashboardIndexes(user, categoryId)\n .then(() => {\n commit(\"LOADING\", false);\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n } else if (res.response.status === 400) {\n dispatch(\"alert/error\", i18n.t(res.response.data), { root: true });\n }\n });\n\n commit(\"LOADING\", false);\n },\n },\n\n mutations: {\n LOADING(state, status) {\n state.status.loading = status;\n },\n\n SET_DASHBOARD_CATEGORIES(state, categories) {\n state.categories = categories;\n },\n\n SET_PUBLIC_DASHBOARD(state, publicDashboard) {\n state.publicDashboard = publicDashboard;\n },\n\n SET_PUBLIC_DASHBOARDS(state, publicDashboards) {\n state.publicDashboards = publicDashboards;\n },\n\n DELETE_APPLICATION(state) {\n state.currentDashboard = {};\n },\n\n SET_DEFAULT(state, dashboard) {\n if (Object.entries(dashboard).length !== 0) {\n state.defaultDashboard = dashboard;\n state.currentDashboard = dashboard;\n state.hasDefault = true;\n } else {\n state.currentDashboard = {};\n state.defaultDashboard = {};\n state.hasDefault = false;\n }\n },\n\n SET_DASHBOARDS(state, dashboards) {\n state.dashboards = dashboards;\n },\n\n SET_DASHBOARD(state, dashboard) {\n state.currentDashboard = dashboard;\n },\n\n // eslint-disable-next-line\n RESET_STATE(state) {\n state = {\n currentDashboard: {},\n dashboards: [],\n status: {\n loading: false,\n },\n };\n },\n },\n};\n","import { RepositoryFactory } from \"../../api/RepositoryFactory\";\r\nconst DownlinkRepository = RepositoryFactory.get(\"downlinks\");\r\n\r\nexport const downlinks = {\r\n namespaced: true,\r\n state: {\r\n downlinks: [],\r\n status: {\r\n loading: false,\r\n },\r\n },\r\n\r\n actions: {\r\n async getForTag({ dispatch, commit, rootState }, deveui) {\r\n if (!rootState.users.status.loggedIn) return;\r\n\r\n commit(\"LOADING\", true);\r\n\r\n var user = rootState.users.currentUser;\r\n\r\n return await DownlinkRepository.getForTag(user, deveui)\r\n .then((downlinks) => {\r\n commit(\"GET_DOWNLINKS\", downlinks.data);\r\n commit(\"LOADING\", false);\r\n return downlinks.data;\r\n })\r\n .catch((res) => {\r\n if (res.response.status === 401) {\r\n dispatch(\r\n \"users/login\",\r\n {\r\n email: rootState.users.credentials.email,\r\n password: rootState.users.credentials.password,\r\n },\r\n { root: true }\r\n );\r\n }\r\n\r\n commit(\"LOADING\", false);\r\n return [];\r\n });\r\n },\r\n\r\n async removeDownlink({ dispatch, commit, rootState }, downlinkQueueId) {\r\n if (!rootState.users.status.loggedIn) return;\r\n commit(\"LOADING\", true);\r\n var user = rootState.users.currentUser;\r\n\r\n await DownlinkRepository.removeDownlink(user, downlinkQueueId)\r\n .then(() => commit(\"LOADING\", false))\r\n .catch((res) => {\r\n if (res.response.status === 401) {\r\n dispatch(\r\n \"users/login\",\r\n {\r\n email: rootState.users.credentials.email,\r\n password: rootState.users.credentials.password,\r\n },\r\n { root: true }\r\n );\r\n }\r\n\r\n commit(\"LOADING\", false);\r\n });\r\n },\r\n\r\n async createDownlink({ commit, dispatch, rootState }, { deveui, payload }) {\r\n if (!rootState.users.status.loggedIn) return;\r\n commit(\"LOADING\", true);\r\n var user = rootState.users.currentUser;\r\n\r\n await DownlinkRepository.createDownlink(user, deveui, payload)\r\n .then(() => commit(\"LOADING\", false))\r\n .catch((res) => {\r\n if (res.response.status === 401) {\r\n dispatch(\r\n \"users/login\",\r\n {\r\n email: rootState.users.credentials.email,\r\n password: rootState.users.credentials.password,\r\n },\r\n { root: true }\r\n );\r\n }\r\n\r\n commit(\"LOADING\", false);\r\n\r\n });\r\n }\r\n },\r\n\r\n mutations: {\r\n LOADING(state, status) {\r\n state.status.loading = status;\r\n },\r\n\r\n GET_DOWNLINKS(state, downlinks) {\r\n state.downlinks = downlinks;\r\n },\r\n },\r\n};\r\n","export const event = {\r\n namespaced: true,\r\n state: {\r\n events: [],\r\n },\r\n\r\n actions: {\r\n addEvent({ commit }, payload) {\r\n commit(\"SET_EVENT\", payload);\r\n },\r\n },\r\n\r\n mutations: {\r\n SET_EVENT(state, payload) {\r\n state.events.unshift(payload);\r\n if (state.events.length > 50) state.events.pop();\r\n },\r\n },\r\n\r\n getters: {\r\n lastEvent(state) {\r\n if (state.events.length <= 0) return {};\r\n\r\n return state.events[0];\r\n },\r\n },\r\n};\r\n","import FeatureAccessRepository from \"@/api/repositories/featureAccessRepository\";\n\nexport const featureAccess = {\n namespaced: true,\n\n state: {\n companyFeatures: [],\n features: [],\n },\n\n actions: {\n async getAllFeatures({ commit }) {\n let values = await FeatureAccessRepository.getAllFeatures()\n .then((d) => d.data)\n .catch(() => undefined);\n if (values === undefined)\n values = values\n .then((d) => d.data)\n .catch(() => {\n console.error(\"Could not fetch features\");\n return [];\n });\n\n commit(\"SET_FEATURES\", values);\n },\n\n async getCompanyFeatures({ commit }) {\n let result = await FeatureAccessRepository.getCompanyFeatures()\n .then((d) => d.data)\n .catch(() => {\n console.error(\"Could not fetch company features\");\n return undefined;\n });\n if (result === undefined) {\n commit(\"SET_COMPANY_FEATURES\", [{ name: \"FEATURE_MAP_DASHBOARD\" }]);\n return;\n }\n\n commit(\"SET_COMPANY_FEATURES\", result);\n },\n },\n\n mutations: {\n SET_FEATURES(state, features) {\n state.features = features;\n },\n\n SET_COMPANY_FEATURES(state, features) {\n state.companyFeatures = features;\n },\n },\n\n getters: {\n companyFeatures(state) {\n return state.companyFeatures;\n },\n },\n};\n","import { RepositoryFactory } from \"../../api/RepositoryFactory\";\nimport i18n from \"@/plugins/i18n\";\nconst Gateway = RepositoryFactory.get(\"gateways\");\n\nexport const gateways = {\n namespaced: true,\n state: {\n currentGateway: {},\n gateways: [],\n status: {\n loading: false,\n loggedIn: false,\n },\n },\n\n actions: {\n async createGateway(\n { dispatch, commit, rootState },\n { applicationId, gatewayPayload }\n ) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await Gateway.create(user, applicationId, gatewayPayload)\n .then((gateway) => {\n dispatch(\"getGateways\");\n commit(\"CREATE_GATEWAY\", gateway);\n commit(\"LOADING\", false);\n dispatch(\"alert/success\", i18n.t(\"common.created\"), { root: true });\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n },\n\n async deleteGateway({ dispatch, commit, rootState }, gatewayId) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await Gateway.delete(user, gatewayId)\n .then(() => {\n dispatch(\"alert/success\", i18n.t(\"common.deleted\"), { root: true });\n dispatch(\"getGateways\");\n commit(\"LOADING\", false);\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n },\n\n async getGateway({ dispatch, commit, rootState }, id) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await Gateway.getById(user, id)\n .then((res) => {\n commit(\"SET_GATEWAY\", res.data);\n commit(\"LOADING\", false);\n })\n .catch((res) => {\n if (res.response !== undefined && res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n commit(\"LOADING\", false);\n });\n },\n\n async getGateways({ dispatch, commit, rootState }) {\n var user = rootState.users.currentUser;\n var company = rootState.users.userCompany.companyId;\n commit(\"LOADING\", true);\n await Gateway.getByCompany(user, company)\n .then((data) => {\n commit(\"SET_GATEWAYS\", data.data);\n commit(\"LOADING\", true);\n })\n .catch((res) => {\n if (res.response !== undefined && res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n commit(\"LOADING\", false);\n });\n },\n\n async updatePosition(\n { dispatch, commit, rootState },\n { gatewayId, position }\n ) {\n var user = rootState.users.currentUser;\n\n commit(\"LOADING\", true);\n await Gateway.updatePosition(user, gatewayId, position)\n .then(() => {\n dispatch(\"getGateways\");\n commit(\"LOADING\", true);\n })\n .catch(() => {\n commit(\"LOADING\", false);\n });\n },\n },\n\n mutations: {\n LOADING(state, status) {\n state.status.loading = status;\n },\n\n CREATE_GATEWAY(state, gateway) {\n state.currentGateway = gateway;\n },\n\n SET_GATEWAY(state, gateway) {\n state.currentGateway = gateway;\n },\n\n SET_GATEWAYS(state, gateways) {\n state.gateways = gateways;\n },\n },\n};\n","import Vue from \"vue\";\nimport VueLocalStorage from \"vue-localstorage\";\nimport Languages from \"@/languages\";\nimport i18n from \"../../plugins/i18n\";\n\nVue.use(VueLocalStorage);\nconst supportedLanguages = Object.getOwnPropertyNames(Languages);\n\nexport const languages = {\n namespaced: true,\n state: {\n language: Vue.localStorage.get(\"language\")\n },\n\n mutations: {\n SET_LANGUAGE(state, lang) {\n Vue.localStorage.set(\"language\", lang);\n state.language = lang;\n i18n.locale = lang;\n }\n },\n\n actions: {\n setLanguage({ commit }, languages) {\n if (typeof languages === \"string\") {\n commit(\"SET_LANGUAGE\", languages);\n } else if (languages != null) {\n const language = supportedLanguages.find(sl =>\n languages.find(l =>\n l.split(new RegExp(sl, \"gi\")).length - 1 > 0 ? sl : null\n )\n );\n\n commit(\"SET_LANGUAGE\", language);\n }\n }\n }\n};\n","import { RepositoryFactory } from \"../../api/RepositoryFactory\";\nimport i18n from \"@/plugins/i18n\";\nimport MetricHelper from \"@/_helpers/metricHelper.js\";\n\nconst LogRepository = RepositoryFactory.get(\"log\");\n\nexport const logs = {\n namespaced: true,\n state: {\n logs: [],\n staticLogs: [],\n activeUsers: [],\n activeAlarms: [],\n lastRequestLogs: [],\n datapoints: null,\n status: {\n loading: false,\n },\n },\n\n actions: {\n async clearLog({ commit }) {\n commit(\"CLEAR_LOG\");\n },\n\n async get({ dispatch, commit, rootState }, metrics) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await LogRepository.get(user, MetricHelper.getMetricsUrlParams(metrics))\n .then((tags) => {\n commit(\"GET_LOGS\", tags.data);\n commit(\"GET_STATIC_LOGS\", tags.data);\n commit(\"LOADING\", false);\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n\n commit(\"LOADING\", false);\n },\n\n async activeUsers({ dispatch, commit, rootState }) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await LogRepository.getActiveUsers(user)\n .then((users) => {\n commit(\"GET_ACTIVEUSERS\", users.data);\n commit(\"LOADING\", false);\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n\n commit(\"LOADING\", false);\n },\n\n async getDatapoints({ dispatch, commit, rootState }) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await LogRepository.getDatapoints(user)\n .then((points) => {\n commit(\"GET_DATAPOINTS\", points.data);\n commit(\"LOADING\", false);\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n },\n\n async getActiveAlarms({ dispatch, commit, rootState }) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await LogRepository.getActiveAlarms(user)\n .then((alarms) => {\n commit(\"GET_ALARMS\", alarms.data);\n commit(\"LOADING\", false);\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n\n commit(\"LOADING\", false);\n },\n },\n\n mutations: {\n LOADING(state, status) {\n state.status.loading = status;\n },\n\n GET_DATAPOINTS(state, points) {\n state.datapoints = points;\n },\n\n GET_ALARMS(state, alarms) {\n state.activeAlarms = alarms;\n },\n\n GET_STATIC_LOGS(state, logs) {\n state.staticLogs = logs;\n },\n\n GET_LOGS(state, logs) {\n if (state.logs.length > 0) {\n logs.forEach((e) => state.logs.unshift(e));\n state.lastRequestLogs = logs.reverse();\n\n if (state.logs.length > 200) {\n var len = state.logs.length - 200;\n state.logs.splice(200, len);\n }\n } else {\n state.logs = logs;\n }\n },\n\n GET_ACTIVEUSERS(state, users) {\n state.activeUsers = users;\n },\n\n CLEAR_LOG(state) {\n state.logs = [];\n },\n\n // eslint-disable-next-line\n RESET_STATE(state) {\n state = {\n activeUsers: [],\n logs: [],\n status: {\n loading: false,\n },\n };\n },\n },\n};\n","import ModbusRepository from \"../../api/repositories/modbusRepository\";\r\n\r\nexport const modbus = {\r\n namespaced: true,\r\n state: {\r\n masters: [],\r\n },\r\n\r\n actions: {\r\n async getMasters({ commit }) {\r\n await ModbusRepository.getMasters()\r\n .then((d) => commit(\"SET_MASTERS\", d.data))\r\n .catch(() => commit(\"SET_MASTERS\", []));\r\n },\r\n },\r\n\r\n mutations: {\r\n SET_MASTERS(state, payload) {\r\n state.masters = payload;\r\n },\r\n },\r\n\r\n getters: {\r\n getMasterNameById: (state) => (id) => {\r\n return state.masters.find((e) => e.modbusMasterId == id)?.name ?? id;\r\n },\r\n },\r\n};\r\n","import { RepositoryFactory } from \"../../api/RepositoryFactory\";\nimport i18n from \"@/plugins/i18n\";\nimport CsharpEnum from \"@/_helpers/CsharpEnum\";\nconst ModuleRepository = RepositoryFactory.get(\"module\");\n\nexport const modules = {\n namespaced: true,\n state: {\n currentModule: null,\n modules: [],\n status: {\n loading: false,\n },\n },\n\n actions: {\n async getModules({ dispatch, commit, rootState }, { dashboardId }) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await ModuleRepository.get(user, dashboardId)\n .then((modules) => {\n commit(\"SET_MODULES\", modules.data);\n commit(\"LOADING\", false);\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n },\n\n async getModule({ dispatch, commit, rootState }, { moduleId }) {\n commit(\"LOADING\", true);\n var user = rootState.users.currentUser;\n\n if (moduleId === undefined || moduleId === null)\n moduleId = rootState.modules.currentModule.dashboardModuleId;\n\n await ModuleRepository.getModule(user, moduleId)\n .then((mod) => {\n commit(\"ADD_MODULE\", mod.data);\n commit(\"LOADING\", false);\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n },\n\n async setModules({ commit }, modules) {\n commit(\"SET_MODULES\", modules);\n },\n\n async create({ dispatch, commit, rootState }, { dashboardId, payload }) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await ModuleRepository.create(user, dashboardId, payload)\n .then((mod) => {\n if (\n (mod.data.type !== CsharpEnum.ModuleType.IMAGEMAP &&\n mod.data.type !== CsharpEnum.ModuleType.IMAGE) ||\n (CsharpEnum.ModuleType.IMAGE === mod.data.type &&\n mod.data.tag !== null)\n ) {\n commit(\"ADD_MODULE\", mod.data);\n } else {\n commit(\"SET_CURRENT\", mod.data);\n }\n\n commit(\"LOADING\", false);\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n },\n\n async update({ dispatch, commit, rootState }, { moduleId, payload }) {\n commit(\"LOADING\", true);\n commit(\"SET_CURRENT\", payload);\n\n var user = rootState.users.currentUser;\n var dashboardId = rootState.dashboards.currentDashboard.dashboardId;\n await ModuleRepository.update(user, moduleId, payload)\n .then(() => {\n dispatch(\"getModules\", {\n dashboardId: dashboardId,\n });\n\n commit(\"LOADING\", false);\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n },\n\n async copyModule({ dispatch, rootState }, moduleId) {\n var user = rootState.users.currentUser;\n await ModuleRepository.copyModule(user, moduleId)\n .then(() => {\n dispatch(\"getModules\", {\n dashboardId: rootState.dashboards.currentDashboard.dashboardId,\n });\n })\n .catch(() => {\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n });\n },\n\n async updateModules({ commit, rootState }, payload) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n await ModuleRepository.updateModules(user, payload)\n .then(() => {\n commit(\"LOADING\", false);\n })\n .catch(() => {\n commit(\"LOADING\", false);\n });\n },\n\n async delete({ dispatch, commit, rootState }, { moduleId }) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await ModuleRepository.delete(user, moduleId)\n .then(() => {\n dispatch(\"getModules\", {\n dashboardId: rootState.dashboards.currentDashboard.dashboardId,\n });\n commit(\"LOADING\", false);\n })\n\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n },\n\n async postImage({ dispatch, commit, rootState }, { moduleId, image }) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await ModuleRepository.postImage(user, moduleId, image)\n .then(() => {\n dispatch(\"getModule\", {\n moduleId: rootState.modules.currentModule.dashboardModuleId,\n });\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n },\n\n async updateIndex({ commit, rootState }) {\n commit(\"LOADING\", true);\n var user = rootState.users.currentUser;\n var modules = rootState.modules.modules;\n\n for (let i = 0; i < modules.length; i++) {\n if (modules[i].dashboardModuleId !== undefined) {\n modules[i].index = i;\n await ModuleRepository.update(\n user,\n modules[i].dashboardModuleId,\n modules[i]\n );\n }\n }\n\n commit(\"LOADING\", false);\n },\n },\n\n mutations: {\n LOADING(state, status) {\n state.status.loading = status;\n },\n\n SET_CURRENT(state, mod) {\n state.currentModule = mod;\n },\n\n ADD_MODULE(state, mod) {\n state.currentModule = mod;\n\n state.modules.push(mod);\n },\n\n SET_MODULES(state, modules) {\n state.modules = modules;\n },\n\n // eslint-disable-next-line\n RESET_STATE(state) {\n state = {\n modules: [],\n status: {\n loading: false,\n },\n };\n },\n },\n};\n","import MqttRepository from \"../../api/repositories/mqttRepository.js\";\r\nimport i18n from \"../../plugins/i18n\";\r\n\r\nexport const mqtt = {\r\n namespaced: true,\r\n state: {\r\n brokers: [],\r\n brokersWithMetrics: [],\r\n mqttMeta: {},\r\n },\r\n\r\n actions: {\r\n async getBrokers({ commit, rootState, dispatch }) {\r\n var user = rootState.users.currentUser;\r\n var company = rootState.users.userCompany.companyId;\r\n\r\n await MqttRepository.getBrokers(user, company)\r\n .then((d) => {\r\n commit(\"SET_BROKERS\", d.data);\r\n })\r\n .catch(() => {\r\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\r\n });\r\n },\r\n\r\n async getBrokersWithMetrics({ commit, rootState, dispatch }) {\r\n var user = rootState.users.currentUser;\r\n var company = rootState.users.userCompany.companyId;\r\n\r\n await MqttRepository.getBrokersWithMetrics(user, company)\r\n .then((d) => {\r\n commit(\"SET_BROKERS_WITH_METRICS\", d.data);\r\n })\r\n .catch(() => {\r\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\r\n });\r\n },\r\n\r\n async createBroker({ rootState, dispatch }, payload) {\r\n var user = rootState.users.currentUser;\r\n var company = rootState.users.userCompany.companyId;\r\n\r\n let result = false;\r\n await MqttRepository.createBroker(user, company, payload)\r\n .then(() => {\r\n dispatch(\"alert/success\", i18n.t(\"common.created\"), { root: true });\r\n result = true;\r\n })\r\n .catch(() => {\r\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\r\n });\r\n\r\n return result;\r\n },\r\n\r\n async updateBroker({ rootState, dispatch }, { brokerId, payload }) {\r\n var user = rootState.users.currentUser;\r\n\r\n let result = false;\r\n await MqttRepository.updateBroker(user, brokerId, payload)\r\n .then(() => {\r\n dispatch(\"alert/success\", i18n.t(\"common.updated\"), { root: true });\r\n result = true;\r\n })\r\n .catch(() => {\r\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\r\n });\r\n\r\n return result;\r\n },\r\n\r\n async deleteBroker({ rootState, dispatch }, brokerId) {\r\n var user = rootState.users.currentUser;\r\n\r\n let result = false;\r\n await MqttRepository.deleteBroker(user, brokerId)\r\n .then(() => {\r\n dispatch(\"alert/success\", i18n.t(\"common.deleted\"), { root: true });\r\n result = true;\r\n })\r\n .catch(() => {\r\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\r\n });\r\n\r\n return result;\r\n },\r\n\r\n async createMqttMeta(\r\n { dispatch, rootState },\r\n { brokerId, deveui, payload }\r\n ) {\r\n var user = rootState.users.currentUser;\r\n\r\n let result = false;\r\n await MqttRepository.createMqttMeta(user, brokerId, deveui, payload)\r\n .then(() => {\r\n result = true;\r\n })\r\n .catch(() => {\r\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\r\n });\r\n\r\n return result;\r\n },\r\n\r\n async updateMqttMeta(\r\n { dispatch, rootState },\r\n { mqttMetaId, brokerId, payload }\r\n ) {\r\n var user = rootState.users.currentUser;\r\n\r\n let result = false;\r\n await MqttRepository.updateMqttMeta(user, mqttMetaId, brokerId, payload)\r\n .then(() => {\r\n result = true;\r\n dispatch(\"alert/success\", i18n.t(\"common.updated\"), { root: true });\r\n })\r\n .catch(() => {\r\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\r\n });\r\n\r\n return result;\r\n },\r\n },\r\n\r\n mutations: {\r\n SET_BROKERS(state, data) {\r\n state.brokers = data;\r\n },\r\n\r\n SET_BROKERS_WITH_METRICS(state, data) {\r\n state.brokersWithMetrics = data;\r\n },\r\n },\r\n\r\n getters: {\r\n brokers(state) {\r\n return state.brokers;\r\n },\r\n\r\n brokersWithMetrics(state) {\r\n return state.brokersWithMetrics;\r\n },\r\n },\r\n};\r\n","import { RepositoryFactory } from \"../../api/RepositoryFactory\";\nimport i18n from \"@/plugins/i18n\";\n\nconst NotificationRepository = RepositoryFactory.get(\"notification\");\n\nexport const notifications = {\n namespaced: true,\n state: {\n notifications: [],\n status: {\n loading: false,\n },\n },\n\n actions: {\n async getNotifications({ dispatch, commit, rootState }) {\n // Cancel notification retrieval if the user is not logged in\n if (!rootState.users.status.loggedIn) return;\n\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await NotificationRepository.get(user, user.userId)\n .then((notifications) => {\n commit(\"GET_NOTIFICATIONS\", notifications.data);\n commit(\"LOADING\", false);\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n commit(\"LOADING\", false);\n });\n },\n\n async deactivateNotification(\n { dispatch, commit, rootState },\n notificationId\n ) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await NotificationRepository.deactivate(user, notificationId)\n .then(() => {\n commit(\"LOADING\", false);\n dispatch(\"getNotifications\", { root: true });\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n },\n\n async deactivateAllNotifications({ dispatch, commit, rootState }) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await NotificationRepository.deactivateAll(user, user.userId)\n .then(() => {\n commit(\"LOADING\", false);\n dispatch(\"getNotifications\", { root: true });\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n },\n },\n\n mutations: {\n LOADING(state, status) {\n state.status.loading = status;\n },\n\n GET_NOTIFICATIONS(state, notifications) {\n state.notifications = notifications;\n },\n },\n};\n","import OpcRepository from \"@/api/repositories/opcRepository\";\n\nexport const opc = {\n namespaced: true,\n state: {\n servers: [],\n nodes: []\n },\n \n actions: {\n async getServers({commit}) {\n await OpcRepository.getServers()\n .then(d => commit(\"SET_SERVERS\", d.data))\n .catch(() => commit(\"SET_SERVERS\", []));\n },\n\n async getNodesByDeveui({commit}, deveui) {\n const result = await OpcRepository.getNodesByDeveui(deveui).then(d => d.data).catch(() => []);\n commit(\"SET_NODES\", result);\n }\n },\n \n mutations: {\n SET_SERVERS(state, payload) {\n state.servers = payload;\n },\n\n SET_NODES(state, payload) {\n state.nodes = payload;\n }\n },\n \n getters: {\n getServerUrlById: (state) => (id) => {\n return state.servers.find(d => d.opcServerId === id);\n }\n }\n};","import { RepositoryFactory } from \"../../api/RepositoryFactory\";\nimport i18n from \"@/plugins/i18n\";\nimport { saveAs } from \"file-saver\";\nimport { format } from \"date-fns\";\n\nconst ReportRepository = RepositoryFactory.get(\"report\");\n\nexport const reports = {\n namespaced: true,\n state: {\n currentReport: {},\n reports: [],\n status: {\n loading: false,\n },\n },\n\n actions: {\n async getReports({ dispatch, commit, rootState }) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await ReportRepository.getReports(\n user,\n rootState.users.userCompany.companyId\n )\n .then((reports) => {\n commit(\"GET_REPORTS\", reports.data);\n commit(\"LOADING\", false);\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n },\n\n async getReport({ dispatch, commit, rootState }, { reportId }) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await ReportRepository.getReport(user, reportId)\n .then((report) => {\n commit(\"GET_CURRENT\", report.data);\n commit(\"LOADING\", false);\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n },\n\n async create({ dispatch, commit, rootState }, { payload }) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await ReportRepository.create(user, payload)\n .then(() => {\n commit(\"LOADING\", false);\n dispatch(\"getReports\");\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n },\n\n async update({ dispatch, commit, rootState }, { reportId, payload }) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await ReportRepository.update(user, reportId, payload)\n .then(() => {\n commit(\"LOADING\", false);\n dispatch(\"getReports\");\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n },\n\n async delete({ dispatch, commit, rootState }, { reportId }) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await ReportRepository.delete(user, reportId)\n .then(() => {\n commit(\"LOADING\", false);\n dispatch(\"getReports\");\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n },\n\n async multiExport({ dispatch, commit, rootState }, { payload }) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n var companyId = null;\n companyId = rootState.users.userCompany.companyId;\n\n await ReportRepository.multiExport(user, payload, companyId)\n .then((res) => {\n var date = format(new Date(), \"YYY-MM-dd\");\n saveAs(new Blob([res.data]), `SensorOnline-Report-${date}.xlsx`);\n })\n .catch((res) => {\n if (res.response.status === 404) {\n dispatch(\"alert/error\", i18n.t(\"report.noData\"), { root: true });\n } else\n dispatch(\"alert/error\", i18n.t(\"report.downloadFailed\"), {\n root: true,\n });\n });\n\n commit(\"LOADING\", false);\n },\n },\n\n mutations: {\n LOADING(state, status) {\n state.status.loading = status;\n },\n\n GET_REPORTS(state, reports) {\n state.reports = reports;\n },\n\n GET_CURRENT(state, report) {\n state.currentReport = report;\n },\n },\n};\n","import RoleRepository from \"../../api/repositories/roleRepository.js\";\r\nimport restrictHelper from \"../../_helpers/RestrictHelper.js\";\r\n\r\nexport const roles = {\r\n namespaced: true,\r\n state: {\r\n role: {},\r\n roles: [],\r\n recommended: [],\r\n permissions: [],\r\n },\r\n\r\n actions: {\r\n async getRolesByCompany({ commit, dispatch, rootState }) {\r\n await RoleRepository.getAllByCompany(\r\n rootState.users.currentUser,\r\n rootState.users.userCompany.companyId\r\n )\r\n .then((d) => {\r\n commit(\"SET_ROLES\", d.data);\r\n })\r\n .catch((res) => {\r\n if (res.response.status === 401) {\r\n dispatch(\r\n \"users/login\",\r\n {\r\n email: rootState.users.credentials.email,\r\n password: rootState.users.credentials.password,\r\n },\r\n { root: true }\r\n );\r\n }\r\n });\r\n },\r\n\r\n getRoleById({ state, commit }, id) {\r\n var res = state.roles.find((e) => e.userRoleId == id);\r\n if (res != null) commit(\"SET_ROLE\", res);\r\n },\r\n\r\n async createRole({ dispatch, rootState }, payload) {\r\n await RoleRepository.create(\r\n rootState.users.currentUser,\r\n rootState.users.userCompany.companyId,\r\n payload\r\n ).then(() => dispatch(\"getRolesByCompany\"));\r\n },\r\n\r\n async updateRole({ dispatch, rootState }, payload) {\r\n await RoleRepository.update(\r\n rootState.users.currentUser,\r\n payload.userRoleId,\r\n payload\r\n ).then(() => dispatch(\"getRolesByCompany\"));\r\n },\r\n\r\n async getRecommendedPermissions({ commit, rootState }, ids) {\r\n if (ids == null || ids.length <= 0) {\r\n commit(\"SET_RECOMMENDED\", []);\r\n return;\r\n }\r\n\r\n await RoleRepository.getRecommendedPermissions(\r\n rootState.users.currentUser,\r\n ids\r\n ).then((d) => {\r\n commit(\"SET_RECOMMENDED\", d.data);\r\n });\r\n },\r\n\r\n async getPermissions({ commit, rootState }) {\r\n await RoleRepository.getPermissions(rootState.users.currentUser).then(\r\n (d) => {\r\n commit(\"SET_PERMISSIONS\", d.data);\r\n }\r\n );\r\n },\r\n\r\n setRole({ state, commit }, userRoleId) {\r\n var role = state.roles.find((e) => e.userRoleId == userRoleId);\r\n\r\n if (role != null) commit(\"SET_ROLE\", role);\r\n },\r\n },\r\n\r\n mutations: {\r\n SET_ROLE(state, role) {\r\n state.role = role;\r\n },\r\n\r\n SET_ROLES(state, roles) {\r\n state.roles = roles;\r\n },\r\n\r\n SET_RECOMMENDED(state, value) {\r\n state.recommended = value;\r\n },\r\n\r\n SET_PERMISSIONS(state, value) {\r\n state.permissions = value;\r\n },\r\n },\r\n\r\n getters: {\r\n defaultsWithPermissions(status) {\r\n return status.roles.filter((d) => d.isDefault);\r\n },\r\n\r\n permittedRoles(state) {\r\n if (!restrictHelper.methods.permitted(\"UserRole.Update\")) return [];\r\n\r\n if (restrictHelper.methods.permitted(\"SuperAdmin\")) return state.roles;\r\n\r\n return state.roles.filter((e) => !e.isSuper);\r\n },\r\n },\r\n};\r\n","import { RepositoryFactory } from \"../../api/RepositoryFactory\";\nimport i18n from \"@/plugins/i18n\";\n\nconst ScriptRepository = RepositoryFactory.get(\"script\");\n\nexport const scripts = {\n namespaced: true,\n state: {\n currentScript: {},\n scripts: [],\n validScript: true,\n error: null,\n status: {\n loading: false,\n },\n },\n\n actions: {\n async getScripts({ dispatch, commit, rootState }) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await ScriptRepository.getScripts(\n user,\n rootState.users.userCompany.companyId\n )\n .then((scripts) => {\n commit(\"GET_SCRIPTS\", scripts.data);\n commit(\"LOADING\", false);\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n },\n\n async getScript({ dispatch, commit, rootState }, { scriptId }) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await ScriptRepository.getScript(user, scriptId)\n .then((script) => {\n commit(\"GET_CURRENT\", script.data);\n commit(\"LOADING\", false);\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n },\n\n async create({ dispatch, commit, rootState }, { payload }) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await ScriptRepository.create(\n user,\n rootState.users.userCompany.companyId,\n payload\n )\n .then(() => {\n commit(\"LOADING\", false);\n dispatch(\"getScripts\");\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n },\n async edit({ dispatch, commit, rootState }, { scriptId, payload }) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n await ScriptRepository.put(user, scriptId, payload)\n .then(() => {\n commit(\"LOADING\", false);\n dispatch(\"getScripts\");\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n },\n\n async delete({ dispatch, commit, rootState }, { scriptId }) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await ScriptRepository.delete(user, scriptId)\n .then(() => {\n commit(\"LOADING\", false);\n dispatch(\"getScripts\");\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n },\n\n async execute({ dispatch, commit, rootState }, { scriptId }) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n await ScriptRepository.execute(user, scriptId)\n .then(() => {\n commit(\"LOADING\", false);\n dispatch(\"getScripts\");\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n },\n\n async test({ commit, rootState }, { payload }) {\n commit(\"LOADING\", true);\n\n var companyId = rootState.users.userCompany.companyId;\n\n var user = rootState.users.currentUser;\n\n await ScriptRepository.test(user, payload, companyId)\n .then(() => {\n commit(\"SET_VALIDSCRIPT\", { valid: true });\n commit(\"LOADING\", false);\n })\n .catch((res) => {\n commit(\"SET_VALIDSCRIPT\", { valid: false, msg: res.response.data });\n commit(\"LOADING\", false);\n });\n },\n\n async setCurrentScript({ commit }, script) {\n commit(\"GET_CURRENT\", script);\n },\n\n async resetValidScript({ commit }) {\n commit(\"SET_VALIDSCRIPT\", { valid: true });\n },\n },\n\n mutations: {\n LOADING(state, status) {\n state.status.loading = status;\n },\n\n GET_SCRIPTS(state, scripts) {\n state.scripts = scripts;\n },\n\n GET_CURRENT(state, script) {\n state.currentScript = script;\n },\n\n SET_VALIDSCRIPT(state, content) {\n if (!content.valid) {\n state.error = content.msg;\n }\n\n state.validScript = content.valid;\n },\n },\n};\n","export const settings = {\n namespaced: true,\n state: {\n moduleSettings: [],\n googleMapsZoom: 7,\n googleMapsLatLng: null,\n googleMapsViewType: \"roadmap\",\n imageMapZoom: -1,\n },\n\n actions: {\n addModuleSetting({ commit }, { moduleId, timeOffset }) {\n commit(\"ADD_MODULE_SETTING\", { moduleId, timeOffset });\n },\n\n setGoogleMapsZoom({ commit }, level) {\n commit(\"SET_GOOGLEMAPS_ZOOM\", level);\n },\n\n setLatnLng({ commit }, latnlng) {\n commit(\"SET_LAT_LNG\", latnlng);\n },\n\n setMapType({ commit }, viewType) {\n commit(\"SET_VIEW_TYPE\", viewType);\n },\n\n setImageMapZoom({ commit }, level) {\n commit(\"SET_IMAGE_MAP_ZOOM\", level);\n },\n },\n\n mutations: {\n ADD_MODULE_SETTING(state, { moduleId, timeOffset }) {\n state.moduleSettings[moduleId] = timeOffset;\n },\n\n SET_GOOGLEMAPS_ZOOM(state, level) {\n state.googleMapsZoom = level;\n },\n\n SET_LAT_LNG(state, latnLng) {\n state.googleMapsLatLng = latnLng;\n },\n\n SET_VIEW_TYPE(state, viewType) {\n state.googleMapsViewType = viewType;\n },\n\n SET_IMAGE_MAP_ZOOM(state, level) {\n state.imageMapZoom = level;\n },\n\n RESET_STATE(state) {\n state.moduleSettings = [];\n },\n },\n};\n","import { RepositoryFactory } from \"../../api/RepositoryFactory\";\r\nimport i18n from \"@/plugins/i18n\";\r\nconst Repo = RepositoryFactory.get(\"signalTest\");\r\n\r\nexport const signalTests = {\r\n namespaced: true,\r\n state: {\r\n currentTest: {},\r\n signalTests: [],\r\n testData: [],\r\n },\r\n\r\n mutations: {\r\n SET_TEST(state, test) {\r\n state.currentTest = test;\r\n },\r\n\r\n SET_TEST_DATAS(state, datas) {\r\n state.testData = datas;\r\n },\r\n\r\n SET_TESTS(state, tests) {\r\n state.signalTests = tests;\r\n },\r\n },\r\n\r\n actions: {\r\n async getTests({ rootState, dispatch }) {\r\n var user = rootState.users.currentUser;\r\n var company = rootState.users.userCompany.companyId;\r\n\r\n let result = [];\r\n\r\n await Repo.getTests(user, company)\r\n .then((data) => {\r\n result = data.data;\r\n })\r\n .catch(() => {\r\n dispatch(\"alert/error\", i18n.t(\"common.error\"), {\r\n root: true,\r\n });\r\n });\r\n\r\n return result;\r\n },\r\n\r\n async peek({ rootState, dispatch }, testId) {\r\n var user = rootState.users.currentUser;\r\n let result = [];\r\n\r\n await Repo.peek(user, testId)\r\n .then((data) => {\r\n result = data.data;\r\n })\r\n .catch(() => {\r\n dispatch(\"alert/error\", i18n.t(\"common.error\"), {\r\n root: true,\r\n });\r\n });\r\n\r\n return result;\r\n },\r\n\r\n async getTest({ rootState, dispatch }, testId) {\r\n var user = rootState.users.currentUser;\r\n let result = [];\r\n\r\n await Repo.getTest(user, testId)\r\n .then((data) => {\r\n result = data.data;\r\n })\r\n .catch(() => {\r\n dispatch(\"alert/error\", i18n.t(\"common.error\"), {\r\n root: true,\r\n });\r\n });\r\n\r\n return result;\r\n },\r\n\r\n async startTest({ commit, rootState, dispatch }, { deveui, payload }) {\r\n var user = rootState.users.currentUser;\r\n var company = rootState.users.userCompany.companyId;\r\n\r\n await Repo.startTest(user, company, deveui, payload)\r\n .then((test) => {\r\n dispatch(\"getTests\");\r\n commit(\"SET_TEST\", test.data);\r\n })\r\n .catch(() => {\r\n dispatch(\"alert/error\", i18n.t(\"common.error\"), {\r\n root: true,\r\n });\r\n });\r\n },\r\n\r\n async endTest({ rootState, dispatch }, testId) {\r\n var user = rootState.users.currentUser;\r\n\r\n await Repo.endTest(user, testId)\r\n .then(() => {\r\n dispatch(\"getTests\");\r\n })\r\n .catch(() => {\r\n dispatch(\"alert/error\", i18n.t(\"common.error\"), {\r\n root: true,\r\n });\r\n });\r\n },\r\n\r\n async deleteTest({ rootState, dispatch }, testId) {\r\n var user = rootState.users.currentUser;\r\n\r\n await Repo.deleteTest(user, testId)\r\n .then(() => {\r\n dispatch(\"getTests\");\r\n })\r\n .catch(() => {\r\n dispatch(\"alert/error\", i18n.t(\"common.error\"), {\r\n root: true,\r\n });\r\n });\r\n },\r\n },\r\n};\r\n","// This store is used only by frontend to keep track of slots between\r\n// components instead of sending full objects all around\r\nexport const slots = {\r\n namespaced: true,\r\n\r\n state: {\r\n slots: [],\r\n },\r\n\r\n actions: {\r\n addSlot({ commit }, { slotId, index, key }) {\r\n commit(\"ADD_SLOT\", { slotId, index, key });\r\n },\r\n\r\n resetSlots({ commit }) {\r\n commit(\"RESET_SLOTS\");\r\n },\r\n },\r\n\r\n mutations: {\r\n ADD_SLOT(state, { slotId, index, key }) {\r\n for (var slot of state.slots) {\r\n if (slotId === slot.slotId) return;\r\n\r\n if (slot.key == key && slot.index == index) return;\r\n }\r\n\r\n state.slots.push({\r\n slotId: slotId === undefined ? crypto.randomUUID() : slotId,\r\n index: index,\r\n slot: \"Node Slot \" + index,\r\n key: key,\r\n priority: state.slots?.length + 1 ?? 0,\r\n });\r\n },\r\n\r\n ADD_KEY_TO_SLOT(state, index, key) {\r\n var slotIdx = state.slots.findIndex((d) => d.index == index);\r\n if (slotIdx == -1) return;\r\n\r\n state.slots[slotIdx].key = key;\r\n },\r\n\r\n RESET_SLOTS(state) {\r\n state.slots = [];\r\n },\r\n },\r\n\r\n getters: {\r\n getSlot: (state) => (index, key) => {\r\n var slot = state.slots.findIndex((d) => d.index == index && d.key == key);\r\n if (slot === -1) return null;\r\n\r\n return state.slots[slot];\r\n },\r\n\r\n getSlotNameById: (state) => (id) => {\r\n var slot = state.slots.findIndex((d) => d.slotId === id);\r\n if (slot === -1) return \"\";\r\n\r\n return (\r\n \"Node Slot \" + state.slots[slot].index + \" - \" + state.slots[slot].key\r\n );\r\n },\r\n\r\n getSlotName: (state) => (index, key) => {\r\n var slot = state.slots.findIndex(\r\n (d) => d.index === index && d.key === key\r\n );\r\n if (slot === -1) return \"\";\r\n\r\n return (\r\n \"Node Slot \" + state.slots[slot].index + \" - \" + state.slots[slot].key\r\n );\r\n },\r\n },\r\n};\r\n","import { RepositoryFactory } from \"../../api/RepositoryFactory\";\nimport i18n from \"@/plugins/i18n\";\nimport { Roles } from \"@/_helpers/Role\";\nimport ApiHelper from \"@/_helpers/apiHelper.js\";\nimport companyRepository from \"../../api/repositories/companyRepository\";\nimport DecoderHelper from \"@/_helpers/DecoderHelper\";\n\nconst TagRepository = RepositoryFactory.get(\"tag\");\n\nexport const tag = {\n namespaced: true,\n state: {\n currentTag: {},\n currentLabel: {},\n tagsWithInformation: [],\n tags: [],\n tagsWithKeys: [],\n tagsWithMeta: {},\n batteryStatuses: [],\n tagsInPool: [],\n detail: {},\n status: {\n loading: false,\n },\n apiErrors: [],\n decoders: [],\n keys: [],\n },\n\n actions: {\n async getTags({ dispatch, commit, rootState }) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n await TagRepository.getByCompanyId(\n user,\n rootState.users.userCompany.companyId\n )\n .then((tags) => {\n commit(\"GET_TAGS\", tags.data);\n commit(\"LOADING\", false);\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n\n commit(\"LOADING\", false);\n },\n\n async getTagAsync({ commit, rootState }, id) {\n var user = rootState.users.currentUser;\n\n let data = {};\n await TagRepository.getById(user, id)\n .then((tag) => {\n commit(\"CREATED_TAG\", tag.data);\n data = tag.data;\n })\n .catch(() => {\n commit(\"LOADING\", false);\n });\n\n return data;\n },\n\n async getAllKeys({ rootState, commit }) {\n var user = rootState.users.currentUser;\n\n await TagRepository.getAllKeys(user)\n .then((t) => {\n commit(\"SET_KEYS\", t.data);\n })\n .catch((d) => console.error(d));\n },\n\n async getTagWithMetaAndKeys({ commit }, deveuiAndKeys) {\n await TagRepository.getTagWithMetaAndKeys(deveuiAndKeys)\n .then((d) => commit(\"SET_TAG_WITH_META\", d.data))\n .catch((d) => console.error(d));\n },\n\n async createTag(\n { dispatch, commit, rootState },\n { applicationId, payload }\n ) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await TagRepository.create(user, applicationId, payload)\n .then((tag) => {\n commit(\"CREATED_TAG\", tag.data);\n commit(\"CLEAR_ERRORS\");\n dispatch(\"getTags\", user);\n dispatch(\"alert/success\", i18n.t(\"common.created\"), {\n root: true,\n });\n })\n .catch((res) => {\n commit(\"SET_ERRORS\", res.response.data.errors);\n\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n\n { root: true }\n );\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n } else if (ApiHelper.checkForConflict(res.response)) {\n dispatch(\"alert/error\", i18n.t(\"validation.deveuiConflict\"), {\n root: true,\n });\n }\n\n commit(\"LOADING\", false);\n });\n },\n\n async updateTag(\n { dispatch, commit, rootState },\n { payload, fetch = true }\n ) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await TagRepository.update(user, payload)\n .then((tag) => {\n commit(\"CREATED_TAG\", tag.data);\n commit(\"CLEAR_ERRORS\");\n if (fetch) {\n dispatch(\"getTags\", user);\n }\n dispatch(\"alert/success\", i18n.t(\"common.updated\"), {\n root: true,\n });\n })\n .catch((res) => {\n commit(\"SET_ERRORS\", res.response.data.errors);\n\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n },\n\n async updateSparkplugMeta(\n { disptach, commit, rootState },\n { deveui, meta }\n ) {\n var user = rootState.users.currentUser;\n\n await TagRepository.updateSparkplugMeta(user, deveui, meta)\n .then(async () => {\n commit(\"CLEAR_ERRORS\");\n await disptach(\"getTags\");\n })\n .catch((res) => {\n commit(\"SET_ERRORS\", res.response);\n });\n },\n\n async deleteTag({ dispatch, commit, rootState }, { tagId }) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n let success = false;\n await TagRepository.delete(user, tagId)\n .then(() => {\n commit(\"DELETED_TAG\");\n dispatch(\"getTags\", user);\n dispatch(\"alert/success\", i18n.t(\"common.deleted\"), { root: true });\n success = true;\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n\n return success;\n },\n\n async setTag({ commit }, tag) {\n commit(\"SET_TAG\", tag);\n },\n\n async getKeysForTag({ dispatch, commit, rootState }, { tagId }) {\n commit(\"LOADING\", true);\n dispatch(\"tagData/setTagDataKeys\", [], { root: true });\n\n return await TagRepository.getKeys(rootState.users.currentUser, tagId)\n .then((keys) => {\n dispatch(\"tagData/setTagDataKeys\", keys.data, { root: true });\n commit(\"LOADING\", false);\n return keys.data;\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n return [];\n });\n },\n\n async getKeysForTagAsync({ dispatch, commit, rootState }, { tagId }) {\n commit(\"LOADING\", true);\n\n return await TagRepository.getKeys(rootState.users.currentUser, tagId)\n .then((keys) => {\n commit(\"LOADING\", false);\n return keys.data;\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n return [];\n });\n },\n\n async getDetails({ dispatch, commit, rootState }, deveui) {\n var user = rootState.users.currentUser;\n return await TagRepository.getDetails(user, deveui)\n .then((d) => {\n commit(\"SET_DETAIL\", d.data);\n return d.data;\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n\n { root: true }\n );\n }\n });\n },\n\n async getTagWithKeys({ dispatch, commit, rootState }) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n var tags = [];\n\n if (user.role === Roles.SuperAdmin) {\n await TagRepository.getByCompanyId(\n user,\n rootState.users.userCompany.companyId\n )\n .then((response) => {\n tags = response.data;\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n } else {\n await TagRepository.get(user)\n .then((response) => {\n tags = response.data;\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n }\n\n if (tags.length > 0) {\n for (var i = 0; i < tags.length; i++) {\n await TagRepository.getKeys(user, tags[i].deveui).then((response) => {\n var keys = [];\n response.data.forEach((e) => {\n keys.push({ name: e.key });\n });\n tags[i].keys = keys;\n });\n\n tags[i].name = tags[i].deveui + \" - \" + tags[i].name;\n }\n }\n\n commit(\"LOADING\", false);\n commit(\"SET_TAG_WITH_KEY\", tags);\n },\n\n resetState({ commit }) {\n commit(\"RESET_STATE\");\n },\n\n async uploadTagImage({ dispatch, commit, rootState }, { payload, tagId }) {\n commit(\"LOADING\", true);\n\n await TagRepository.uploadImage(\n rootState.users.currentUser,\n tagId,\n payload\n )\n .then(() => {\n commit(\"LOADING\", false);\n dispatch(\"getTags\", rootState.user.currentUser);\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n },\n\n async deleteImage({ dispatch, commit, rootState }, { tagId }) {\n commit(\"LOADING\", true);\n\n await TagRepository.deleteImage(rootState.users.currentUser, tagId)\n .then(() => {\n commit(\"LOADING\", false);\n dispatch(\"getTags\", rootState.user.currentUser);\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n },\n\n async setDefaultKey({ dispatch, commit, rootState }, { tagId, key }) {\n commit(\"LOADING\", true);\n\n await TagRepository.setDefaultKey(rootState.users.currentUser, tagId, key)\n .then(() => {\n commit(\"LOADING\", false);\n dispatch(\"getTags\");\n\n // Get the tags and batterystatuses\n dispatch(\"companies/getBatteryStatuses\", null, { root: true });\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n },\n\n async addTagKey({ dispatch, commit, rootState }, { payload }) {\n commit(\"LOADING\", true);\n\n await TagRepository.addTagKey(rootState.users.currentUser, payload)\n .then(() => {\n commit(\"LOADING\", false);\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n },\n\n async updateTagKey({ dispatch, commit, rootState }, { payload }) {\n commit(\"LOADING\", true);\n\n await TagRepository.updateTagKey(rootState.users.currentUser, payload)\n .then(() => {\n commit(\"LOADING\", false);\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n },\n\n async deleteTagKey({ dispatch, commit, rootState }, { tagId, key }) {\n commit(\"LOADING\", true);\n\n await TagRepository.deleteTagKey(rootState.users.currentUser, tagId, key)\n .then(() => {\n commit(\"LOADING\", false);\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n },\n\n async getKeyLabel({ dispatch, commit, rootState }, { tagId, key }) {\n commit(\"LOADING\", true);\n\n return await TagRepository.getKeyLabel(\n rootState.users.currentUser,\n tagId,\n key\n )\n .then((res) => {\n commit(\"LOADING\", false);\n commit(\"SET_LABEL\", res.data);\n return res.data;\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n },\n\n async getTagPool({ dispatch, commit, rootState }) {\n commit(\"LOADING\", true);\n\n await TagRepository.getTagPool(rootState.users.currentUser)\n .then((tags) => {\n commit(\"LOADING\", false);\n commit(\"SET_TAGPOOL\", tags.data);\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n },\n\n async updateTagPoolStatus({ dispatch, commit, rootState }, deveui) {\n commit(\"LOADING\", true);\n await TagRepository.updateTagPoolStatus(\n rootState.users.currentUser,\n deveui\n )\n .then(() => {\n dispatch(\"getTagPool\");\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n });\n },\n\n setBatteryStatuses({ commit }, statuses) {\n commit(\"SET_BATTERY_STATUSES\", statuses);\n },\n\n async getTagsWithInformation({ dispatch, commit, rootState }) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await companyRepository\n .getTagsWithInformation(user, rootState.users.userCompany.companyId)\n .then((res) => {\n commit(\"SET_TAGS_WITH_INFORMATION\", res.data);\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n\n { root: true }\n );\n }\n });\n commit(\"LOADING\", false);\n },\n\n async getLatestForCompany({ dispatch, commit, rootState }) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await dispatch(\"getTags\", user);\n\n var payload = [];\n var tags = this.state.tag.tags;\n await companyRepository\n .getLatestTagData(user, rootState.users.userCompany.companyId)\n .then((res) => {\n for (var i = 0; i < tags.length; i++) {\n payload[i] = tags[i];\n payload[i].data = [];\n\n res.data.forEach((d) => {\n if (d.tagDeveui == payload[i].deveui) {\n if (d.key == \"rssi\") payload[i].rssi = d.value;\n else if (d.key == \"vdd\") payload[i].vdd = d.value;\n else {\n payload[i].data.push(d);\n }\n\n if (\n payload[i].latestTime == undefined ||\n d.createdAt > payload[i].latestTime\n )\n payload[i].latestTime = d.createdAt;\n }\n });\n }\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n\n { root: true }\n );\n }\n });\n commit(\"GET_TAGS\", payload);\n\n commit(\"LOADING\", false);\n },\n\n async getDecoders({ commit, rootState }) {\n var user = rootState.users.currentUser;\n await TagRepository.getDecoders(user)\n .then((d) => {\n commit(\"SET_DECODERS\", d.data);\n })\n .catch(() => {\n commit(\"SET_DECODERS\", DecoderHelper.decoders);\n });\n },\n\n async setTagData({ dispatch, commit, rootState }, { tagId, payload }) {\n commit(\"LOADING\", true);\n\n await TagRepository.setData(rootState.users.currentUser, tagId, payload)\n .then(() => {\n commit(\"LOADING\", false);\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), {\n root: true,\n });\n commit(\"LOADING\", false);\n });\n },\n },\n\n mutations: {\n LOADING(state, status) {\n state.status.loading = status;\n },\n\n SET_KEYS(state, keys) {\n state.keys = keys;\n },\n\n SET_TAGPOOL(state, tagPool) {\n state.tagsInPool = tagPool;\n },\n\n SET_BATTERY_STATUSES(state, statuses) {\n state.batteryStatuses = statuses;\n },\n\n GET_TAGS(state, tags) {\n state.tags = tags;\n },\n\n CREATED_TAG(state, tag) {\n state.currentTag = tag;\n },\n\n DELETED_TAG(state) {\n state.currentTag = {};\n },\n\n SET_TAG(state, tag) {\n state.currentTag = tag;\n },\n\n SET_LABEL(state, label) {\n state.currentLabel = label;\n },\n\n SET_TAG_WITH_KEY(state, tags) {\n state.tagsWithKeys = tags;\n },\n\n SET_TAG_WITH_META(state, tagsWithMeta) {\n state.tagsWithMeta = tagsWithMeta;\n },\n\n SET_ERRORS(state, errors) {\n state.apiErrors = errors;\n },\n\n CLEAR_ERRORS(state) {\n state.apiErrors = [];\n },\n\n SET_DECODERS(state, decoders) {\n state.decoders = decoders;\n },\n\n SET_TAGS_WITH_INFORMATION(state, data) {\n state.tagsWithInformation = data;\n },\n\n SET_DETAIL(state, data) {\n state.detail = data;\n },\n\n // eslint-disable-next-line\n RESET_STATE(state) {\n state = {\n currentTag: {},\n tags: [],\n status: {\n loading: false,\n },\n };\n },\n },\n};\n","import { RepositoryFactory } from \"../../api/RepositoryFactory\";\nimport i18n from \"@/plugins/i18n\";\nimport MetricHelper from \"@/_helpers/metricHelper.js\";\nconst TagDataRepository = RepositoryFactory.get(\"tagdata\");\nconst CompanyRepository = RepositoryFactory.get(\"companies\");\nconst ModuleRepository = RepositoryFactory.get(\"module\");\n\nexport const tagData = {\n namespaced: true,\n state: {\n currentTagData: {},\n currents: [],\n tagData: [],\n tagsWithData: [],\n keys: [],\n tdKeys: [],\n defaults: {},\n meta: {},\n tagDataCount: null,\n hasDefaults: false,\n status: {\n loading: false,\n dataLoading: false,\n },\n },\n\n actions: {\n async getTagData({ dispatch, commit, rootState }) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await TagDataRepository.get(user)\n .then((tagData) => {\n commit(\"GET_TAG_DATA\", tagData.data);\n commit(\"LOADING\", false);\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), {\n root: true,\n });\n commit(\"LOADING\", false);\n });\n },\n\n async getTagDataKeys({ dispatch, commit, rootState }) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n var company = rootState.users.userCompany;\n\n await TagDataRepository.getKeys(user, company.companyId)\n .then((keys) => {\n commit(\"GET_TAG_DATA_KEYS\", keys.data);\n commit(\"LOADING\", false);\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), {\n root: true,\n });\n commit(\"LOADING\", false);\n });\n },\n\n async getTagDataWithMetrics({ dispatch, commit, rootState }, { metrics }) {\n commit(\"LOADING\", true);\n commit(\"TAGLOADING\", true);\n\n var user = rootState.users.currentUser;\n\n var company = rootState.users.userCompany;\n\n return await CompanyRepository.getTagDataWithMetrics(\n user,\n company.companyId,\n MetricHelper.getMetricsUrlParams(metrics)\n )\n .then((tagData) => {\n commit(\"GET_TAG_DATA\", tagData.data);\n commit(\"TAGLOADING\", false);\n commit(\"LOADING\", false);\n return tagData.data;\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), {\n root: true,\n });\n commit(\"LOADING\", false);\n commit(\"TAGLOADING\", false);\n });\n },\n\n async getTagDataAsync({ dispatch, rootState }, { metrics }) {\n var user = rootState.users.currentUser;\n\n var company = rootState.users.userCompany;\n\n let tagDatas = await CompanyRepository.getTagDataWithMetrics(\n user,\n company.companyId,\n MetricHelper.getMetricsUrlParams(metrics)\n ).catch(() => {\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n });\n\n return tagDatas !== undefined ? tagDatas.data : [];\n },\n\n async getTagDataWithMultiTag({ dispatch, commit, rootState }, { metrics }) {\n commit(\"LOADING\", true);\n commit(\"TAGLOADING\", true);\n\n var user = rootState.users.currentUser;\n\n var company = rootState.users.userCompany;\n\n await CompanyRepository.getTagDataWithMetrics(\n user,\n company.companyId,\n MetricHelper.getMetricsUrlParams(metrics)\n )\n .then((tagData) => {\n commit(\"GET_TAG_DATA_MULTI\", tagData.data);\n commit(\"TAGLOADING\", false);\n commit(\"LOADING\", false);\n })\n .catch(() => {\n dispatch(\"alert/error\", i18n.t(\"common.error\"), {\n root: true,\n });\n commit(\"LOADING\", false);\n commit(\"TAGLOADING\", false);\n });\n },\n\n async getTagDataWithMultiTagAsync({ dispatch, rootState }, { metrics }) {\n var user = rootState.users.currentUser;\n\n var company = rootState.users.userCompany;\n\n let td = await CompanyRepository.getTagDataWithMetrics(\n user,\n company.companyId,\n MetricHelper.getMetricsUrlParams(metrics)\n ).catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n });\n\n return td !== undefined ? td.data : [];\n },\n\n async getTagDataDefaults({ dispatch, commit, rootState }) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n var company = rootState.users.userCompany;\n\n await CompanyRepository.getTagDataDefaults(user, company.companyId)\n .then((defaults) => {\n commit(\"GET_DEFAULTS\", defaults.data);\n commit(\"LOADING\", false);\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), {\n root: true,\n });\n commit(\"LOADING\", false);\n });\n },\n\n async resetDefaults({ commit }) {\n commit(\"RESET_DEFAULTS\");\n },\n\n async setTagDataDefaults({ commit }, { defaults }) {\n commit(\"SET_DEFAULTS\", defaults);\n },\n\n async getTagdataDatapoints({ dispatch, commit, rootState }) {\n var user = rootState.users.currentUser;\n let metrics = {\n from: new Date(\n new Date().getTime() - 24 * 60 * 60 * 1000\n ).toISOString(),\n };\n let points = 0;\n var company = rootState.users.userCompany;\n await CompanyRepository.getTagDataWithMetrics(\n user,\n company.companyId,\n MetricHelper.getMetricsUrlParams(metrics)\n )\n .then((count) => {\n points = count.data.length;\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n commit(\"LOADING\", false);\n });\n\n return points;\n },\n\n async getTagDataForModule({ dispatch, rootState }, { moduleId, metrics }) {\n var user = rootState.users.currentUser;\n\n return await ModuleRepository.getTagDataForModule(\n user,\n moduleId,\n MetricHelper.getMetricsUrlParams(metrics)\n )\n .then((tagData) => {\n return tagData.data;\n })\n .catch(() => {\n dispatch(\"alert/error\", i18n.t(\"common.error\"), {\n root: true,\n });\n });\n },\n\n async getTagDataForModuleByLimit(\n { dispatch, rootState },\n { moduleId, limit }\n ) {\n var user = rootState.users.currentUser;\n\n return await ModuleRepository.getTagDataForModuleByLimit(\n user,\n moduleId,\n limit\n )\n .then((tagData) => {\n return tagData.data;\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), {\n root: true,\n });\n });\n },\n\n async getLatestTagDataForModule({ dispatch, rootState }, { moduleId }) {\n var user = rootState.users.currentUser;\n\n return await ModuleRepository.getLatestTagDataForModule(user, moduleId)\n .then((tagData) => {\n return tagData.data;\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), {\n root: true,\n });\n });\n },\n\n setTagDataKeys({ commit }, keys) {\n commit(\"GET_TAG_DATA_KEYS\", keys);\n },\n\n resetState({ commit }) {\n commit(\"RESET_STATE\");\n },\n\n clearTagData({ commit }) {\n commit(\"CLEAR_TAGDATA\");\n },\n\n async getDatapointsLastWeek({ rootState, dispatch }) {\n var user = rootState.users.currentUser;\n var company = rootState.users.userCompany;\n\n return await CompanyRepository.getDatapointsLastWeek(\n user,\n company.companyId\n )\n .then((data) => data.data)\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), {\n root: true,\n });\n });\n },\n\n async getDatapointsLastDay({ rootState, dispatch }) {\n var user = rootState.users.currentUser;\n var company = rootState.users.userCompany;\n\n return await CompanyRepository.getDatapointsLastDay(\n user,\n company.companyId\n )\n .then((data) => data.data)\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), {\n root: true,\n });\n });\n },\n\n async getSensorDatapointsLastDay({ rootState, dispatch }) {\n var user = rootState.users.currentUser;\n var company = rootState.users.userCompany;\n\n return await CompanyRepository.getSensorDatapointsLastDay(\n user,\n company.companyId\n )\n .then((data) => data.data)\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), {\n root: true,\n });\n });\n },\n\n async getTrendDataForTag(\n { dispatch, rootState },\n { tagId, tagKey, metrics }\n ) {\n return await TagDataRepository.getTrendDataForTag(\n tagId,\n encodeURIComponent(tagKey),\n MetricHelper.getMetricsUrlParams(metrics)\n )\n .then((tagData) => {\n return tagData.data;\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), {\n root: true,\n });\n });\n },\n\n async getCurrentTagdata(\n { dispatch, commit, rootState },\n { tagId, tagKey }\n ) {\n return await TagDataRepository.getCurrentTagdata(\n tagId,\n encodeURIComponent(tagKey)\n )\n .then((tagData) => {\n commit(\"SET_CURRENT_TAGDATA\", tagData.data);\n return tagData.data;\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n return { value: \"ERR\" };\n });\n },\n\n async getCurrentsForTag({ commit, rootState, dispatch }, deveui) {\n var user = rootState.users.currentUser;\n await TagDataRepository.getCurrentsForDevice(user, deveui)\n .then((d) => {\n commit(\"SET_CURRENTS\", d.data);\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), {\n root: true,\n });\n });\n },\n },\n\n mutations: {\n LOADING(state, status) {\n state.status.loading = status;\n },\n\n SET_META(state, meta) {\n state.meta = meta;\n },\n\n TAGLOADING(state, status) {\n state.status.dataLoading = status;\n },\n\n SET_TAG_DATA(state, tagData) {\n state.tagData = tagData;\n },\n\n SET_CURRENT_TAGDATA(state, tagData) {\n state.currentTagData = tagData;\n },\n\n SET_CURRENTS(state, currents) {\n state.currents = currents;\n },\n\n GET_TAG_DATA(state, tagData) {\n state.tagData = tagData;\n\n // Sätt nycklarna som tillhör tagdatan\n var tdKeys = tagData.map((x) => x.key);\n state.tdKeys = [...new Set(tdKeys)];\n },\n\n GET_TAG_DATA_MULTI(state, tagData) {\n state.tagsWithData = tagData;\n },\n\n GET_TAG_DATA_KEYS(state, keys) {\n state.keys = keys;\n },\n\n GET_DEFAULTS(state, defaults) {\n state.defaults = defaults;\n state.hasDefaults = true;\n },\n\n SET_DEFAULTS(state, defaults) {\n state.defaults = {};\n state.defaults = defaults;\n state.hasDefaults = true;\n },\n\n GET_TOTAL_DP(state, dp) {\n state.tagDataCount = dp;\n },\n\n RESET_DEFAULTS(state) {\n state.defaults = {};\n this.hasDefaults = false;\n },\n\n // eslint-disable-next-line\n RESET_STATE(state) {\n state = {\n currentTagData: {},\n tagData: [],\n keys: [],\n defaults: {},\n tagDataCount: null,\n hasDefaults: false,\n status: {\n loading: false,\n },\n };\n },\n\n CLEAR_TAGDATA(state) {\n state.tagData = [];\n state.keys = [];\n },\n },\n};\n","import Repository from \"../Repository\";\r\nimport { company, apiConfig } from \"../../_helpers/apiHelper\";\r\n\r\nconst resource = \"/templateDashboard\";\r\n\r\nexport default {\r\n getDashboard(templateDashboardId) {\r\n return Repository.get(`${resource}/${templateDashboardId}`, apiConfig());\r\n },\r\n\r\n getDashboards() {\r\n return Repository.get(`${resource}/list/${company()}`, apiConfig());\r\n },\r\n\r\n getWidgets(templateDashboardId) {\r\n return Repository.get(\r\n `${resource}/widgets/${templateDashboardId}`,\r\n apiConfig()\r\n );\r\n },\r\n\r\n create(payload) {\r\n return Repository.post(`${resource}/${company()}`, payload, apiConfig());\r\n },\r\n\r\n update(templateDashboardId, payload) {\r\n return Repository.put(\r\n `${resource}/${templateDashboardId}`,\r\n payload,\r\n apiConfig()\r\n );\r\n },\r\n\r\n delete(templateDashboardId) {\r\n return Repository.delete(`${resource}/${templateDashboardId}`, apiConfig());\r\n },\r\n\r\n updateWidgets(templateDashboardId, payload) {\r\n return Repository.put(\r\n `${resource}/widgets/${templateDashboardId}`,\r\n payload,\r\n apiConfig()\r\n );\r\n },\r\n\r\n removeWidget(widgetId) {\r\n return Repository.delete(`${resource}/widget/${widgetId}`, apiConfig());\r\n },\r\n\r\n getTemplateDashboards() {\r\n return Repository.get(`${resource}/${company()}`, apiConfig());\r\n },\r\n};\r\n","import TemplateDashboardRepository from \"../../api/repositories/templateDashboard\";\r\n\r\nexport const templateDashboard = {\r\n namespaced: true,\r\n\r\n state: {\r\n dashboard: {},\r\n widgets: {},\r\n dashboards: [],\r\n },\r\n\r\n actions: {\r\n saveDashboardToState({ commit }, dashboard) {\r\n commit(\"SET_DASHBOARD\", dashboard);\r\n },\r\n\r\n removeWidgetFromState({ commit }, widgetId) {\r\n commit(\"REMOVE_WIDGET\", widgetId);\r\n },\r\n\r\n reset({ commit }) {\r\n commit(\"RESET_DASHBOARD\");\r\n },\r\n\r\n async getTemplateDashboard({ commit }, templateDashboardId) {\r\n await TemplateDashboardRepository.getDashboard(templateDashboardId)\r\n .then((d) => commit(\"SET_DASHBOARD\", d.data))\r\n .catch((e) => console.error(e));\r\n },\r\n\r\n async getTemplateDashboards({ commit }, commitToStore = true) {\r\n let result = await TemplateDashboardRepository.getDashboards()\r\n .then((d) => d.data)\r\n .catch((e) => {\r\n console.error(e);\r\n });\r\n if (result !== undefined && commitToStore)\r\n commit(\"SET_TEMPLATE_DASHBOARDS\", result);\r\n\r\n return result;\r\n },\r\n\r\n async getDashboardWidgets({ commit }, templateDashboardId) {\r\n let result = await TemplateDashboardRepository.getWidgets(\r\n templateDashboardId\r\n )\r\n .then((d) => d.data)\r\n .catch((e) => {\r\n console.error(e);\r\n });\r\n\r\n commit(\"SET_WIDGETS\", result ?? []);\r\n return result ?? [];\r\n },\r\n\r\n setWidgets({ commit }, widgets) {\r\n commit(\"SET_WIDGETS\", widgets);\r\n },\r\n\r\n addOrUpdateWidget({ commit }, widget) {\r\n commit(\"ADD_OR_UPDATE_WIDGET\", widget);\r\n },\r\n\r\n // Should return the templateDashboardId\r\n async createTemplateDashboard(_, payload) {\r\n var result = await TemplateDashboardRepository.create(payload)\r\n .then((d) => [true, d.data])\r\n .catch((d) => [false, d]);\r\n\r\n if (!result[0]) {\r\n console.error(result[1]);\r\n return undefined;\r\n }\r\n\r\n // result[1] should contain a string of the guid for Template dashboard ID\r\n return result[1];\r\n },\r\n\r\n async updateTemplateDashboard(_, { templateDashboardId, payload }) {\r\n return await TemplateDashboardRepository.update(\r\n templateDashboardId,\r\n payload\r\n )\r\n .then(() => true)\r\n .catch(() => false);\r\n },\r\n\r\n async saveTemplateDashboardWidgets({ getters }, payload) {\r\n // Get the current template dashboard id\r\n let tId = getters.templateDashboardId;\r\n if (tId === undefined) {\r\n console.error(\"No template dashboard ID was found in store\");\r\n return;\r\n }\r\n\r\n return await TemplateDashboardRepository.updateWidgets(tId, payload)\r\n .then(() => [true, \"Ok!\"])\r\n .catch((d) => [false, d]);\r\n },\r\n\r\n async deleteTemplateDashboard(_, templateDashboardId) {\r\n return await TemplateDashboardRepository.delete(templateDashboardId)\r\n .then(() => true)\r\n .catch((d) => {\r\n console.error(d);\r\n return false;\r\n });\r\n },\r\n },\r\n\r\n mutations: {\r\n REMOVE_WIDGET(state, id) {\r\n let widgets = state.widgets;\r\n if (widgets === undefined) return;\r\n\r\n let idx = widgets.findIndex((d) => d.templateWidgetId === id);\r\n if (idx !== -1) widgets.splice(idx, 1);\r\n\r\n // Index widgets\r\n let i = 0;\r\n for (var w of state.widgets) {\r\n w.i = i++;\r\n }\r\n },\r\n\r\n SET_DASHBOARD(state, dashboard) {\r\n state.dashboard = dashboard;\r\n },\r\n\r\n RESET_DASHBOARD(state) {\r\n state.dashboard = {};\r\n state.widgets = [];\r\n },\r\n\r\n SET_TEMPLATE_DASHBOARDS(state, val) {\r\n state.dashboards = val;\r\n },\r\n\r\n SET_WIDGETS(state, val) {\r\n state.widgets = val;\r\n },\r\n\r\n ADD_OR_UPDATE_WIDGET(state, val) {\r\n if (state.widgets?.length === undefined) state.widgets = [];\r\n\r\n let widgetIdx = state.widgets.findIndex(\r\n (d) => d.templateWidgetId === val.templateWidgetId\r\n );\r\n if (widgetIdx !== -1) {\r\n // Update the widget instead\r\n state.widgets[widgetIdx] = val;\r\n return;\r\n }\r\n\r\n state.widgets.push(val);\r\n\r\n // Index widgets\r\n let i = 0;\r\n for (var w of state.widgets) {\r\n w.i = i++;\r\n }\r\n },\r\n },\r\n\r\n getters: {\r\n templateDashboardId(state) {\r\n return state.dashboard?.templateDashboardId ?? undefined;\r\n },\r\n },\r\n};\r\n","import { RepositoryFactory } from \"../../api/RepositoryFactory\";\n\nimport i18n from \"@/plugins/i18n\";\n\nconst UserRepository = RepositoryFactory.get(\"users\");\nconst RoleRepository = RepositoryFactory.get(\"roles\");\n\nexport const users = {\n namespaced: true,\n state: {\n users: [],\n permissions: [],\n user: {},\n currentUser: {},\n userCompany: {},\n credentials: { email: \"\", password: \"\" },\n hasCompany: false,\n status: {\n loading: false,\n loggedIn: false,\n },\n },\n\n actions: {\n async get({ commit, dispatch, rootState }) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await UserRepository.get(user).then(\n (users) => {\n commit(\"GET_USER\", users.data);\n commit(\"LOADING\", false);\n },\n (res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n commit(\"LOADING\", false);\n }\n );\n\n commit(\"LOADING\", false);\n },\n\n async getById({ commit, dispatch, rootState }, userId) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await UserRepository.getById(user, userId)\n .then((users) => {\n commit(\"GET_USER\", users.data);\n commit(\"LOADING\", false);\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n commit(\"LOADING\", false);\n });\n commit(\"LOADING\", false);\n },\n\n async getAll({ dispatch, commit, rootState }) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await UserRepository.getAll(user).then(\n (users) => {\n commit(\"GET_USERS\", users.data);\n commit(\"LOADING\", false);\n },\n (res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n commit(\"LOADING\", false);\n }\n );\n commit(\"LOADING\", false);\n },\n\n async getUserCompany({ dispatch, commit, rootState }) {\n commit(\"LOADING\", true);\n var user = rootState.users.currentUser;\n\n await UserRepository.getCompany(user).then(\n (company) => {\n commit(\"GET_USER_COMPANY\", company.data);\n commit(\"LOADING\", false);\n dispatch(\"languages/setLanguage\", company.data.country, {\n root: true,\n });\n },\n (res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n commit(\"LOADING\", false);\n }\n );\n },\n\n setUserCompany({ dispatch, commit }, { company }) {\n commit(\"LOADING\", true);\n\n commit(\"GET_USER_COMPANY\", company);\n dispatch(\"languages/setLanguage\", company.country, {\n root: true,\n });\n\n commit(\"LOADING\", false);\n },\n\n async setUserByPublicDashboard({ commit }, dashboard) {\n commit(\"LOGIN_USER\", {\n token: dashboard.token,\n role: \"PublicDashboard\",\n });\n commit(\"GET_USER_COMPANY\", dashboard.dashboard.company);\n },\n\n async editUser({ dispatch, commit, rootState, state }, userPayload) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n\n await UserRepository.edit(user, userPayload.userId, userPayload)\n .then((user) => {\n commit(\"EDIT_USER\", user.data);\n commit(\"LOADING\", false);\n\n if (state.currentUser.userId === user.data.userId) {\n dispatch(\"login\", state.credentials);\n }\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"user.updateFailed\"), { root: true });\n commit(\"LOADING\", false);\n });\n },\n\n async login({ dispatch, commit }, { email, password }) {\n commit(\"SET_CREDENTIALS\", { email: email, password: password });\n\n commit(\"LOADING\", true);\n let success = false;\n await UserRepository.login(email, password)\n .then(async (user) => {\n commit(\"LOGIN_USER\", user.data);\n await dispatch(\"getUserCompany\");\n await dispatch(\"getUserPermissionsByCurrentUser\");\n success = true;\n commit(\"LOADING\", false);\n })\n .catch((res) => {\n if (!res.response) {\n throw new Error(i18n.t(\"common.errors.backendConnection\"));\n } else if (res.response.status == 409) {\n // The license is probably not valid\n throw new Error(res.response.data);\n }\n\n commit(\"LOGIN_FAILED\");\n commit(\"LOADING\", false);\n dispatch(\"alert/error\", i18n.t(\"user.signInFailed\"), { root: true });\n });\n\n return success;\n },\n\n async getUserPermissionsByCurrentUser({ commit, rootState }) {\n await RoleRepository.getUserPermissionsByUserId(\n rootState.users.currentUser\n ).then((d) => commit(\"SET_PERMISSIONS\", d.data));\n },\n\n async logout({ dispatch, commit }) {\n commit(\"LOGOUT_USER\");\n dispatch(\"companies/resetState\", null, { root: true });\n dispatch(\"tag/resetState\", null, { root: true });\n dispatch(\"applications/resetState\", null, { root: true });\n dispatch(\"tagData/resetState\", null, { root: true });\n dispatch(\"alarms/resetState\", null, { root: true });\n commit(\"LOADING\", false);\n },\n\n async updateRole(\n { dispatch, commit, rootState },\n { role: role, targetUserId: targetUserId }\n ) {\n commit(\"LOADING\", false);\n\n var user = rootState.users.currentUser;\n\n await UserRepository.updateRole(user, targetUserId, role)\n .then(() => {\n dispatch(\"companies/getCompanyUsers\", null, { root: true });\n })\n .catch(() => {\n dispatch(\"alert/error\", i18n.t(\"common.error\"), { root: true });\n });\n },\n\n async createUserAndCompany({ dispatch, commit, rootState }, payload) {\n commit(\"LOADING\", true);\n await UserRepository.createUserWithCompany(\n rootState.users.currentUser,\n payload\n )\n .then(() => {\n dispatch(\"alert/success\", i18n.t(\"common.created\"), {\n root: true,\n });\n })\n .catch((error) => {\n if (error.response.status === 409) {\n throw new Error(error.response.data);\n } else {\n dispatch(\"alert/error\", i18n.t(\"common.error\"), {\n root: true,\n });\n }\n });\n },\n\n async delete({ dispatch, commit, rootState }, userId) {\n commit(\"LOADING\", true);\n\n var user = rootState.users.currentUser;\n if (user.userId !== userId) {\n await UserRepository.delete(user, userId)\n .then(() => {\n dispatch(\"alert/success\", i18n.t(\"common.deleted\"), {\n root: true,\n });\n commit(\"LOADING\", false);\n })\n .catch((res) => {\n if (res.response.status === 401) {\n dispatch(\n \"users/login\",\n {\n email: rootState.users.credentials.email,\n password: rootState.users.credentials.password,\n },\n { root: true }\n );\n }\n\n dispatch(\"alert/error\", i18n.t(\"common.error\"), {\n root: true,\n });\n });\n }\n },\n\n async forgotPassword({ dispatch, commit }, email) {\n commit(\"LOADING\", true);\n await UserRepository.forgotPassword(email)\n .then(() => {\n commit(\"LOADING\", false);\n })\n .catch(() => {\n dispatch(\"alert/error\", i18n.t(\"common.error\"), {\n root: true,\n });\n });\n commit(\"LOADING\", false);\n },\n\n async forgotPasswordUpdate({ dispatch, commit }, { guid, password }) {\n commit(\"LOADING\", true);\n await UserRepository.forgotPasswordUpdate(guid, password)\n .then(() => {\n commit(\"LOADING\", false);\n })\n .catch(() => {\n dispatch(\"alert/error\", i18n.t(\"common.error\"), {\n root: true,\n });\n });\n commit(\"LOADING\", false);\n },\n },\n\n mutations: {\n LOADING(state, status) {\n state.status.loading = status;\n },\n\n GET_USER(state, user) {\n state.user = user;\n },\n\n GET_USERS(state, users) {\n state.users = users;\n },\n\n GET_USER_COMPANY(state, company) {\n state.userCompany = company;\n state.hasCompany = true;\n },\n\n SET_CREDENTIALS(state, credentials) {\n state.credentials = credentials;\n },\n\n EDIT_USER(state, user) {\n state.user = user;\n },\n\n LOGIN_USER(state, user) {\n state.currentUser = user;\n state.status.loggedIn = true;\n },\n\n LOGIN_FAILED(state) {\n state.status.loggedIn = false;\n },\n\n SET_PERMISSIONS(state, val) {\n state.permissions = val;\n },\n\n // eslint-disable-next-line\n LOGOUT_USER(state) {\n state.users = [];\n state.user = [];\n state.currentUser = {};\n state.userCompany = {};\n state.credentials = { email: \"\", password: \"\" };\n state.hasCompany = false;\n state.permissions = [];\n state.status = {\n loading: false,\n loggedIn: false,\n };\n },\n },\n\n getters: {\n user(state) {\n return state.currentUser;\n },\n\n companyId(state) {\n return state.userCompany.companyId;\n },\n\n companyName(state) {\n return state.userCompany.name;\n },\n\n token(state) {\n return state.currentUser?.token ?? undefined;\n },\n\n permissions(state) {\n return state.permissions;\n },\n },\n};\n","import Vue from \"vue\";\nimport Vuex from \"vuex\";\nimport { accessTokens } from \"./modules/accessToken\";\nimport { alarms } from \"./modules/alarm\";\nimport { alert } from \"./modules/alert\";\nimport { applications } from \"./modules/application\";\nimport { camOnline } from \"./modules/camOnline\";\nimport { companies } from \"./modules/company\";\nimport { configuration } from \"./modules/configuration\";\nimport { dashboards } from \"./modules/dashboard\";\nimport { downlinks } from \"./modules/downlinks\";\nimport { event } from \"./modules/event\";\nimport { featureAccess } from \"./modules/featureAccess\";\nimport { gateways } from \"./modules/gateway\";\nimport { languages } from \"./modules/language\";\nimport { logs } from \"./modules/log\";\nimport { modbus } from \"./modules/modbus\";\nimport { modules } from \"./modules/modules\";\nimport { mqtt } from \"./modules/mqtt\";\nimport { notifications } from \"./modules/notification\";\nimport { opc } from \"./modules/opc\";\nimport { reports } from \"./modules/report\";\nimport { roles } from \"./modules/roles\";\nimport { scripts } from \"./modules/scripts\";\nimport { settings } from \"./modules/settings\";\nimport { signalTests } from \"./modules/signalTest\";\nimport { slots } from \"./modules/slots\";\nimport { tag } from \"./modules/tag\";\nimport { tagData } from \"./modules/tagdata\";\nimport { templateDashboard } from \"./modules/templateDashboard\";\nimport { users } from \"./modules/user\";\n\nimport createPersistedState from \"vuex-persistedstate\";\n\nVue.use(Vuex);\n\nexport default new Vuex.Store({\n modules: {\n accessTokens: accessTokens,\n alarms: alarms,\n alert: alert,\n applications: applications,\n camOnline: camOnline,\n companies: companies,\n configuration: configuration,\n dashboards: dashboards,\n downlinks: downlinks,\n event: event,\n featureAccess: featureAccess,\n gateways: gateways,\n languages: languages,\n logs: logs,\n modbus: modbus,\n modules: modules,\n mqtt: mqtt,\n notifications: notifications,\n opc: opc,\n reports: reports,\n roles: roles,\n scripts: scripts,\n settings: settings,\n signalTests: signalTests,\n slots: slots,\n tag: tag,\n tagData: tagData,\n templateDashboard: templateDashboard,\n users: users,\n },\n plugins: [createPersistedState()],\n});\n","import Repository from \"../Repository\";\nimport { apiConfig, getAuthHeader } from \"../../_helpers/apiHelper\";\n\nconst resource = \"/license\";\n\nexport default {\n getLicenses(user) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(resource, config);\n },\n\n getTerms(user) {\n var config = {};\n if (user !== undefined || user !== null) {\n config[\"headers\"] = getAuthHeader(user);\n }\n\n return Repository.get(`${resource}/terms`, config);\n },\n\n uploadLicense(user, license) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.post(`${resource}/upload`, license, config);\n },\n\n activate(user, licenseId) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.put(`${resource}/activate/${licenseId}`, null, config);\n },\n\n removeLicense(user, licenseId) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.delete(`${resource}/remove/${licenseId}`, config);\n },\n\n getCompanyLimitations(user) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(`${resource}/companies`, config);\n },\n\n createOrUpdateCompanyLimitation(\n user,\n companyId,\n maxGateways = 0,\n maxNodes = 0\n ) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.post(\n `${resource}/company/${companyId}/${maxGateways}/${maxNodes}`,\n null,\n config\n );\n },\n\n getLicenseServerMeta(user) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(`${resource}/meta`, config);\n },\n\n canCreate(user, companyId) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(`${resource}/can-create/${companyId}`, config);\n },\n\n nodesLeftForCompany(user, companyId) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(`${resource}/nodes-left/${companyId}`, config);\n },\n\n getUserAcceptedTos(email) {\n return Repository.get(`${resource}/tos/${email}`, apiConfig());\n },\n\n acceptTos(email) {\n return Repository.put(`${resource}/tos/${email}`, null, apiConfig());\n },\n};\n","import Repository from \"../Repository\";\nimport { apiConfig, getAuthHeader } from \"../../_helpers/apiHelper\";\nimport metricHelper from \"../../_helpers/metricHelper\";\n\nconst resource = \"/tag\";\nconst tagDataResource = \"/tagdata\";\n\nexport default {\n get(user) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(`${resource}/tagdata`, config);\n },\n\n getKeys(user, company) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(`${resource}/tagdata/keys/${company}`, config);\n },\n\n getTrendDataForTag(tagId, tagKey, metrics) {\n return Repository.get(\n `${resource}/${tagId}/trend/${tagKey}${metrics}`,\n apiConfig()\n );\n },\n\n getCurrentTagdata(tagId, tagKey) {\n return Repository.get(`${resource}/latest/${tagId}/${tagKey}`, apiConfig());\n },\n\n getCurrentForTags(tagIds, tagKey) {\n let queries = {\n deveuis: tagIds,\n key: tagKey,\n };\n\n return Repository.get(\n `${tagDataResource}/currents${metricHelper.getMetricsUrlParams(queries)}`,\n apiConfig()\n );\n },\n\n getCurrentsMultiKey(tagId, tagKeys) {\n return Repository.get(\n `${tagDataResource}/currents/${tagId}${metricHelper.getMetricsUrlParams({\n keys: tagKeys,\n })}`,\n apiConfig()\n );\n },\n\n getCurrentsForDevice(user, deveui) {\n var config = {\n headers: getAuthHeader(user),\n };\n\n return Repository.get(`${resource}/${deveui}/currents`, config);\n },\n\n // tagsWithKeys expected structure:\n // [\n // {deveui: \"example-deveui\", key: \"example-key\"},\n // {deveui: \"example-deveui-2\", key: \"example-key-2\"},\n // ]\n //\n // We expect the from and to dates to be URI encoded already\n getTimeSeriesTagData(tagsWithKeys, from, to) {\n return Repository.post(\n `${tagDataResource}/timeseries/${from}/${to}`,\n tagsWithKeys,\n apiConfig()\n );\n },\n\n getTimeSeriesTagDataSingle(deveui, key, from, to) {\n return Repository.get(\n `${tagDataResource}/timeseries/${deveui}/${key}/${from}/${to}`,\n apiConfig()\n );\n },\n\n getCurrentsMultiTagAndKey(deveuisAndKeys) {\n return Repository.post(\n `${tagDataResource}/currents`,\n deveuisAndKeys,\n apiConfig()\n );\n },\n\n getTagdataWithLimit(deveuisAndKeys, limit) {\n return Repository.post(\n `${tagDataResource}/limit/${limit}`,\n deveuisAndKeys,\n apiConfig()\n );\n },\n};\n","export default {\n getMetricsUrlParams(metrics) {\n var params = [];\n\n for (var k in metrics) {\n if (Array.isArray(metrics[k])) {\n params.push(`${k}=${metrics[k].map((v) => encodeURIComponent(v)).join(\",\")}`);\n } else {\n params.push(`${k}=${encodeURIComponent(metrics[k])}`);\n }\n }\n\n return \"?\" + params.join(\"&\");\n }\n};\n","import Repository from \"../Repository\";\r\nimport { getAuthHeader } from \"../../_helpers/apiHelper\";\r\n\r\nconst resource = \"/integration\";\r\nconst tokenResource = \"/integration/tokens\";\r\n\r\nexport default {\r\n getAccessTokens(user, companyId) {\r\n var config = {\r\n headers: getAuthHeader(user),\r\n };\r\n\r\n return Repository.get(`${tokenResource}/${companyId}`, config);\r\n },\r\n\r\n deleteToken(user, tokenId) {\r\n var config = {\r\n headers: getAuthHeader(user),\r\n };\r\n\r\n return Repository.delete(`${tokenResource}/${tokenId}`, config);\r\n },\r\n\r\n createToken(user, companyId, payload) {\r\n var config = {\r\n headers: getAuthHeader(user),\r\n };\r\n\r\n return Repository.post(`${tokenResource}/${companyId}`, payload, config);\r\n },\r\n\r\n seedNordpool(user, year, month, day) {\r\n var config = {\r\n headers: getAuthHeader(user),\r\n };\r\n\r\n return Repository.post(\r\n `${resource}/nordpool/${year}/${month}/${day}`,\r\n null,\r\n config\r\n );\r\n },\r\n};\r\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"tree-container\"},[_c('v-row',{staticStyle:{\"max-width\":\"100%\"}},[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"9\",\"xs\":\"9\"}},[_c('sl-vue-tree',{ref:\"tree\",on:{\"dragend\":() => {},\"nodecontextmenu\":_vm.onNodeRightClicked,\"input\":_vm.updateIndexes},scopedSlots:_vm._u([{key:\"title\",fn:function({ node }){return [_c('span',{staticClass:\"item-icon\"},[_c('v-icon',{attrs:{\"color\":node.isLeaf\n ? 'green'\n : node.data.color\n ? node.data.color\n : 'primary'}},[_vm._v(_vm._s(node.data.icon))])],1),(node.isLeaf)?_c('span',{attrs:{\"href\":'dashboard/' + node.data.dashboardId},on:{\"click\":function($event){return _vm.goToDashboard(node.data.dashboardId)}}},[_vm._v(\" \"+_vm._s(node.title))]):_c('span',[_vm._v(\" \"+_vm._s(node.title))])]}},{key:\"toggle\",fn:function({ node }){return [(!node.isLeaf)?_c('span',[(node.isExpanded)?_c('v-icon',[_vm._v(\"mdi-chevron-down\")]):_vm._e(),(!node.isExpanded)?_c('v-icon',[_vm._v(\"mdi-chevron-right\")]):_vm._e()],1):_vm._e()]}}]),model:{value:(_vm.categories),callback:function ($$v) {_vm.categories=$$v},expression:\"categories\"}})],1),_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"3\",\"xs\":\"3\"}},[(_vm.permitted('Dashboard.Update'))?_c('v-switch',{staticClass:\"mr-2 ml-2\",attrs:{\"inset\":\"\",\"label\":_vm.$t('common.edit')},model:{value:(_vm.editMode),callback:function ($$v) {_vm.editMode=$$v},expression:\"editMode\"}}):_vm._e()],1)],1),(_vm.permitted('Dashboard.Update'))?_c('v-menu',{attrs:{\"position-x\":_vm.x,\"position-y\":_vm.y,\"absolute\":\"\",\"offset-y\":\"\"},model:{value:(_vm.showMenu),callback:function ($$v) {_vm.showMenu=$$v},expression:\"showMenu\"}},[_c('v-list',_vm._l((_vm.displayActions),function(item,index){return _c('v-list-item',{key:index,attrs:{\"link\":\"\"},on:{\"click\":item.action}},[_c('v-list-item-title',[_vm._v(_vm._s(item.title))])],1)}),1)],1):_vm._e(),_c('v-dialog',{attrs:{\"max-width\":\"600\",\"persistent\":\"\"},model:{value:(_vm.showCreateDialog),callback:function ($$v) {_vm.showCreateDialog=$$v},expression:\"showCreateDialog\"}},[_c('v-card',[_c('v-card-title',[_c('span',[_vm._v(_vm._s(_vm.$t(\"dashboard.categories.create\")))])]),_c('v-form',{attrs:{\"lazy-validation\":true},on:{\"submit\":function($event){$event.preventDefault();return _vm.handleCreate.apply(null, arguments)}},model:{value:(_vm.valid),callback:function ($$v) {_vm.valid=$$v},expression:\"valid\"}},[_c('v-card-text',[_c('v-text-field',{attrs:{\"label\":_vm.$t('dashboard.categories.title')},model:{value:(_vm.payload.title),callback:function ($$v) {_vm.$set(_vm.payload, \"title\", $$v)},expression:\"payload.title\"}})],1),_c('v-card-text',[_c('v-color-picker',{attrs:{\"dot-size\":\"25\",\"hide-canvas\":\"\",\"hide-mode-switch\":\"\",\"show-swatches\":\"\",\"mode\":\"hexa\",\"swatches-max-height\":\"200\"},model:{value:(_vm.color),callback:function ($$v) {_vm.color=$$v},expression:\"color\"}})],1),_c('v-card-text',[_c('IconSelector',{attrs:{\"icon\":_vm.payload.icon,\"open\":true,\"color\":_vm.payload.color},on:{\"update\":(v) => {\n _vm.payload.icon = v;\n }}})],1),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{attrs:{\"color\":\"primary lighten-1\",\"text\":\"\",\"x-large\":\"\"},on:{\"click\":function($event){_vm.showCreateDialog = false}}},[_vm._v(_vm._s(_vm.$t(\"common.close\"))+\" \")]),_c('v-btn',{attrs:{\"color\":\"primary\",\"text\":\"\",\"type\":\"submit\",\"x-large\":\"\"}},[_vm._v(_vm._s(_vm.$t(\"common.save\"))+\" \")])],1)],1)],1)],1),_c('v-dialog',{attrs:{\"max-width\":\"450\"},model:{value:(_vm.showRemoveDialog),callback:function ($$v) {_vm.showRemoveDialog=$$v},expression:\"showRemoveDialog\"}},[_c('v-card',[_c('v-card-title',{staticClass:\"headline\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"common.verify\"))+\" \")]),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{attrs:{\"color\":\"primary lighten-1\",\"text\":\"\"},on:{\"click\":function($event){_vm.showRemoveDialog = false}}},[_vm._v(_vm._s(_vm.$t(\"common.close\"))+\" \")]),_c('v-btn',{attrs:{\"color\":\"primary\",\"text\":\"\"},on:{\"click\":_vm.deleteConfirmed}},[_vm._v(_vm._s(_vm.$t(\"common.yes\"))+\" \")])],1)],1)],1),_c('v-dialog',{attrs:{\"max-width\":\"450\"},model:{value:(_vm.showDashboardCreateOrCopy),callback:function ($$v) {_vm.showDashboardCreateOrCopy=$$v},expression:\"showDashboardCreateOrCopy\"}},[_c('v-card',[_c('v-card-title',[_c('span',[_vm._v(_vm._s(_vm.$t(\"dashboard.createTitleClean\")))])]),(!_vm.typeSelected && !_vm.copy)?_c('v-card-text',[_c('div',{staticClass:\"d-flex justify-space-around\"},[_c('div',{staticClass:\"d-flex flex-column justify-center rounded border text-center pa-4\",staticStyle:{\"cursor\":\"pointer\"},on:{\"click\":function($event){_vm.typeSelected = true}}},[_c('h4',[_vm._v(_vm._s(_vm.$t(\"dashboard.dashboardType.1\")))]),_c('v-icon',{attrs:{\"color\":\"primary\"}},[_vm._v(\"mdi-view-dashboard-outline\")])],1),(_vm.canAccessFeature(_vm.FEATURES.MAP_DASHBOARD))?_c('div',{staticClass:\"d-flex flex-column justify-center rounded border text-center pa-4\",staticStyle:{\"cursor\":\"pointer\"},on:{\"click\":_vm.navigateToDbMapCreate}},[_c('h4',[_vm._v(_vm._s(_vm.$t(\"dashboard.dashboardType.2\")))]),_c('v-icon',{attrs:{\"color\":\"primary\"}},[_vm._v(\"mdi-map\")])],1):_vm._e()])]):_c('v-form',{attrs:{\"lazy-validation\":true},on:{\"submit\":function($event){$event.preventDefault();return _vm.handleDashboardCopyOrCreate.apply(null, arguments)}},model:{value:(_vm.valid),callback:function ($$v) {_vm.valid=$$v},expression:\"valid\"}},[_c('v-card-text',[_c('v-text-field',{attrs:{\"label\":_vm.$t('dashboard.fields.name')},model:{value:(_vm.dashboardName),callback:function ($$v) {_vm.dashboardName=$$v},expression:\"dashboardName\"}})],1),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{attrs:{\"color\":\"primary lighten-1\",\"text\":\"\",\"x-large\":\"\"},on:{\"click\":function($event){_vm.showDashboardCreateOrCopy = false}}},[_vm._v(_vm._s(_vm.$t(\"common.close\"))+\" \")]),_c('v-btn',{attrs:{\"color\":\"primary\",\"text\":\"\",\"type\":\"submit\",\"x-large\":\"\"}},[_vm._v(_vm._s(_vm.$t(\"common.save\"))+\" \")])],1)],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('v-container',{staticClass:\"icon-selector\",staticStyle:{\"max-height\":\"200px\",\"overflow-y\":\"scroll\"}},[_c('p',{staticStyle:{\"width\":\"100%\",\"cursor\":\"pointer\",\"margin\":\"0\"},on:{\"click\":_vm.toggleDisplay}},[_c('v-icon',{attrs:{\"color\":_vm.color}},[_vm._v(_vm._s(_vm.iconValue))]),_vm._v(\" \"+_vm._s(_vm.$t(\"common.iconSelector.selectIcon\"))+\" \")],1),(_vm.display)?_c('v-container',{staticStyle:{\"max-width\":\"600px\",\"height\":\"201px\"}},[_c('v-text-field',{attrs:{\"color\":\"white\",\"dark\":\"\",\"placeholder\":_vm.$t('common.iconSelector.searchPlaceholder'),\"append-outer-icon\":\"mdi-search\"},model:{value:(_vm.searchTerm),callback:function ($$v) {_vm.searchTerm=$$v},expression:\"searchTerm\"}}),_vm._l((_vm.icons),function(v,i){return _c('v-icon',{key:i,attrs:{\"color\":_vm.color},on:{\"click\":function($event){return _vm.setValue(v)}}},[_vm._v(_vm._s(v))])})],2):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n \r\n \r\n {{ iconValue }}\r\n {{ $t(\"common.iconSelector.selectIcon\") }}\r\n \r\n \r\n \r\n {{ v }}\r\n \r\n \r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./IconSelector.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./IconSelector.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./IconSelector.vue?vue&type=template&id=1e496a69\"\nimport script from \"./IconSelector.vue?vue&type=script&lang=js\"\nexport * from \"./IconSelector.vue?vue&type=script&lang=js\"\nimport style0 from \"./IconSelector.vue?vue&type=style&index=0&id=1e496a69&prod&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\r\n \r\n \r\n \r\n {}\"\r\n @nodecontextmenu=\"onNodeRightClicked\"\r\n ref=\"tree\"\r\n @input=\"updateIndexes\"\r\n >\r\n \r\n \r\n {{ node.data.icon }}\r\n \r\n\r\n \r\n {{ node.title }}\r\n {{ node.title }}\r\n \r\n\r\n \r\n \r\n mdi-chevron-down\r\n mdi-chevron-right\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n {{ item.title }}\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n {{ $t(\"dashboard.categories.create\") }}\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n {\r\n payload.icon = v;\r\n }\r\n \"\r\n />\r\n \r\n\r\n \r\n \r\n {{ $t(\"common.close\") }}\r\n \r\n {{ $t(\"common.save\") }}\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n {{ $t(\"common.verify\") }}\r\n \r\n\r\n \r\n \r\n\r\n {{ $t(\"common.close\") }}\r\n \r\n\r\n {{ $t(\"common.yes\") }}\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n {{ $t(\"dashboard.createTitleClean\") }}\r\n \r\n \r\n \r\n \r\n {{ $t(\"dashboard.dashboardType.1\") }}\r\n mdi-view-dashboard-outline\r\n \r\n\r\n \r\n {{ $t(\"dashboard.dashboardType.2\") }}\r\n mdi-map\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n {{ $t(\"common.close\") }}\r\n \r\n {{ $t(\"common.save\") }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DashboardCategoryViewer.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DashboardCategoryViewer.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./DashboardCategoryViewer.vue?vue&type=template&id=31ba07ea\"\nimport script from \"./DashboardCategoryViewer.vue?vue&type=script&lang=js\"\nexport * from \"./DashboardCategoryViewer.vue?vue&type=script&lang=js\"\nimport style0 from \"./DashboardCategoryViewer.vue?vue&type=style&index=0&id=31ba07ea&prod&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Search.vue?vue&type=style&index=0&id=46fcf96f&prod&lang=scss&scoped=true\"","export const Roles = {\n Admin: \"Admin\",\n User: \"User\",\n Guest: \"Guest\",\n CompanyAdmin: \"CompanyAdmin\",\n SuperAdmin: \"SuperAdmin\",\n PublicDashboard: \"PublicDashboard\",\n\n AdminOrUser: [\"Admin\", \"CompanyAdmin\", \"SuperAdmin\"],\n CompanyOrUser: [\"Admin\", \"CompanyAdmin\", \"User\", \"SuperAdmin\"],\n AdminOrCompanyAdmin: [\"Admin\", \"CompanyAdmin\", \"SuperAdmin\"],\n};\n","import Vue from \"vue\";\r\nimport VueI18n from \"vue-i18n\";\r\nimport messages from \"@/languages\";\r\n\r\nVue.use(VueI18n);\r\n\r\nexport default new VueI18n({\r\n locale: \"en\",\r\n fallbackLocale: \"en\",\r\n messages,\r\n});\r\n","import axios from \"axios\";\nimport store from \"../stores/store\";\n\nlet axiosConnection = axios.create();\n\naxiosConnection.interceptors.request.use((config) => {\n config.baseURL = `${store.state.configuration.SO_API_BASE_URL}/api`;\n return config;\n});\n\nexport default axiosConnection;\n","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavBar.vue?vue&type=style&index=1&id=269e3eaa&prod&scoped=true&lang=css\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DashboardCategoryViewer.vue?vue&type=style&index=0&id=31ba07ea&prod&lang=css\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavBar.vue?vue&type=style&index=0&id=269e3eaa&prod&lang=css\"","import Repository from \"../Repository\";\r\nimport { company, apiConfig } from \"../../_helpers/apiHelper\";\r\n\r\nconst resource = \"/modbus\";\r\n\r\nexport default {\r\n getOccupiedRegisters(masterId) {\r\n return Repository.get(\r\n `${resource}/occupied-registers/${masterId}`,\r\n apiConfig()\r\n );\r\n },\r\n\r\n getMasters() {\r\n return Repository.get(`${resource}/masters/${company()}`, apiConfig());\r\n },\r\n\r\n createMaster(payload) {\r\n return Repository.post(\r\n `${resource}/master/${company()}`,\r\n payload,\r\n apiConfig()\r\n );\r\n },\r\n\r\n updateMaster(masterId, payload) {\r\n return Repository.put(\r\n `${resource}/master/${masterId}`,\r\n payload,\r\n apiConfig()\r\n );\r\n },\r\n\r\n removeMaster(masterId) {\r\n return Repository.delete(`${resource}/master/${masterId}`, apiConfig());\r\n },\r\n\r\n createRegister(masterId, payload) {\r\n return Repository.post(\r\n `${resource}/register/${masterId}`,\r\n payload,\r\n apiConfig()\r\n );\r\n },\r\n\r\n removeRegister(registerId) {\r\n return Repository.delete(`${resource}/register/${registerId}`, apiConfig());\r\n },\r\n\r\n poll(registers) {\r\n return Repository.post(`${resource}/poll`, registers, apiConfig());\r\n },\r\n\r\n getAllRegisters(deveui) {\r\n return Repository.get(`${resource}/registers/${deveui}`, apiConfig())\r\n .then((d) => d.data)\r\n .catch(() => []);\r\n },\r\n};\r\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./IconSelector.vue?vue&type=style&index=0&id=1e496a69&prod&lang=css\""],"sourceRoot":""}
{{ item.description }}
\r\n {{ iconValue }}\r\n {{ $t(\"common.iconSelector.selectIcon\") }}\r\n