{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/components/SubTile.vue?2b04","webpack:///./src/components/Tile.vue?9a69","webpack:///./src/App.vue?c650","webpack:///./src/components/TileIcon.vue?f7c5","webpack:///./src/components/Errors.vue?fdd4","webpack:///./src/components/Welcome.vue?ef3a","webpack:///./src/enums/configErrorId.ts","webpack:///./src/App.vue?362e","webpack:///./src/components/Errors.vue?c254","webpack:///./src/helpers/ellipsisUnnecessaryParams.ts","webpack:///./src/helpers/extractFieldValue.ts","webpack:///./src/helpers/guessExpectedFieldName.ts","webpack:///./src/helpers/jsonSyntaxColor.ts","webpack:///./src/helpers/splitList.ts","webpack:///./src/helpers/formatConfigExtract.ts","webpack:///./src/helpers/getTileDoc.ts","webpack:///./src/helpers/parsedExpectedValue.ts","webpack:///./src/helpers/guessExpectedValue.ts","webpack:///./src/helpers/hasConfigVerifyErrors.ts","webpack:///./src/enums/tileStatus.ts","webpack:///./src/constants/displayableSubtileStatus.ts","webpack:///./src/enums/route.ts","webpack:///./src/classes/task.ts","webpack:///./src/enums/taskInterval.ts","webpack:///./src/enums/taskType.ts","webpack:///./src/enums/theme.ts","webpack:///./src/helpers/getQueryParamValue.ts","webpack:///./src/helpers/getSubTilePreviousOrStatus.ts","webpack:///./src/helpers/mostImportantStatus.ts","webpack:///./src/store.ts","webpack:///./src/components/Errors.vue","webpack:///./src/enums/tileType.ts","webpack:///./src/components/Errors.vue?3fc9","webpack:///./src/components/Errors.vue?f590","webpack:///./src/components/Tile.vue?471d","webpack:///./src/enums/tileValueUnit.ts","webpack:///./src/classes/monitororTile.ts","webpack:///./src/components/SubTile.vue?3c66","webpack:///./src/components/TileIcon.vue?691b","webpack:///./src/components/TileIcon.vue","webpack:///./src/components/TileIcon.vue?07f4","webpack:///./src/components/TileIcon.vue?91d8","webpack:///./src/components/SubTile.vue","webpack:///./src/components/SubTile.vue?70e1","webpack:///./src/components/SubTile.vue?1a8d","webpack:///./src/components/Tile.vue","webpack:///./src/components/Tile.vue?5e4e","webpack:///./src/components/Tile.vue?9a3d","webpack:///./src/components/Welcome.vue?ae19","webpack:///./src/components/Welcome.vue","webpack:///./src/components/Welcome.vue?8d51","webpack:///./src/components/Welcome.vue?6fac","webpack:///./src/App.vue","webpack:///./src/App.vue?0ab4","webpack:///./src/App.vue?bff9","webpack:///./src/main.ts"],"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","exports","module","l","m","c","d","name","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","p","jsonpArray","window","oldJsonpFunction","slice","ConfigErrorId","_vm","this","_h","$createElement","_c","_self","class","classes","style","attrs","on","resetShowCursorTimeout","staticClass","_l","tileConfig","stateKey","appLoadingClasses","staticStyle","_e","staticRenderFns","isOnline","_v","_s","errors","undefined","configParam","isUsingDefaultConfig","isCoreDown","lastRefreshDate","hasConfigVerifyErrors","error","apiBaseUrl","id","ConfigNotFound","UnknownNamedConfig","splitList","expected","namedConfig","index","FieldTypeMismatch","fieldName","domProps","formatConfigExtract","_m","InvalidEscapedCharacter","configExtractHighlight","InvalidFieldValue","getTileDocUrl","parsedExtractFieldValue","configExtract","MissingRequiredField","UnableToParseConfig","message","UnknownField","guessExpectedFieldName","UnknownTileType","guessExpectedValue","UnauthorizedSubtileType","ellipsisUnnecessaryParams","UnsupportedVersion","UnexpectedError","jsonString","cleanedJsonString","replace","extractFieldValue","JSON","stringify","parse","e","expectedValues","bestMatch","target","jsonSyntaxColor","coloredJson","list","split","map","item","trim","sort","configError","highlight","guessedFieldName","err","sanitizedConfigExtract","match","charCodeAt","formattedConfigExtract","html","patternPrefix","formattedConfigExtractHighlight","startsWith","isHighlightMultiline","includes","multilinePrefix","multilineSuffix","pattern","join","find","RegExp","matches","matchRegexPrefix","markClassAttr","tileType","url","toLowerCase","fieldValue","currentValue","CONFIG_NON_VERIFY_ERRORS","CannotBeFetched","filter","TileStatus","DISPLAYABLE_SUBTILE_STATUS","Warning","Failed","Queued","Running","Canceled","ActionRequired","Route","type","executor","interval","initialDelay","retryOnFailInterval","onFailedCallback","noop","running","done","dead","failedAttemptsCount","internalTime","now","isDead","isRunning","TaskInterval","TaskType","Theme","getQueryParamValue","queryParamName","defaultValue","queryParams","location","search","substr","valueQueryParam","queryParam","test","indexOf","getSubTilePreviousOrStatus","subTileState","Unknown","subTileStatus","status","build","previousStatus","ORDERED_TILE_STATUS","Success","mostImportantStatus","status1","status2","use","API_BASE_PATH","DEFAULT_CONFIG_NAME","INFO_URL","CONFIGS_URL","QUERY_PARAM_KEYS","API_BASE_URL","CONFIG","THEME","store","state","appVersion","configVersion","columns","zoom","tiles","tilesState","tasks","online","Date","configList","getters","defaultApiBaseUrl","origin","pathname","infoUrl","configProxyUrl","proxyfiedConfigUrl","urlEncodedConfigParam","encodeURIComponent","currentRoute","route","queryHash","hash","values","theme","Default","queryTheme","toUpperCase","tileStateKeys","forEach","tile","subTile","taskIds","task","loadedTilesCount","keys","loadableTilesCount","loadableTilesStateKeys","addLoadableTileStateKey","loadingProgress","hasUnknownDefaultConfigError","isDefaultConfig","isUnknownNamedConfigError","isNewUser","hasNamedConfig","shouldShowWelcomePage","welcomePageRoutes","Welcome","ChooseConfiguration","isOnWelcomePageRoute","shouldInit","isOnChooseConfigurationPageRoute","mutations","setAppVersion","payload","setConfig","version","setConfigList","setErrors","setTileState","tileStateKey","tileState","set","setOnline","setTasks","addTask","setLastRefreshDate","setNow","actions","autoUpdate","commit","a","then","response","info","reload","fetchConfigList","configMetadata","uiUrl","configMetadataA","configMetadataB","localeCompare","fetchConfiguration","dispatch","hydrateTile","groupTile","md5","hashStr","configBag","RefreshTile","kill","config","createRefreshTileTask","Second","Math","random","initialMaxDelay","refreshTile","Promise","resolve","refreshGroup","groupSubTilesState","subTileStateKey","groupStatus","reduce","worstSubTileStatus","groupNonDisplayedSubTiles","groupMessage","groupState","updateNetworkState","navigator","onLine","taskOptions","runTasks","nowTime","shouldRunTask","isDone","time","taskToRun","all","run","updateTasks","previousValue","hasChanged","prepareNextRun","taskList","killAllTasks","init","Root","Minute","configCannotBeFetch","Store","nextTick","Array","from","document","querySelectorAll","errorConfigExtract","pre","parentNode","mark","querySelector","scrollTop","offsetTop","$store","hasErrors","format","TileType","component","isEmpty","mergeRequestLabelPrefix","label","branch","buildId","displayedValue","author","avatarUrl","finishedSince","isQueued","progressTime","TileValueUnit","toString","mergeRequest","mergeRequestPrefix","GitHubPullRequest","startedAt","finishedAt","differenceInSeconds","estimatedDuration","duration","progress","totalSeconds","abs","round","overtimePrefix","date","addSeconds","dateFormat","min","transform","formatDistance","isOvertime","Group","HttpStatus","HttpRaw","HttpFormatted","Ping","Port","PingdomCheck","PingdomTransactionCheck","GitHubChecks","GitHubCount","GitLabPipeline","GitLabMergeRequest","GitLabIssues","Travis","Jenkins","AzureDevOpsBuild","AzureDevOpsRelease","isSucceeded","isFailed","isWarning","components","MonitororTileIcon","isGroup","styles","columnSpan","rowSpan","Empty","displayedSubTiles","Raw","unit","UNIT_DISPLAY","Millisecond","Ratio","Number","parseFloat","toFixed","MonitororSubTile","currentStep","appPort","$event","shouldHaveScroll","setTimeout","isOnWelcomeNextStepRoute","protocolPort","protocol","port","shouldShowCursor","shouldDisableTransitions","isReady","clearTimeout","shouldShowCursorTimeout","SHOW_CURSOR_DELAY","shouldDisableTransitionsTimeout","addEventListener","dispatchUpdateNetworkState","onResize","taskRunnerInterval","setInterval","removeEventListener","clearInterval","tilesCount","accumulator","ceil","MonitororErrors","MonitororTile","MonitororWelcome","productionTip","render","h","$mount"],"mappings":"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","file":"js/app.0242029d.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 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// 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\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 \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 mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SubTile.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SubTile.vue?vue&type=style&index=0&lang=scss&\"","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Tile.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Tile.vue?vue&type=style&index=0&lang=scss&\"","import mod from \"-!../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=style&index=0&lang=scss&\"","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TileIcon.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TileIcon.vue?vue&type=style&index=0&lang=scss&\"","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Errors.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Errors.vue?vue&type=style&index=0&lang=scss&\"","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Welcome.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Welcome.vue?vue&type=style&index=0&lang=scss&\"","export enum ConfigErrorId {\n CannotBeFetched = 'ERROR_CONFIG_CANNOT_BE_FETCHED',\n ConfigNotFound = 'ERROR_CONFIG_NOT_FOUND',\n ConfigVersionTooOld = 'ERROR_FIELD_TYPE_MISMATCH',\n FieldTypeMismatch = 'ERROR_FIELD_TYPE_MISMATCH',\n InvalidEscapedCharacter = 'ERROR_INVALID_ESCAPED_CHARACTER',\n InvalidFieldValue = 'ERROR_INVALID_FIELD_VALUE',\n MissingPathOrUrl = 'ERROR_MISSING_PATH_OR_URL',\n MissingRequiredField = 'ERROR_MISSING_REQUIRED_FIELD',\n UnauthorizedField = 'ERROR_UNAUTHORIZED_FIELD',\n UnauthorizedSubtileType = 'ERROR_UNAUTHORIZED_SUBTILE_TYPE',\n UnableToHydrate = 'ERROR_UNABLE_TO_HYDRATE',\n UnableToParseConfig = 'ERROR_UNABLE_TO_PARSE_CONFIG',\n UnexpectedError = 'ERROR_UNEXPECTED',\n UnknownField = 'ERROR_UNKNOWN_FIELD',\n UnknownNamedConfig = 'ERROR_UNKNOWN_NAMED_CONFIG',\n UnknownTileType = 'ERROR_UNKNOWN_TILE_TYPE',\n UnknownVariant = 'ERROR_UNKNOWN_VARIANT',\n UnsupportedVersion = 'ERROR_UNSUPPORTED_VERSION',\n}\n\nexport default ConfigErrorId\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:_vm.classes,style:(_vm.cssProperties),attrs:{\"id\":\"app\"},on:{\"mousemove\":_vm.resetShowCursorTimeout}},[_c('div',{staticClass:\"c-app--tiles-container\"},_vm._l((_vm.tiles),function(tileConfig){return _c('monitoror-tile',{key:tileConfig.stateKey,attrs:{\"config\":tileConfig}})}),1),_c('transition',{attrs:{\"name\":\"loading-fade\"}},[(_vm.shouldShowLoading)?_c('div',{staticClass:\"c-app--loading\",class:_vm.appLoadingClasses},[_c('div',{staticClass:\"c-app--loading-container\"},[_c('div',{staticClass:\"c-app--loading-progress\"},[_c('div',{staticClass:\"c-app--loading-progress-bar\",style:(_vm.loadingProgressBarStyle)})]),_c('div',{staticClass:\"c-app--logo\"},[_c('div',{staticClass:\"c-app--logo-slide-in\"},[_c('div',{staticClass:\"c-app--logo-slide-welcome\"},[_c('svg',{attrs:{\"viewBox\":\"0 0 1220 300\",\"xmlns\":\"http://www.w3.org/2000/svg\"}},[_c('defs',[_c('linearGradient',{attrs:{\"id\":\"monitoror-logo-line-gradient\",\"x1\":\"0%\",\"y1\":\"0%\",\"x2\":\"100%\",\"y2\":\"0%\"}},[_c('stop',{attrs:{\"offset\":\"0%\",\"stop-color\":\"var(--color-logo-line-start, #3d5a61)\"}}),_c('stop',{attrs:{\"offset\":\"100%\",\"stop-color\":\"var(--color-logo-background, #87d7af)\"}})],1),_c('mask',{attrs:{\"id\":\"monitoror-logo-line-mask\"}},[_c('path',{attrs:{\"fill\":\"#fff\",\"d\":\"M1190.18 188.973l2.522 12h-49.334v-12h46.812zm-79.771 21.881l-14.452 31.169-1.094 1.609c-1.578 1.196-3.466 2.099-5.342 1.785-1.912-.321-3.346-1.756-4.467-3.429l-18.692-41.015h-25.556c-1.233-1.172-2.334-2.533-3.326-4.066a36.452 36.452 0 01-3.844-7.934h36.585l1.692.243c.518.237 1.075.402 1.554.711 1.3.836 1.405 1.297 2.214 2.558l14.879 32.649 15.155-32.685.926-1.425c.43-.369.811-.803 1.289-1.108 1.294-.827 1.754-.732 3.229-.943h14.173v12h-10.342l-3.044 6.565-1.537.264v3.052zm-95.192-21.881c1.205 4.333 2.915 8.338 5.166 12H974.46v-12h40.757zm-58.793 12h-2.119l-1.717-.251c-1.378-.641-1.859-.682-2.871-1.883-.372-.442-.609-.983-.914-1.474l-17.081-39.288c-1.493-9.812-5.139-18.201-10.943-25.17l-10.023-23.054-37.946 87.507-.914 1.476-1.095.972c-.827-.9-1.573-1.87-2.229-2.901-1.885-2.91-3.368-6.153-4.422-9.739l41.095-94.767 1.077-1.663c.52-.407.98-.905 1.561-1.221a5.994 5.994 0 013.854-.647c1.293.216 2.386 1.044 3.436 1.864l1.079 1.662 40.172 92.401v16.176zm-110.115-12c1.204 4.333 2.915 8.338 5.165 12h-35.087c-.782-1.839-1.17-4.232-1.17-7.179v-4.821h31.092zm-49.128 0v4.821c0 2.578.161 4.969.502 7.179h-33.616v-12h33.114zm-91.838 0h40.688v12h-40.688v-12zm-95.306 29.505l-7.715-17.505h-8.4c2.223-3.666 3.951-7.666 5.145-12h7.167l1.71.248c.522.242 1.085.411 1.568.726 1.309.854 1.409 1.323 2.213 2.606l6.128 13.906-7.816 1.343v10.676zm39.614-17.505l-18.68 40.3-1.101 1.617c-1.048.789-2.14 1.589-3.421 1.788-1.97.306-4.034-.446-5.342-1.871-.441-.481-.714-1.092-1.07-1.638l-9.622-21.831h13.114l2.136 4.847 2.247-4.847 12.464-26.889.926-1.425c.429-.369.81-.803 1.288-1.108l.406-.224.046-.027c.967-.558 1.479-.506 2.777-.692h41.488v12h-37.656zm-69.038-12a36.343 36.343 0 01-3.87 7.934c-.999 1.533-2.101 2.894-3.33 4.066h-32.574c-1.234-1.172-2.334-2.533-3.327-4.066a36.449 36.449 0 01-3.843-7.934h46.944zm-90.021 0h24.658c1.204 4.333 2.915 8.338 5.165 12h-33.848l-1.747-.26c-1.397-.663-1.89-.708-2.901-1.947-.373-.456-.603-1.011-.904-1.517l-20.764-50.654 6.434-15.941 23.907 58.319zm-78.981-27.916l28.017-69.269 1.062-1.718c.524-.423.984-.94 1.572-1.269 2.405-1.345 5.633-.748 7.41 1.248.447.503.713 1.142 1.07 1.713l7.48 18.248-6.334 16.185-6.661-16.248-27.244 67.358-6.372-16.248zm-92.776 27.916h81.485l3.158-7.81 6.468 16.012-.019.048-.9 1.527c-1.145 1.049-1.373 1.491-2.908 1.961-.547.167-1.129.174-1.754.262h-88.051l2.521-12z\"}})])],1),_c('path',{staticStyle:{\"fill\":\"var(--color-logo-background, #87d7af)\"},attrs:{\"d\":\"M159.577 259.753l.782 3.75h-40.987l.855-3.75h39.35zm38.349.016c18.098.071 36.198.328 54.292-.018 2.465-.078 4.64-2.235 4.657-4.786v-49.61h3.75s.108 33.151-.001 49.726c-.082 4.393-3.83 8.333-8.421 8.421l-55.128.001.851-3.734zM253.594 41.25c3.651.002 6.654 3.005 6.656 6.656v146.438l-4.669.014-22-105.817-16.121 5.191-31.918 139.758-30.408-145.588-15.447 4.974-35.942 158.479-13.064-62.747H69.768l15.458 74.52H45.029c-3.651-.002-6.655-3.006-6.657-6.657V47.906c.002-3.651 3.006-6.654 6.657-6.656h208.565z\",\"fill-rule\":\"nonzero\"}}),_c('path',{attrs:{\"d\":\"M166.345 292.218l-31.356-150.414-32.908 144.473-21.115 6.798-18.27-87.754H24.751l4.661-20.463h50.019l13.064 62.747 35.942-158.479 15.447-4.974 30.408 145.588L206.21 89.982l16.121-5.191 20.752 99.976h28.498l4.279 20.554-49.472.097-13.448-64.594-33.56 147.197-13.035 4.197zM474.467 112.587l-.458-.091-43.121 106.842h-11.993l-43.122-106.751-.458.092 1.832 53.924v38.635l14.923 2.564v11.536h-47.882v-11.536l14.923-2.564v-105.01l-14.923-2.564V86.037h37.994l42.48 108.307h.55l42.389-108.307h38.086v11.627l-14.924 2.564v105.01l14.924 2.564v11.536h-47.883v-11.536l14.924-2.564v-38.635l1.739-54.016zm38.368 56.305c0-14.648 3.967-26.718 11.902-36.209 7.934-9.491 18.707-14.237 32.318-14.237 13.672 0 24.49 4.731 32.455 14.191 7.966 9.461 11.948 21.546 11.948 36.255v2.014c0 14.771-3.967 26.856-11.902 36.255-7.934 9.4-18.707 14.099-32.318 14.099-13.733 0-24.567-4.715-32.501-14.145-7.935-9.43-11.902-21.499-11.902-36.209v-2.014zm18.036 2.014c0 10.498 2.212 19.165 6.637 26.001 4.426 6.836 11.002 10.254 19.73 10.254 8.545 0 15.045-3.418 19.501-10.254 4.455-6.836 6.683-15.503 6.683-26.001v-2.014c0-10.376-2.228-19.012-6.683-25.909-4.456-6.897-11.017-10.346-19.684-10.346-8.667 0-15.198 3.449-19.592 10.346-4.395 6.897-6.592 15.533-6.592 25.909v2.014zm79.162 36.896l14.923-2.564v-70.77l-14.923-2.563v-11.627h31.036l1.282 14.74c3.296-5.249 7.431-9.324 12.405-12.223 4.974-2.899 10.635-4.349 16.983-4.349 10.681 0 18.951 3.129 24.811 9.385 5.859 6.256 8.789 15.915 8.789 28.976v48.431l14.923 2.564v11.536H672.38v-11.536l14.923-2.564v-48.065c0-8.728-1.724-14.923-5.173-18.585-3.448-3.662-8.712-5.493-15.793-5.493-5.188 0-9.78 1.251-13.778 3.754-3.998 2.502-7.187 5.92-9.567 10.254v58.135l14.923 2.564v11.536h-47.882v-11.536zm121.071 0l14.923-2.564v-70.77l-14.923-2.563v-11.627h32.959v84.96l14.923 2.564v11.536h-47.882v-11.536zm32.959-112.885h-18.036V76.515h18.036v18.402zm51.15 1.465v23.896h18.768v13.366h-18.768v60.15c0 4.639.961 7.904 2.884 9.797 1.923 1.892 4.471 2.838 7.645 2.838 1.587 0 3.372-.138 5.356-.412 1.983-.275 3.646-.565 4.989-.87l2.472 12.36c-1.709 1.098-4.211 1.998-7.507 2.7a47.357 47.357 0 01-9.888 1.053c-7.324 0-13.153-2.212-17.486-6.637-4.334-4.425-6.501-11.368-6.501-20.829v-60.15h-15.655v-13.366h15.655V96.382h18.036zm28.681 72.51c0-14.648 3.967-26.718 11.902-36.209 7.935-9.491 18.707-14.237 32.318-14.237 13.672 0 24.49 4.731 32.456 14.191 7.965 9.461 11.947 21.546 11.947 36.255v2.014c0 14.771-3.967 26.856-11.902 36.255-7.934 9.4-18.707 14.099-32.318 14.099-13.733 0-24.566-4.715-32.501-14.145-7.935-9.43-11.902-21.499-11.902-36.209v-2.014zm18.036 2.014c0 10.498 2.213 19.165 6.638 26.001 4.425 6.836 11.001 10.254 19.729 10.254 8.545 0 15.045-3.418 19.501-10.254 4.455-6.836 6.683-15.503 6.683-26.001v-2.014c0-10.376-2.228-19.012-6.683-25.909-4.456-6.897-11.017-10.346-19.684-10.346-8.667 0-15.198 3.449-19.592 10.346-4.395 6.897-6.592 15.533-6.592 25.909v2.014zm79.567-39.001v-11.627h31.036l1.74 14.373c2.807-5.066 6.271-9.033 10.391-11.902 4.12-2.868 8.835-4.303 14.145-4.303 1.403 0 2.853.107 4.348.321 1.496.214 2.64.442 3.434.687l-2.381 16.754-10.254-.55c-4.76 0-8.758 1.114-11.993 3.342-3.235 2.228-5.737 5.356-7.507 9.384v56.854l14.923 2.564v11.536h-47.882v-11.536l14.923-2.564v-70.77l-14.923-2.563zm71.305 36.987c0-14.648 3.968-26.718 11.902-36.209 7.935-9.491 18.707-14.237 32.318-14.237 13.672 0 24.491 4.731 32.456 14.191 7.965 9.461 11.947 21.546 11.947 36.255v2.014c0 14.771-3.967 26.856-11.902 36.255-7.934 9.4-18.707 14.099-32.318 14.099-13.733 0-24.566-4.715-32.501-14.145-7.934-9.43-11.902-21.499-11.902-36.209v-2.014zm18.036 2.014c0 10.498 2.213 19.165 6.638 26.001 4.425 6.836 11.001 10.254 19.729 10.254 8.545 0 15.046-3.418 19.501-10.254 4.456-6.836 6.683-15.503 6.683-26.001v-2.014c0-10.376-2.227-19.012-6.683-25.909-4.455-6.897-11.017-10.346-19.684-10.346-8.667 0-15.197 3.449-19.592 10.346s-6.592 15.533-6.592 25.909v2.014zm79.567-39.001v-11.627h31.036l1.74 14.373c2.807-5.066 6.271-9.033 10.391-11.902 4.12-2.868 8.835-4.303 14.145-4.303 1.404 0 2.853.107 4.349.321 1.495.214 2.639.442 3.433.687l-2.381 16.754-10.253-.55c-4.761 0-8.759 1.114-11.994 3.342-3.235 2.228-5.737 5.356-7.507 9.384v56.854l14.923 2.564v11.536h-47.882v-11.536l14.923-2.564v-70.77l-14.923-2.563z\",\"fill\":\"#ffffff\",\"fill-rule\":\"nonzero\"}}),_c('path',{staticClass:\"c-app--logo-line\",attrs:{\"d\":\"M316.036 194.973h88.325l40.825-100.935 41.377 100.935H606.23l19.293 43.776 20.292-43.776h221.487l43.443-100.185 43.556 100.185h115.916l20.292 44.526 20.646-44.526h81.809\",\"fill\":\"none\",\"stroke\":\"url(#monitoror-logo-line-gradient)\",\"mask\":\"url(#monitoror-logo-line-mask)\",\"stroke-width\":\"12\"}})])])])]),(_vm.shouldShowWelcomePage)?_c('monitoror-welcome'):_c('monitoror-errors',{staticClass:\"c-app--loading-errors\"})],1)]):_vm._e()])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"c-monitoror-errors\",class:_vm.classes},[(!_vm.isOnline)?[_vm._v(\" I'm offline... Gimme my connection back! \")]:(_vm.hasErrors)?[_c('div',{staticClass:\"c-monitoror-errors--config-info\"},[(_vm.hasConfigVerifyErrors)?_c('div',{staticClass:\"c-monitoror-errors-title\"},[_vm._v(\" We found \"+_vm._s(_vm.errors.length)+\" error\"+_vm._s(_vm.errors.length > 1 ? 's' : '')+\" \"),(_vm.configParam !== undefined)?[_vm._v(\" in this configuration: \")]:_vm._e()],2):_vm._e(),(_vm.configParam !== undefined && !_vm.isUsingDefaultConfig)?[_c('code',[_vm._v(_vm._s(_vm.configParam))]),_vm._v(\" \"),_c('br'),_c('br')]:_vm._e(),(!_vm.isCoreDown)?[_vm._v(\" Last refresh at \"+_vm._s(_vm.lastRefreshDate)+\" \"),(!_vm.hasConfigVerifyErrors)?_c('hr'):_vm._e()]:_vm._e()],2),_vm._l((_vm.errors),function(error){return _c('div',{staticClass:\"c-monitoror-errors--error\"},[(_vm.isCoreDown)?[_c('p',{staticClass:\"c-monitoror-errors--error-title\"},[_vm._v(\" Monitoror Core seems down \")]),_c('p',[_vm._v(\" Is there a Monitoror Core running at \"),_c('code',[_vm._v(_vm._s(_vm.apiBaseUrl))]),_vm._v(\"? \")]),_c('hr'),_c('p',{staticClass:\"c-monitoror-errors--last-refresh\"},[_vm._v(\" Last refresh at \"+_vm._s(_vm.lastRefreshDate)+\" \")])]:(error.id === _vm.ConfigErrorId.ConfigNotFound)?[_c('p',{staticClass:\"c-monitoror-errors--error-title\"},[_vm._v(\" Your configuration URL or path seems broken, please verify it \")])]:(error.id === _vm.ConfigErrorId.UnknownNamedConfig)?[_c('p',{staticClass:\"c-monitoror-errors--error-title\"},[_c('code',[_vm._v(_vm._s(error.data.value))]),_vm._v(\" named configuration cannot be found \")]),(error.data.expected)?_c('p',[_vm._v(\" Must be one of: \"),_vm._l((_vm.splitList(error.data.expected)),function(namedConfig,index){return [_c('code',[_vm._v(_vm._s(namedConfig))]),(index !== _vm.splitList(error.data.expected).length - 1)?[_vm._v(\", \")]:_vm._e()]})],2):_c('p',[_vm._v(\" You must give a UI configuration via \"),_c('code',[_vm._v(\"config\")]),_vm._v(\" query parameter in order to use Monitoror \")])]:(error.id === _vm.ConfigErrorId.FieldTypeMismatch)?[_c('p',{staticClass:\"c-monitoror-errors--error-title\"},[_vm._v(\" Type mismatch in \"),_c('code',[_vm._v(_vm._s(error.data.fieldName))]),_vm._v(\" field \")]),_c('p',[_vm._v(\" Expected type: \"),_c('code',[_vm._v(_vm._s(error.data.expected))])]),(error.data.configExtract)?_c('pre',{attrs:{\"data-config-param\":_vm.configParam}},[_c('code',{domProps:{\"innerHTML\":_vm._s(_vm.formatConfigExtract(error))}})]):_vm._e(),_vm._m(0,true)]:(error.id === _vm.ConfigErrorId.InvalidEscapedCharacter)?[_c('p',{staticClass:\"c-monitoror-errors--error-title\"},[_vm._v(\" Invalid escaped character \"),_c('code',[_vm._v(_vm._s(error.data.configExtractHighlight))])]),_c('p',[_vm._v(\" Try to escape the backslash: \"),_c('code',[_vm._v(\"\\\\\"+_vm._s(error.data.configExtractHighlight))])]),(error.data.configExtract)?_c('pre',{attrs:{\"data-config-param\":_vm.configParam}},[_c('code',{domProps:{\"innerHTML\":_vm._s(_vm.formatConfigExtract(error))}})]):_vm._e(),_vm._m(1,true)]:(error.id === _vm.ConfigErrorId.InvalidFieldValue)?[_c('p',{staticClass:\"c-monitoror-errors--error-title\"},[_vm._v(\" Invalid \"),_c('code',[_vm._v(_vm._s(error.data.fieldName))]),_vm._v(\" value \")]),(error.data.configExtract)?_c('pre',{attrs:{\"data-config-param\":_vm.configParam}},[_c('code',{domProps:{\"innerHTML\":_vm._s(_vm.formatConfigExtract(error))}})]):_vm._e(),(_vm.getTileDocUrl(error) !== undefined)?_c('p',{staticClass:\"go-to-documentation\"},[_c('a',{attrs:{\"href\":_vm.getTileDocUrl(error),\"target\":\"_blank\"}},[_vm._v(\" Go to \"),_c('strong',[_vm._v(_vm._s(_vm.parsedExtractFieldValue(error.data.configExtract, 'type')))]),_vm._v(\" documentation \")])]):_vm._e()]:(error.id === _vm.ConfigErrorId.MissingRequiredField)?[_c('p',{staticClass:\"c-monitoror-errors--error-title\"},[_vm._v(\" Missing required \"),_c('code',[_vm._v(_vm._s(error.data.fieldName))]),_vm._v(\" field \")]),_c('pre',{attrs:{\"data-config-param\":_vm.configParam}},[_c('code',{domProps:{\"innerHTML\":_vm._s(_vm.formatConfigExtract(error))}})]),_vm._m(2,true)]:(error.id === _vm.ConfigErrorId.UnableToParseConfig)?[_c('p',{staticClass:\"c-monitoror-errors--error-title\"},[_vm._v(\" Your configuration cannot be parsed, please verify it \")]),_c('p',[_vm._v(\" \"+_vm._s(error.message)+\" \")]),_c('pre',{attrs:{\"data-config-param\":_vm.configParam}},[_c('code',{domProps:{\"innerHTML\":_vm._s(_vm.formatConfigExtract(error))}})]),_vm._m(3,true)]:(error.id === _vm.ConfigErrorId.UnknownField)?[_c('p',{staticClass:\"c-monitoror-errors--error-title\"},[_vm._v(\" Unknown \"),_c('code',[_vm._v(_vm._s(error.data.fieldName))]),_vm._v(\" field name \")]),(error.data.expected && _vm.guessExpectedFieldName(error.data.fieldName, _vm.splitList(error.data.expected)) !== undefined)?_c('p',[_vm._v(\" Did you mean \"),_c('code',[_vm._v(_vm._s(_vm.guessExpectedFieldName(error.data.fieldName, _vm.splitList(error.data.expected))))]),_vm._v(\"? \")]):_vm._e(),_c('pre',{attrs:{\"data-config-param\":_vm.configParam}},[_c('code',{domProps:{\"innerHTML\":_vm._s(_vm.formatConfigExtract(error))}})]),_vm._m(4,true)]:(error.id === _vm.ConfigErrorId.UnknownTileType)?[_c('p',{staticClass:\"c-monitoror-errors--error-title\"},[_vm._v(\" Unknown \"),_c('code',[_vm._v(_vm._s(_vm.parsedExtractFieldValue(error.data.configExtract, error.data.fieldName)))]),_vm._v(\" tile type \")]),(_vm.guessExpectedValue(error.data.configExtract, error.data.fieldName, _vm.splitList(error.data.expected)) !== undefined)?_c('p',[_vm._v(\" Did you mean \"),_c('code',[_vm._v(_vm._s(_vm.guessExpectedValue(error.data.configExtract, error.data.fieldName, _vm.splitList(error.data.expected))))]),_vm._v(\"? \")]):_vm._e(),_c('pre',{attrs:{\"data-config-param\":_vm.configParam}},[_c('code',{domProps:{\"innerHTML\":_vm._s(_vm.formatConfigExtract(error))}})]),_vm._m(5,true)]:(error.id === _vm.ConfigErrorId.UnauthorizedSubtileType)?[_c('p',{staticClass:\"c-monitoror-errors--error-title\"},[_vm._v(\" Unauthorized \"),_c('code',[_vm._v(_vm._s(_vm.parsedExtractFieldValue(error.data.configExtractHighlight, 'type')))]),_vm._v(\" type as \"),_c('code',[_vm._v(\"GROUP\")]),_vm._v(\" subtile \")]),_c('pre',{attrs:{\"data-config-param\":_vm.configParam}},[_c('code',{domProps:{\"innerHTML\":_vm._s(_vm.ellipsisUnnecessaryParams(_vm.formatConfigExtract(error)))}})])]:(error.id === _vm.ConfigErrorId.UnsupportedVersion)?[_c('p',{staticClass:\"c-monitoror-errors--error-title\"},[_vm._v(\" Invalid \"),_c('code',[_vm._v(_vm._s(error.data.fieldName))]),_vm._v(\" value: \"),_c('code',[_vm._v(_vm._s(error.data.value))])]),_c('p',[_vm._v(\" Supported config version by Core: \"),_c('code',[_vm._v(_vm._s(error.data.expected))])]),_vm._m(6,true)]:(error.id === _vm.ConfigErrorId.UnexpectedError)?[_c('p',{staticClass:\"c-monitoror-errors--error-title\"},[_vm._v(\" Unexpected error \")]),_c('p',[_vm._v(\" \"+_vm._s(error.message)+\" \")])]:[_c('p',{staticClass:\"c-monitoror-errors--error-title\"},[_vm._v(\" \"+_vm._s(error.message)+\" \")]),_c('p',[_vm._v(\" \"+_vm._s(error.id)+\" \")]),_c('pre',{attrs:{\"data-config-param\":_vm.configParam}},[_c('code',{domProps:{\"innerHTML\":_vm._s(_vm.formatConfigExtract(error))}})])]],2)})]:_vm._e()],2)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('p',{staticClass:\"go-to-documentation\"},[_c('a',{attrs:{\"href\":\"https://monitoror.com/documentation/\",\"target\":\"_blank\"}},[_vm._v(\" Go to documentation \")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('p',{staticClass:\"go-to-documentation\"},[_c('a',{attrs:{\"href\":\"https://monitoror.com/documentation/\",\"target\":\"_blank\"}},[_vm._v(\" Go to documentation \")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('p',{staticClass:\"go-to-documentation\"},[_c('a',{attrs:{\"href\":\"https://monitoror.com/documentation/\",\"target\":\"_blank\"}},[_vm._v(\" Go to documentation \")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('p',{staticClass:\"go-to-documentation\"},[_c('a',{attrs:{\"href\":\"https://monitoror.com/documentation/\",\"target\":\"_blank\"}},[_vm._v(\" Go to documentation \")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('p',{staticClass:\"go-to-documentation\"},[_c('a',{attrs:{\"href\":\"https://monitoror.com/documentation/\",\"target\":\"_blank\"}},[_vm._v(\" Go to documentation \")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('p',{staticClass:\"go-to-documentation\"},[_c('a',{attrs:{\"href\":\"https://monitoror.com/documentation/#tile-definitions\",\"target\":\"_blank\"}},[_vm._v(\" Go to \"),_c('strong',[_vm._v(\"Tile definitions\")]),_vm._v(\" documentation section \")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('p',{staticClass:\"go-to-documentation\"},[_vm._v(\" Are you up to date? \"),_c('br'),_c('a',{attrs:{\"href\":\"https://monitoror.com/documentation/#ui-configuration\",\"target\":\"_blank\"}},[_vm._v(\" Go check the latest config version on documentation \")])])}]\n\nexport { render, staticRenderFns }","export default function ellipsisUnnecessaryParams(jsonString: string): string {\n const cleanedJsonString = jsonString.replace(/\"params\":[^}]*}/g, '\"params\": { ... }')\n\n return cleanedJsonString\n}\n","export default function extractFieldValue(jsonString: string, fieldName: string): string | undefined {\n try {\n return JSON.stringify(JSON.parse(jsonString)[fieldName])\n } catch (e) {\n return\n }\n}\n","import {findBestMatch} from 'string-similarity'\n\nexport default function guessExpectedFieldName(\n fieldName: string,\n expectedValues: string[],\n): string | undefined {\n const bestMatch = findBestMatch(fieldName, expectedValues).bestMatch.target\n\n if (fieldName === bestMatch) {\n return\n }\n\n return bestMatch\n}\n","export default function jsonSyntaxColor(jsonString: string): string {\n const coloredJson = jsonString\n .replace(/:\\s+\"(.*?)\"/g, ': \"$1\"')\n .replace(/:\\s+([.\\d]+)/g, ': $1')\n .replace(/(.*?)/g, '$2')\n\n return coloredJson\n}\n","export default function splitList(list: string): string[] {\n try {\n return list.split(',').map((item) => item.trim()).sort()\n } catch (e) {\n return [list]\n }\n}\n","import extractFieldValue from '@/helpers/extractFieldValue'\nimport guessExpectedFieldName from '@/helpers/guessExpectedFieldName'\nimport jsonSyntaxColor from '@/helpers/jsonSyntaxColor'\nimport splitList from '@/helpers/splitList'\nimport ConfigError from '@/interfaces/configError'\n\nexport default function formatConfigExtract(configError: ConfigError): string {\n let configExtract = configError.data.configExtract\n if (configExtract === undefined) {\n return ''\n }\n\n // Avoid parse issue due to wrong escape sequences (e.g: \\s is invalid in JSON)\n // This will allow us to format the JSON, then we will revert this in the result string\n configExtract = configExtract.replace(/\\\\/g, '\\\\\\\\')\n\n let highlight = true\n if (configError.data.fieldName && configError.data.expected) {\n const guessedFieldName = guessExpectedFieldName(configError.data.fieldName, splitList(configError.data.expected))\n highlight = guessedFieldName === configError.data.fieldName\n }\n\n try {\n JSON.parse(configExtract)\n } catch (err) {\n // Escape special characters to display the config as text, not as HTML\n const sanitizedConfigExtract = configExtract\n .replace(/[\\u00A0-\\u9999<>&]/gim, (match) => {\n // Replace with the HTML Entity of the character\n return `&#${match.charCodeAt(0)};`\n })\n .replace(/\\\\\\\\/g, '\\\\')\n\n return jsonSyntaxColor(sanitizedConfigExtract)\n }\n\n const formattedConfigExtract = JSON.stringify(JSON.parse(configExtract), null, 2)\n let html = formattedConfigExtract.replace(/\\\\\\\\/g, '\\\\')\n\n if (highlight) {\n let configExtractHighlight = configError.data.configExtractHighlight\n let patternPrefix = ''\n\n if (configExtractHighlight === undefined && configError.data.fieldName !== undefined) {\n patternPrefix = `\"${configError.data.fieldName}\":\\\\s+`\n configExtractHighlight = extractFieldValue(configExtract, configError.data.fieldName)\n }\n\n if (configExtractHighlight !== undefined) {\n let formattedConfigExtractHighlight = configExtractHighlight\n try {\n formattedConfigExtractHighlight = JSON.stringify(JSON.parse(configExtractHighlight), null, 2)\n } catch (err) {\n // Escape unescaped char to be a string used as regex\n // \\w => \\\\w\n if (formattedConfigExtractHighlight.startsWith('\\\\')) {\n formattedConfigExtractHighlight = '\\\\' + formattedConfigExtractHighlight\n }\n }\n const isHighlightMultiline = formattedConfigExtractHighlight.includes('\\n')\n const multilinePrefix = isHighlightMultiline ? ' *' : ''\n const multilineSuffix = isHighlightMultiline ? ',?' : ''\n const pattern = [\n multilinePrefix,\n patternPrefix,\n formattedConfigExtractHighlight.replace(/\\s+/g, '\\\\s+'),\n multilineSuffix,\n ].join('')\n const find = new RegExp(pattern)\n const matches = formattedConfigExtract.match(find)\n\n if (matches === null) {\n return jsonSyntaxColor(html)\n }\n\n const match = matches[0]\n const matchRegexPrefix = match.startsWith('\\\\') ? '\\\\' : ''\n const markClassAttr = isHighlightMultiline ? 'class=\"multiline-mark\"' : ''\n\n html = formattedConfigExtract.replace(matchRegexPrefix + match, `${match}`)\n }\n\n if (html.includes('')) {\n html = `${html}`\n }\n }\n\n return jsonSyntaxColor(html)\n}\n","import extractFieldValue from '@/helpers/extractFieldValue'\nimport ConfigError from '@/interfaces/configError'\n\nexport default function getTileDocUrl(error: ConfigError): string | undefined {\n const tileType = extractFieldValue(error.data.configExtract as string, 'type')\n\n if (tileType === undefined) {\n return\n }\n\n const url = 'https://monitoror.com/documentation/#tile-' + JSON.parse(tileType).toLowerCase()\n\n return url\n}\n","import extractFieldValue from '@/helpers/extractFieldValue'\n\nexport default function parsedExtractFieldValue(jsonString: string, fieldName: string): string | undefined {\n const fieldValue = extractFieldValue(jsonString, fieldName)\n\n if (fieldValue === undefined) {\n return\n }\n\n return JSON.parse(fieldValue)\n}\n","import parsedExtractFieldValue from '@/helpers/parsedExpectedValue'\nimport {findBestMatch} from 'string-similarity'\n\nexport default function guessExpectedValue(\n configExtract: string,\n fieldName: string,\n expectedValues: string[],\n): string | undefined {\n const currentValue = parsedExtractFieldValue(configExtract, fieldName)\n\n if (currentValue === undefined) {\n return\n }\n\n const bestMatch = findBestMatch(currentValue, expectedValues).bestMatch\n\n return bestMatch.target\n}\n","import ConfigErrorId from '@/enums/configErrorId'\nimport ConfigError from '@/interfaces/configError'\n\nconst CONFIG_NON_VERIFY_ERRORS = [\n ConfigErrorId.CannotBeFetched,\n ConfigErrorId.ConfigNotFound,\n ConfigErrorId.UnknownNamedConfig,\n]\n\nexport default function hasConfigVerifyErrors(errors: ConfigError[]): boolean {\n return errors.filter((error) => !CONFIG_NON_VERIFY_ERRORS.includes(error.id)).length > 0\n}\n","export enum TileStatus {\n Success = 'SUCCESS',\n Failed = 'FAILURE',\n Warning = 'WARNING',\n Running = 'RUNNING',\n Queued = 'QUEUED',\n Canceled = 'CANCELED',\n Unknown = 'UNKNOWN',\n ActionRequired = 'ACTION_REQUIRED',\n}\n\nexport default TileStatus\n","import TileStatus from '@/enums/tileStatus'\n\nconst DISPLAYABLE_SUBTILE_STATUS = [\n TileStatus.Warning,\n TileStatus.Failed,\n TileStatus.Queued,\n TileStatus.Running,\n TileStatus.Canceled,\n TileStatus.ActionRequired,\n]\n\nexport default DISPLAYABLE_SUBTILE_STATUS\n","enum Route {\n Welcome = '/welcome',\n ChooseConfiguration = '/choose-configuration',\n}\n\nexport default Route\n","import {noop, now} from 'lodash-es'\n\nimport TaskType from '@/enums/taskType'\nimport TaskOptions from '@/interfaces/taskOptions'\n\nexport default class Task {\n public readonly id: string\n public readonly type: TaskType\n public readonly interval: number\n public readonly retryOnFailInterval: number\n private running: boolean = false\n private done: boolean = false\n private dead: boolean = false\n private internalTime: number\n private failedAttemptsCount: number = 0\n private readonly executor: () => Promise\n private readonly onFailedCallback: (failedAttemptsCount: number) => void\n\n constructor(\n {\n id,\n type,\n executor,\n interval = 0,\n initialDelay = 0,\n retryOnFailInterval = 0,\n onFailedCallback = noop,\n }: TaskOptions,\n ) {\n this.id = id\n this.type = type\n this.interval = interval\n this.retryOnFailInterval = retryOnFailInterval\n this.internalTime = now() + initialDelay\n this.executor = executor\n this.onFailedCallback = onFailedCallback\n }\n\n get time() {\n return this.internalTime\n }\n\n public isRunning() {\n return this.running\n }\n\n public isDone() {\n return this.done\n }\n\n public isDead() {\n return this.dead\n }\n\n public kill() {\n this.dead = true\n }\n\n public async run() {\n if (this.isDead()) {\n return\n }\n\n this.running = true\n try {\n await this.executor()\n } catch (e) {\n this.failedAttemptsCount += 1\n this.onFailedCallback(this.failedAttemptsCount)\n }\n this.done = true\n this.running = false\n\n if (this.interval === 0) {\n this.dead = true\n }\n }\n\n public prepareNextRun() {\n if (this.isDead() || this.isRunning()) {\n return\n }\n\n let interval = this.interval\n if (this.retryOnFailInterval > 0) {\n interval = this.retryOnFailInterval\n }\n\n this.done = false\n this.internalTime = now() + interval\n }\n}\n","enum TaskInterval {\n Second = 1000,\n Minute = 60000,\n}\n\nexport default TaskInterval\n","enum TaskType {\n Root = 'ROOT',\n RefreshTile = 'REFRESH_TILE',\n}\n\nexport default TaskType\n","enum Theme {\n Default = 'DEFAULT',\n Dark = 'DARK',\n}\n\nexport default Theme\n","export default function getQueryParamValue(\n queryParamName: string,\n defaultValue?: string,\n): string | undefined {\n const queryParams = window.location.search.substr(1).split('&')\n\n let value = defaultValue\n const valueQueryParam = queryParams.find((queryParam: string) => {\n return new RegExp(`^${queryParamName}=`).test(queryParam)\n })\n if (valueQueryParam) {\n value = valueQueryParam.substr(valueQueryParam.indexOf('=') + 1)\n }\n\n return value\n}\n","import TileStatus from '@/enums/tileStatus'\nimport TileState from '@/interfaces/tileState'\n\nexport default function getSubTilePreviousOrStatus(subTileState?: TileState): TileStatus {\n if (subTileState === undefined) {\n return TileStatus.Unknown\n }\n\n let subTileStatus = subTileState.status\n\n if ([TileStatus.Queued, TileStatus.Running].includes(subTileState.status) && subTileState.build !== undefined) {\n subTileStatus = subTileState.build.previousStatus as TileStatus\n }\n\n return subTileStatus\n}\n","import TileStatus from '@/enums/tileStatus'\n\nconst ORDERED_TILE_STATUS = [\n TileStatus.Unknown,\n TileStatus.Success,\n TileStatus.ActionRequired,\n TileStatus.Canceled,\n TileStatus.Warning,\n TileStatus.Failed,\n TileStatus.Queued,\n TileStatus.Running,\n]\n\nexport default function mostImportantStatus(status1: TileStatus, status2: TileStatus): TileStatus {\n return ORDERED_TILE_STATUS.indexOf(status1) < ORDERED_TILE_STATUS.indexOf(status2) ? status2 : status1\n}\n","import axios from 'axios'\nimport {now} from 'lodash-es'\nimport {Md5 as md5} from 'ts-md5/dist/md5'\nimport Vue from 'vue'\nimport Vuex, {StoreOptions} from 'vuex'\n\nimport DISPLAYABLE_SUBTILE_STATUS from '@/constants/displayableSubtileStatus'\n\nimport Task from '@/classes/task'\nimport ConfigErrorId from '@/enums/configErrorId'\nimport Route from '@/enums/route'\nimport TaskInterval from '@/enums/taskInterval'\nimport TaskType from '@/enums/taskType'\nimport Theme from '@/enums/theme'\nimport TileStatus from '@/enums/tileStatus'\nimport getQueryParamValue from '@/helpers/getQueryParamValue'\nimport getSubTilePreviousOrStatus from '@/helpers/getSubTilePreviousOrStatus'\nimport mostImportantStatus from '@/helpers/mostImportantStatus'\nimport Config from '@/interfaces/config'\nimport ConfigBag from '@/interfaces/configBag'\nimport ConfigError from '@/interfaces/configError'\nimport ConfigMetadata from '@/interfaces/configMetadata'\nimport Info from '@/interfaces/info'\nimport TaskOptions from '@/interfaces/taskOptions'\nimport TileConfig from '@/interfaces/tileConfig'\nimport TileState from '@/interfaces/tileState'\n\nVue.use(Vuex)\n\nconst API_BASE_PATH = '/api/v1'\nexport const DEFAULT_CONFIG_NAME = 'default'\nconst INFO_URL = '/info'\nconst CONFIGS_URL = '/configs'\nconst QUERY_PARAM_KEYS = {\n API_BASE_URL: 'apiBaseUrl',\n CONFIG: 'config',\n THEME: 'theme',\n}\n\nexport interface RootState {\n appVersion: string | undefined,\n configVersion: string | undefined,\n columns: number,\n zoom: number,\n tiles: TileConfig[],\n tilesState: { [key: string]: TileState },\n tasks: Task[],\n errors: ConfigError[],\n online: boolean,\n now: Date,\n lastRefreshDate: Date,\n configList: ConfigMetadata[],\n}\n\nconst store: StoreOptions = {\n state: {\n appVersion: undefined,\n configVersion: undefined,\n columns: 4,\n zoom: 1,\n tiles: [],\n tilesState: {},\n tasks: [],\n errors: [],\n online: true,\n now: new Date(),\n lastRefreshDate: new Date(),\n configList: [],\n },\n getters: {\n apiBaseUrl(): string {\n const defaultApiBaseUrl = window.location.origin + window.location.pathname\n let apiBaseUrl = getQueryParamValue(QUERY_PARAM_KEYS.API_BASE_URL, defaultApiBaseUrl) as string\n\n apiBaseUrl = apiBaseUrl.replace(/\\/+$/, '')\n\n return apiBaseUrl\n },\n configParam(): string {\n return getQueryParamValue(QUERY_PARAM_KEYS.CONFIG, DEFAULT_CONFIG_NAME) as string\n },\n infoUrl(state, getters): string {\n return getters.apiBaseUrl + API_BASE_PATH + INFO_URL\n },\n configProxyUrl(state, getters): string {\n return getters.apiBaseUrl + API_BASE_PATH + CONFIGS_URL\n },\n proxyfiedConfigUrl(state, getters): string | undefined {\n const urlEncodedConfigParam = encodeURIComponent(getters.configParam)\n\n return `${getters.configProxyUrl}/${urlEncodedConfigParam}`\n },\n currentRoute(): Route | undefined {\n const queryHash = window.location.hash.replace(/^#/, '')\n let route\n\n if (Object.values(Route).includes(queryHash.toLowerCase() as Route)) {\n route = queryHash.toLowerCase() as Route\n }\n\n return route\n },\n theme(): Theme {\n let theme = Theme.Default\n const queryTheme = getQueryParamValue(QUERY_PARAM_KEYS.THEME, theme) as string\n\n if (Object.values(Theme).includes(queryTheme.toUpperCase() as Theme)) {\n theme = queryTheme.toUpperCase() as Theme\n }\n\n return theme\n },\n tileStateKeys(state): string[] {\n const tileStateKeys: string[] = []\n state.tiles.forEach((tile: TileConfig) => {\n tileStateKeys.push(tile.stateKey)\n\n // Add group subTiles stateKeys\n if (tile.tiles) {\n tile.tiles.forEach((subTile) => {\n tileStateKeys.push(subTile.stateKey)\n })\n }\n })\n\n return tileStateKeys\n },\n taskIds(state): string[] {\n return state.tasks.map((task: Task) => task.id)\n },\n loadedTilesCount(state): number {\n const loadedTilesCount = Object.keys(state.tilesState).length\n\n return loadedTilesCount\n },\n loadableTilesCount(state): number {\n const loadableTilesStateKeys: string[] = []\n\n function addLoadableTileStateKey(stateKey: string) {\n if (loadableTilesStateKeys.includes(stateKey)) {\n return\n }\n\n loadableTilesStateKeys.push(stateKey)\n }\n\n state.tiles.forEach((tile) => {\n if (tile.url) {\n addLoadableTileStateKey(tile.stateKey)\n }\n\n if (tile.tiles) {\n addLoadableTileStateKey(tile.stateKey)\n tile.tiles.forEach((subTile) => {\n addLoadableTileStateKey(subTile.stateKey)\n })\n }\n })\n\n const loadableTilesCount = loadableTilesStateKeys.length\n\n return loadableTilesCount\n },\n loadingProgress(state, getters): number {\n const loadingProgress = getters.loadedTilesCount / getters.loadableTilesCount\n\n if (!loadingProgress) {\n return 0\n }\n\n return loadingProgress\n },\n hasUnknownDefaultConfigError(state, getters): boolean {\n if (state.errors.length === 0) {\n return false\n }\n\n const error = state.errors[0]\n\n const isDefaultConfig = getters.configParam === DEFAULT_CONFIG_NAME\n const isUnknownNamedConfigError = error.id === ConfigErrorId.UnknownNamedConfig\n\n return isDefaultConfig && isUnknownNamedConfigError\n },\n isNewUser(state, getters): boolean {\n if (!getters.hasUnknownDefaultConfigError) {\n return false\n }\n\n const error = state.errors[0]\n const hasNamedConfig = error.data.expected !== undefined\n\n return !hasNamedConfig\n },\n shouldShowWelcomePage(state, getters): boolean {\n const welcomePageRoutes = [\n Route.Welcome,\n Route.ChooseConfiguration,\n ]\n const isOnWelcomePageRoute = welcomePageRoutes.includes(getters.currentRoute)\n\n return isOnWelcomePageRoute || getters.isNewUser || getters.hasUnknownDefaultConfigError\n },\n shouldInit(state, getters): boolean {\n const isOnChooseConfigurationPageRoute = Route.ChooseConfiguration === getters.currentRoute\n\n return !isOnChooseConfigurationPageRoute\n },\n },\n mutations: {\n setAppVersion(state, payload: string): void {\n state.appVersion = payload\n },\n setConfig(state, payload: Config): void {\n state.configVersion = payload.version\n state.columns = payload.columns\n if (payload.zoom !== undefined) {\n state.zoom = payload.zoom\n }\n state.tiles = payload.tiles\n },\n setConfigList(state, payload: ConfigMetadata[]): void {\n state.configList = payload\n },\n setErrors(state, payload: ConfigError[]): void {\n state.errors = payload\n },\n setTileState(state, payload: { tileStateKey: string, tileState: TileState }): void {\n if (!state.tilesState.hasOwnProperty(payload.tileStateKey)) {\n Vue.set(state.tilesState, payload.tileStateKey, payload.tileState)\n } else {\n state.tilesState[payload.tileStateKey] = payload.tileState\n }\n },\n setOnline(state, payload: boolean): void {\n state.online = payload\n },\n setTasks(state, payload: Task[]): void {\n state.tasks = payload\n },\n addTask(state, payload: Task): void {\n state.tasks.push(payload)\n },\n setLastRefreshDate(state, payload: Date): void {\n state.lastRefreshDate = payload\n },\n setNow(state, payload: Date): void {\n state.now = payload\n },\n },\n actions: {\n async autoUpdate({commit, state, getters}) {\n return axios.get(getters.infoUrl)\n .then((response) => {\n const info: Info = response.data\n\n if (state.appVersion === undefined) {\n commit('setAppVersion', info.version)\n return\n }\n\n if (info.version !== state.appVersion) {\n window.location.reload()\n }\n })\n },\n async fetchConfigList({commit, getters}) {\n return axios.get(getters.configProxyUrl)\n .then((response) => {\n const configList: ConfigMetadata[] = response.data.map((configMetadata: ConfigMetadata) => {\n let uiUrl = `?${QUERY_PARAM_KEYS.CONFIG}=${configMetadata.name}`\n\n if (getters.theme !== Theme.Default) {\n uiUrl += `&${QUERY_PARAM_KEYS.THEME}=${getters.theme.toLowerCase()}`\n }\n\n configMetadata.uiUrl = uiUrl\n\n return configMetadata\n }).sort((configMetadataA: ConfigMetadata, configMetadataB: ConfigMetadata) => {\n return configMetadataA.name.localeCompare(configMetadataB.name)\n })\n\n commit('setConfigList', configList)\n })\n },\n async fetchConfiguration({commit, state, getters, dispatch}) {\n const hydrateTile = (tile: TileConfig, groupTile?: TileConfig) => {\n // Create a identifier based on tile configuration\n tile.stateKey = tile.type + '_' + md5.hashStr(JSON.stringify(tile))\n\n if (tile.url) {\n // Prefix URL with api base URL\n tile.url = getters.apiBaseUrl + tile.url\n\n // Create a task for this tile\n dispatch('createRefreshTileTask', {tile, groupTile})\n }\n\n // Set stateKey on group subTiles\n if (tile.tiles) {\n tile.tiles = tile.tiles.map((subTile) => hydrateTile(subTile, tile))\n }\n\n return tile\n }\n\n commit('setLastRefreshDate', new Date())\n\n return axios.get(getters.proxyfiedConfigUrl)\n .then((response) => {\n const configBag: ConfigBag = response.data\n\n // Kill old refreshTile tasks\n state.tasks\n .filter((task) => task.type === TaskType.RefreshTile && !getters.tileStateKeys.includes(task.id))\n .map((task) => task.kill())\n\n if (configBag.errors !== undefined) {\n commit('setErrors', configBag.errors)\n } else {\n commit('setErrors', [])\n\n if (configBag.config !== undefined) {\n configBag.config.tiles = configBag.config.tiles.map((tile) => hydrateTile(tile))\n commit('setConfig', configBag.config)\n }\n }\n })\n },\n createRefreshTileTask({dispatch}, {tile, groupTile}: { tile: TileConfig, groupTile?: TileConfig }) {\n dispatch('addTask', {\n id: tile.stateKey,\n type: TaskType.RefreshTile,\n executor: async () => {\n await dispatch('refreshTile', tile)\n\n if (groupTile !== undefined) {\n await dispatch('refreshGroup', groupTile)\n }\n },\n interval: 10 * TaskInterval.Second,\n initialDelay: Math.random() * (tile.initialMaxDelay || 0),\n })\n },\n async refreshTile({commit}, tile: TileConfig) {\n if (!tile.url) {\n return Promise.resolve()\n }\n\n return axios.get(tile.url)\n .then(async (response) => {\n const tileState = response.data\n\n commit('setTileState', {tileStateKey: tile.stateKey, tileState})\n })\n },\n refreshGroup({state, commit}, groupTile: TileConfig) {\n if (!groupTile.tiles) {\n return\n }\n\n const groupSubTilesState = groupTile.tiles\n .map((subTile) => subTile.stateKey)\n .map((subTileStateKey) => state.tilesState[subTileStateKey])\n\n const groupStatus = groupSubTilesState.reduce((worstSubTileStatus, subTileState) => {\n const subTileStatus = getSubTilePreviousOrStatus(subTileState)\n\n return mostImportantStatus(worstSubTileStatus, subTileStatus)\n }, TileStatus.Unknown)\n\n const groupNonDisplayedSubTiles = groupSubTilesState.filter((subTileState) => {\n const subTileStatus = getSubTilePreviousOrStatus(subTileState)\n\n return !DISPLAYABLE_SUBTILE_STATUS.includes(subTileStatus)\n })\n\n const groupMessage = `${groupNonDisplayedSubTiles.length} / ${groupTile.tiles.length}`\n\n const groupState = {\n status: groupStatus,\n message: groupMessage,\n }\n\n commit('setTileState', {tileStateKey: groupTile.stateKey, tileState: groupState})\n },\n updateNetworkState({commit}) {\n commit('setOnline', navigator.onLine)\n },\n addTask({getters, commit}, taskOptions: TaskOptions) {\n // Avoid adding multiple task with the same ID\n if (getters.taskIds.includes(taskOptions.id)) {\n return\n }\n\n commit('addTask', new Task(taskOptions))\n },\n runTasks({state, dispatch}) {\n const nowTime = now()\n const shouldRunTask = (task: Task) => !task.isDone() && !task.isRunning() && task.time <= nowTime\n\n const taskToRun = state.tasks.filter(shouldRunTask)\n Promise.all(taskToRun.map((task: Task) => {\n return task.run()\n })).then(() => {\n dispatch('updateTasks')\n })\n },\n updateTasks({commit, state}) {\n const {taskList, hasChanged} = state.tasks.reduce(\n (previousValue: { taskList: Task[], hasChanged: boolean }, task: Task) => {\n // Remove dead tasks from task list\n if (task.isDead()) {\n previousValue.hasChanged = true\n return previousValue\n }\n\n // Update outdated recurring tasks\n if (task.isDone()) {\n task.prepareNextRun()\n }\n\n previousValue.taskList.push(task)\n\n return previousValue\n },\n {taskList: [], hasChanged: false},\n )\n\n if (hasChanged) {\n commit('setTasks', taskList)\n }\n },\n killAllTasks({commit, state}) {\n state.tasks.map((task: Task) => task.kill())\n commit('setTasks', [])\n },\n init({state, commit, dispatch}) {\n // Run auto-update each minute\n dispatch('addTask', {\n id: 'autoUpdate',\n type: TaskType.Root,\n executor: async () => {\n await dispatch('autoUpdate')\n },\n interval: 1 * TaskInterval.Minute,\n })\n\n // Fetch configuration each minute\n dispatch('addTask', {\n id: 'fetchConfiguration',\n type: TaskType.Root,\n executor: async () => {\n await dispatch('fetchConfiguration')\n },\n interval: 1 * TaskInterval.Minute,\n retryOnFailInterval: 5 * TaskInterval.Second,\n onFailedCallback: () => {\n // When offline, we know why we cannot get a response from the Core\n if (!state.online) {\n return\n }\n\n const configCannotBeFetch: ConfigError = {\n id: ConfigErrorId.CannotBeFetched,\n message: 'Configuration cannot be fetch from Monitoror Core',\n data: {},\n }\n commit('setErrors', [configCannotBeFetch])\n },\n })\n\n // Update \"now\" each second\n dispatch('addTask', {\n id: 'updateNow',\n type: TaskType.Root,\n executor: async () => {\n commit('setNow', new Date())\n },\n interval: 1 * TaskInterval.Second,\n })\n },\n },\n}\n\nexport default new Vuex.Store(store)\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport {format} from 'date-fns'\nimport {Component, Vue, Watch} from 'vue-property-decorator'\n\nimport ConfigErrorId from '@/enums/configErrorId'\nimport ellipsisUnnecessaryParams from '@/helpers/ellipsisUnnecessaryParams'\nimport formatConfigExtract from '@/helpers/formatConfigExtract'\nimport getTileDocUrl from '@/helpers/getTileDoc'\nimport guessExpectedFieldName from '@/helpers/guessExpectedFieldName'\nimport guessExpectedValue from '@/helpers/guessExpectedValue'\nimport hasConfigVerifyErrors from '@/helpers/hasConfigVerifyErrors'\nimport parsedExtractFieldValue from '@/helpers/parsedExpectedValue'\nimport splitList from '@/helpers/splitList'\nimport ConfigError from '@/interfaces/configError'\nimport {DEFAULT_CONFIG_NAME} from '@/store'\n\n@Component({})\nexport default class MonitororErrors extends Vue {\n /**\n * Computed\n */\n\n get classes() {\n return {\n 'c-monitoror-errors__config-verify-errors': this.hasConfigVerifyErrors,\n }\n }\n\n get configParam(): string {\n return this.$store.getters.configParam\n }\n\n get isUsingDefaultConfig(): boolean {\n return this.configParam === DEFAULT_CONFIG_NAME\n }\n\n get isCoreDown(): boolean {\n if (!this.hasErrors) {\n return false\n }\n\n return this.errors[0].id === ConfigErrorId.CannotBeFetched\n }\n\n get lastRefreshDate(): string {\n return format(this.$store.state.lastRefreshDate, 'hh:mm:ss a')\n }\n\n get isOnline(): boolean {\n return this.$store.state.online\n }\n\n get errors(): ConfigError[] {\n return this.$store.state.errors\n }\n\n get hasErrors(): boolean {\n return this.errors.length > 0\n }\n\n get hasConfigVerifyErrors(): boolean {\n return hasConfigVerifyErrors(this.errors)\n }\n\n get apiBaseUrl(): string {\n return this.$store.getters.apiBaseUrl\n }\n\n get ConfigErrorId() {\n return ConfigErrorId\n }\n\n /*\n * Methods\n */\n\n public ellipsisUnnecessaryParams = ellipsisUnnecessaryParams\n public formatConfigExtract = formatConfigExtract\n public getTileDocUrl = getTileDocUrl\n public guessExpectedValue = guessExpectedValue\n public guessExpectedFieldName = guessExpectedFieldName\n public parsedExtractFieldValue = parsedExtractFieldValue\n public splitList = splitList\n\n /*\n * Watchers\n */\n\n @Watch('errors')\n private async scrollToFirstConfigErrorExtractMark() {\n await Vue.nextTick()\n Array.from(document.querySelectorAll('.has-mark')).forEach((errorConfigExtract: Element) => {\n const pre = errorConfigExtract.parentNode?.parentNode as HTMLElement\n const mark = pre.querySelector('mark')\n\n if (mark === null) {\n return\n }\n\n pre.scrollTop = mark.offsetTop - pre.offsetTop\n })\n }\n}\n","export enum TileType {\n HttpStatus = 'HTTP-STATUS',\n HttpRaw = 'HTTP-RAW',\n HttpFormatted = 'HTTP-FORMATTED',\n Ping = 'PING',\n Port = 'PORT',\n PingdomCheck = 'PINGDOM-CHECK',\n PingdomTransactionCheck = 'PINGDOM-TRANSACTION-CHECK',\n GitHubChecks = 'GITHUB-CHECKS',\n GitHubPullRequest = 'GITHUB-PULLREQUEST',\n GitHubCount = 'GITHUB-COUNT',\n GitLabPipeline = 'GITLAB-PIPELINE',\n GitLabMergeRequest = 'GITLAB-MERGEREQUEST',\n GitLabIssues = 'GITLAB-COUNT-ISSUES',\n Travis = 'TRAVISCI-BUILD',\n Jenkins = 'JENKINS-BUILD',\n AzureDevOpsBuild = 'AZUREDEVOPS-BUILD',\n AzureDevOpsRelease = 'AZUREDEVOPS-RELEASE',\n\n Empty = 'EMPTY',\n Group = 'GROUP',\n}\n\nexport default TileType\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--14-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Errors.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--14-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Errors.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Errors.vue?vue&type=template&id=c53496da&\"\nimport script from \"./Errors.vue?vue&type=script&lang=ts&\"\nexport * from \"./Errors.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Errors.vue?vue&type=style&index=0&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 () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"c-monitoror-tile\",class:_vm.classes,style:(_vm.styles)},[(!_vm.isEmpty)?_c('div',{staticClass:\"c-monitoror-tile--content\"},[_c('div',{staticClass:\"c-monitoror-tile--label\"},[(_vm.mergeRequestLabelPrefix)?[_vm._v(_vm._s(_vm.mergeRequestLabelPrefix))]:_vm._e(),(_vm.mergeRequestLabelPrefix && _vm.label)?[_vm._v(\" @\")]:_vm._e(),_vm._v(\" \"+_vm._s(_vm.label)+\" \")],2),(_vm.branch || _vm.buildId)?_c('div',{staticClass:\"c-monitoror-tile--build-info\"},[(_vm.branch)?[(_vm.mergeRequest)?_c('svg',{attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 16 16\",\"fill\":\"currentColor\"}},[_c('path',{attrs:{\"fill-rule\":\"evenodd\",\"d\":\"M7.177 3.073L9.573.677A.25.25 0 0110 .854v4.792a.25.25 0 01-.427.177L7.177 3.427a.25.25 0 010-.354zM3.75 2.5a.75.75 0 100 1.5.75.75 0 000-1.5zm-2.25.75a2.25 2.25 0 113 2.122v5.256a2.251 2.251 0 11-1.5 0V5.372A2.25 2.25 0 011.5 3.25zM11 2.5h-1V4h1a1 1 0 011 1v5.628a2.251 2.251 0 101.5 0V5A2.5 2.5 0 0011 2.5zm1 10.25a.75.75 0 111.5 0 .75.75 0 01-1.5 0zM3.75 12a.75.75 0 100 1.5.75.75 0 000-1.5z\"}})]):_c('svg',{attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 16 16\",\"fill\":\"currentColor\"}},[_c('path',{attrs:{\"fill-rule\":\"evenodd\",\"d\":\"M11.75 2.5a.75.75 0 100 1.5.75.75 0 000-1.5zm-2.25.75a2.25 2.25 0 113 2.122V6A2.5 2.5 0 0110 8.5H6a1 1 0 00-1 1v1.128a2.251 2.251 0 11-1.5 0V5.372a2.25 2.25 0 111.5 0v1.836A2.492 2.492 0 016 7h4a1 1 0 001-1v-.628A2.25 2.25 0 019.5 3.25zM4.25 12a.75.75 0 100 1.5.75.75 0 000-1.5zM3.5 3.25a.75.75 0 111.5 0 .75.75 0 01-1.5 0z\"}})]),_vm._v(\" \"+_vm._s(_vm.branch)+\" \")]:_vm._e(),(_vm.branch && _vm.buildId)?[_vm._v(\" —\")]:_vm._e(),(_vm.buildId)?[_vm._v(\" #\"+_vm._s(_vm.buildId)+\" \")]:_vm._e()],2):_vm._e(),(_vm.message)?_c('div',{staticClass:\"c-monitoror-tile--message\"},[_vm._v(\" \"+_vm._s(_vm.message)+\" \")]):_vm._e(),(_vm.displayedValue)?_c('div',{staticClass:\"c-monitoror-tile--value\"},[_vm._v(\" \"+_vm._s(_vm.displayedValue)+\" \")]):_vm._e(),(_vm.isGroup)?_c('div',{staticClass:\"c-monitoror-tile--sub-tiles\"},_vm._l((_vm.displayedSubTiles),function(subTile){return _c('monitoror-sub-tile',{key:subTile.stateKey,attrs:{\"config\":subTile}})}),1):_vm._e(),_c('monitoror-tile-icon',{staticClass:\"c-monitoror-tile--icon\",attrs:{\"tile-type\":_vm.type}}),(_vm.showAuthor)?_c('div',{staticClass:\"c-monitoror-tile--author\"},[_c('img',{staticClass:\"c-monitoror-tile--author-avatar\",attrs:{\"src\":_vm.author.avatarUrl,\"alt\":\"\"}}),_vm._v(\" \"+_vm._s(_vm.author.name)+\" \")]):_vm._e(),(_vm.finishedSince)?_c('div',{staticClass:\"c-monitoror-tile--finished-at\"},[_vm._v(\" \"+_vm._s(_vm.finishedSince)+\" \")]):_vm._e(),(_vm.isRunning || _vm.isQueued)?[_c('div',{staticClass:\"c-monitoror-tile--progress-time\"},[(_vm.isRunning)?[_vm._v(\" \"+_vm._s(_vm.progressTime)+\" \")]:[_vm._v(\" Pending... \")]],2),_c('div',{staticClass:\"c-monitoror-tile--progress\"},[_c('div',{staticClass:\"c-monitoror-tile--progress-bar\",style:(_vm.progressBarStyle)})])]:_vm._e()],2):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","enum TileValueUnit {\n Millisecond = 'MILLISECOND',\n Ratio = 'RATIO',\n Number = 'NUMBER',\n Raw = 'RAW',\n}\n\nexport default TileValueUnit\n","import {addSeconds, differenceInSeconds, format, formatDistance} from 'date-fns'\nimport Vue from 'vue'\nimport {Prop} from 'vue-property-decorator'\n\nimport TileStatus from '@/enums/tileStatus'\nimport TileType from '@/enums/tileType'\nimport TileAuthor from '@/interfaces/tileAuthor'\nimport TileBuild from '@/interfaces/tileBuild'\nimport TileConfig from '@/interfaces/tileConfig'\nimport TileMergeRequest from '@/interfaces/tileMergeRequest'\nimport TileState from '@/interfaces/tileState'\n\nexport default abstract class AbstractMonitororTile extends Vue {\n /*\n * Props\n */\n\n @Prop()\n protected config!: TileConfig\n\n /*\n * Computed\n */\n\n get type(): TileType {\n return this.config.type\n }\n\n get stateKey(): string {\n return this.config.stateKey\n }\n\n get theme(): string {\n return this.$store.getters.theme.toString().toLowerCase()\n }\n\n get now(): Date {\n return this.$store.state.now\n }\n\n get state(): TileState | undefined {\n if (!this.$store.state.tilesState.hasOwnProperty(this.stateKey)) {\n return\n }\n\n return this.$store.state.tilesState[this.stateKey]\n }\n\n get mergeRequestLabelPrefix(): string | undefined {\n if (this.mergeRequest === undefined) {\n return\n }\n\n let mergeRequestPrefix = 'MR'\n if (this.type === TileType.GitHubPullRequest) {\n mergeRequestPrefix = 'PR'\n }\n\n return mergeRequestPrefix + '#' + this.mergeRequest.id\n }\n\n get label(): string | undefined {\n if (this.config.label) {\n if (this.config.label === '-') {\n return\n }\n\n return this.config.label\n }\n\n if (this.state === undefined) {\n return\n }\n\n return this.state.label\n }\n\n get build(): TileBuild | undefined {\n if (this.state === undefined) {\n return\n }\n\n return this.state.build\n }\n\n get branch(): string | undefined {\n if (this.build === undefined) {\n return\n }\n\n return this.build.branch\n }\n\n get mergeRequest(): TileMergeRequest | undefined {\n if (this.build === undefined) {\n return\n }\n\n return this.build.mergeRequest\n }\n\n get status(): string | undefined {\n if (this.state === undefined) {\n return\n }\n\n return this.state.status\n }\n\n get previousStatus(): string | undefined {\n if (this.build === undefined) {\n return\n }\n\n return this.build.previousStatus\n }\n\n get isQueued(): boolean {\n return this.status === TileStatus.Queued\n }\n\n get isRunning(): boolean {\n return this.status === TileStatus.Running\n }\n\n get isSucceeded(): boolean {\n if (this.isQueued || this.isRunning) {\n return this.previousStatus === TileStatus.Success\n }\n\n return this.status === TileStatus.Success\n }\n\n get isFailed(): boolean {\n if (this.isQueued || this.isRunning) {\n return this.previousStatus === TileStatus.Failed\n }\n\n return this.status === TileStatus.Failed\n }\n\n get isWarning(): boolean {\n if (this.isQueued || this.isRunning) {\n return this.previousStatus === TileStatus.Warning\n }\n\n return this.status === TileStatus.Warning\n }\n\n get startedAt(): Date | undefined {\n if (this.build === undefined || this.build.startedAt === undefined) {\n return\n }\n\n return new Date(this.build.startedAt)\n }\n\n get finishedAt(): Date | undefined {\n if (this.build === undefined || this.build.finishedAt === undefined) {\n return\n }\n\n return new Date(this.build.finishedAt)\n }\n\n get duration(): number | undefined {\n if (this.startedAt === undefined) {\n return\n }\n\n return differenceInSeconds(this.now, this.startedAt)\n }\n\n get estimatedDuration(): number | undefined {\n if (this.build === undefined) {\n return\n }\n\n return this.build.estimatedDuration\n }\n\n get progress(): number | undefined {\n if (this.duration === undefined || this.estimatedDuration === undefined) {\n return\n }\n\n const progress = this.duration / this.estimatedDuration * 100\n\n return progress\n }\n\n get progressTime(): string | undefined {\n if (!this.progress || this.estimatedDuration === undefined || this.duration === undefined) {\n return\n }\n\n const totalSeconds = Math.abs(Math.round((this.estimatedDuration - this.duration)))\n\n const overtimePrefix = (this.progress > 100 ? 'Overtime: +' : '')\n const date = addSeconds(new Date(0), totalSeconds)\n const dateFormat = totalSeconds > 3600 ? 'hh:mm:ss' : 'mm:ss'\n\n return overtimePrefix + format(date, dateFormat)\n }\n\n get isOvertime(): boolean {\n if (this.progressTime === undefined) {\n return false\n }\n\n return this.progressTime.includes('+')\n }\n\n get progressBarStyle() {\n if (!this.progress) {\n return\n }\n\n const progress = Math.min(this.progress, 100)\n\n return {\n transform: `translateX(${-100 + progress}%)`,\n }\n }\n\n get finishedSince(): string | undefined {\n if (this.finishedAt === undefined) {\n return\n }\n\n return formatDistance(this.finishedAt, this.now) + ' ago'\n }\n\n get author(): TileAuthor | undefined {\n if (this.build === undefined) {\n return\n }\n\n return this.build.author\n }\n\n get showAuthor(): boolean {\n return this.author !== undefined && this.status === TileStatus.Failed\n }\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"c-monitoror-sub-tile\",class:_vm.classes},[_c('div',{staticClass:\"c-monitoror-sub-tile--content\"},[_c('div',{staticClass:\"c-monitoror-sub-tile--label\"},[(_vm.mergeRequestLabelPrefix)?[_vm._v(_vm._s(_vm.mergeRequestLabelPrefix))]:(_vm.branch)?[_vm._v(_vm._s(_vm.branch))]:_vm._e(),((_vm.mergeRequestLabelPrefix || _vm.branch) && _vm.label)?[_vm._v(\" @ \")]:_vm._e(),_vm._v(\" \"+_vm._s(_vm.label)+\" \")],2),_c('monitoror-tile-icon',{staticClass:\"c-monitoror-sub-tile--icon\",attrs:{\"tile-type\":_vm.type}}),(_vm.isRunning || _vm.isQueued)?[_c('div',{staticClass:\"c-monitoror-sub-tile--progress-time\",class:{'c-monitoror-sub-tile--progress-time__overtime': _vm.isOvertime}},[(_vm.isRunning)?[_vm._v(\" \"+_vm._s(_vm.progressTime)+\" \")]:[_vm._v(\" ••• \")]],2),_c('div',{staticClass:\"c-monitoror-sub-tile--progress\"},[_c('div',{staticClass:\"c-monitoror-sub-tile--progress-bar\",style:(_vm.progressBarStyle)})])]:_vm._e()],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"c-monitoror-tile-icon\"},[(_vm.isGroup)?_c('svg',{attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 24 24\"}},[_c('path',{staticStyle:{\"transform\":\"translate(-2px, 2px)\"},attrs:{\"d\":\"M21.41 17.91l-9 4A1.06 1.06 0 0 1 12 22a1 1 0 0 1-.41-.09l-9-4a1 1 0 0 1 .82-1.82L12 19.91l8.59-3.82a1 1 0 0 1 .82 1.82zm.5-6.32a1 1 0 0 0-1.32-.5L12 14.91l-8.59-3.82a1 1 0 0 0-.82 1.82l9 4A1 1 0 0 0 12 17a1.06 1.06 0 0 0 .4-.08l9-4a1 1 0 0 0 .51-1.33zm-.5-3.68l-9 4A1.06 1.06 0 0 1 12 12a1 1 0 0 1-.41-.09l-9-4a1 1 0 0 1 0-1.82l9-4A1.06 1.06 0 0 1 12 2a1 1 0 0 1 .41.09l9 4a.94.94 0 0 1 .5.5 1 1 0 0 1-.5 1.32zM18.54 7L12 4.09 5.46 7 12 9.91z\",\"stroke\":\"var(--tile-background)\",\"stroke-width\":\"0.3\",\"fill\":\"currentColor\"}})]):(_vm.isHttp)?_c('svg',{attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 128 128\",\"fill\":\"currentColor\"}},[_c('path',{attrs:{\"d\":\"M-.352 82.419V45.581h7.438V60.08H21.66V45.581h7.438v36.838H21.66V66.312H7.086v16.107H-.352zM45.079 82.419V51.813H34.148v-6.232h29.274v6.232H52.517v30.606h-7.438zM76.514 82.419V51.813H65.583v-6.232h29.274v6.232H83.951v30.606h-7.437zM99.656 82.419V45.581h11.936c4.523 0 7.471.185 8.845.553 2.11.553 3.878 1.755 5.302 3.606 1.423 1.851 2.135 4.242 2.135 7.174 0 2.262-.41 4.163-1.231 5.704-.821 1.541-1.864 2.751-3.128 3.631-1.265.879-2.551 1.462-3.857 1.746-1.776.352-4.347.528-7.715.528h-4.849v13.896h-7.438zm7.438-30.606v10.453h4.071c2.931 0 4.891-.192 5.879-.578.989-.385 1.763-.988 2.325-1.809.561-.821.841-1.776.841-2.864 0-1.341-.393-2.446-1.181-3.317-.787-.871-1.784-1.416-2.99-1.634-.888-.167-2.672-.251-5.352-.251h-3.593z\"}})]):(_vm.isPing)?_c('svg',{staticStyle:{\"transform\":\"scaleY(-1)\"},attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 64 48\"}},[_c('path',{attrs:{\"d\":\"M20 26a2 2 0 0 0 1.93-1.474l4.077-14.9 10.063 36.9c.525 1.923 3.232 1.98 3.836.08L46.45 26H62a2 2 0 0 0 0-4H45a2 2 0 0 0-1.906 1.394l-4.942 15.56L27.93 1.475c-.536-1.965-3.324-1.965-3.86 0L18.5 22H2a2 2 0 0 0 0 4h18z\",\"stroke\":\"currentColor\",\"stroke-width\":\"0.3\"}})]):(_vm.isPort)?_c('svg',{staticStyle:{\"transform\":\"scaleY(-1)\"},attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 30 30\"}},[_c('g',{staticStyle:{\"transform\":\"translate(-3px, -3px)\"}},[_c('path',{attrs:{\"d\":\"M19 27h-8c-.6 0-1-.4-1-1v-2H7.9c-.6 0-1-.4-1-1v-2.7H4.3c-.6 0-1-.4-1-1V4c0-.6.4-1 1-1h21.4c.6 0 1 .4 1 1v15.4c0 .6-.4 1-1 1h-2.6v2.7c0 .6-.4 1-1 1H20v2c0 .5-.5.9-1 .9zm-7-2h6v-2c0-.6.4-1 1-1h2.1v-2.7c0-.6.4-1 1-1h2.6V5H5.3v13.4h2.6c.6 0 1 .4 1 1v2.7H11c.6 0 1 .4 1 1V25z\"}}),_c('path',{attrs:{\"d\":\"M21.9 12.3c-.6 0-1-.4-1-1V7.9c0-.6.4-1 1-1s1 .4 1 1v3.4c0 .6-.4 1-1 1zM17.3 12.3c-.6 0-1-.4-1-1V7.9c0-.6.4-1 1-1s1 .4 1 1v3.4c0 .6-.4 1-1 1zM12.7 12.3c-.6 0-1-.4-1-1V7.9c0-.6.4-1 1-1s1 .4 1 1v3.4c0 .6-.4 1-1 1zM8.1 12.3c-.6 0-1-.4-1-1V7.9c0-.6.4-1 1-1s1 .4 1 1v3.4c0 .6-.4 1-1 1z\"}})])]):(_vm.isPingdom)?_c('svg',{attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 128 128\"}},[_c('path',{attrs:{\"d\":\"M60.938 60.755l1.102-.308a212.455 212.455 0 0 0 24.113-8.85 89.068 89.068 0 0 0 22.192-12.646A48.251 48.251 0 0 0 123.9 16.942a19.734 19.734 0 0 0 1.409-4.463c-10.788 14.749-53.557 16.289-53.557 16.289l10.096-9.261A140.85 140.85 0 0 0 0 46.082a77.044 77.044 0 0 1 43.41 19.419c5.791-1.796 11.711-3.079 17.528-4.695v-.051zM128 59.293a235.356 235.356 0 0 0-80.464 10.261 77.582 77.582 0 0 1 13.53 19.315C82.617 76.864 112.496 61.525 128 59.344v-.051zM63.782 95a77.006 77.006 0 0 1 4.869 20.521l37.593-38.657L63.782 95z\"}})]):(_vm.isGitHub)?_c('svg',{staticStyle:{\"transform\":\"translate(-1px, 2px)\"},attrs:{\"viewBox\":\"0 0 33 33\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"fill-rule\":\"evenodd\",\"clip-rule\":\"evenodd\",\"stroke-linejoin\":\"round\",\"stroke-miterlimit\":\"2\"}},[_c('path',{attrs:{\"d\":\"M16.288 0C7.293 0 0 7.293 0 16.29c0 7.197 4.667 13.302 11.14 15.457.815.149 1.112-.354 1.112-.786 0-.386-.014-1.411-.022-2.77-4.531.984-5.487-2.184-5.487-2.184-.741-1.881-1.809-2.382-1.809-2.382-1.479-1.011.112-.991.112-.991 1.635.116 2.495 1.679 2.495 1.679 1.453 2.489 3.813 1.77 4.741 1.354.148-1.053.568-1.771 1.034-2.178-3.617-.411-7.42-1.809-7.42-8.051 0-1.778.635-3.232 1.677-4.371-.168-.412-.727-2.068.159-4.311 0 0 1.368-.438 4.48 1.67a15.602 15.602 0 014.078-.548c1.383.006 2.777.187 4.078.548 3.11-2.108 4.475-1.67 4.475-1.67.889 2.243.33 3.899.162 4.311 1.044 1.139 1.675 2.593 1.675 4.371 0 6.258-3.809 7.635-7.438 8.038.585.503 1.106 1.497 1.106 3.017 0 2.177-.02 3.934-.02 4.468 0 .436.293.943 1.12.784 6.468-2.159 11.131-8.26 11.131-15.455C32.579 7.293 25.285 0 16.288 0\",\"fill\":\"currentColor\"}})]):(_vm.isGitLab)?_c('svg',{attrs:{\"viewBox\":\"0 0 56 52\",\"xmlns\":\"http://www.w3.org/2000/svg\"}},[_c('path',{attrs:{\"d\":\"M52.71 30.572L35.68 43.007l4.566-5.885 10.561-13.605 2.091 6.459a.53.53 0 0 1-.187.596m-49.49 0a.532.532 0 0 1-.19-.595l2.093-6.461 15.13 19.497-17.03-12.441M11.395 4.1l4.772 14.745H6.639L11.395 4.1m24.26 17.745l-7.682 23.769-7.684-23.769h15.366m8.887-17.744l4.765 14.744h-9.53l4.765-14.744M32.029 42.82l6.777-20.964H48.3L32.471 42.251l-.442.569M17.132 21.856l6.775 20.959L7.646 21.856h9.486m38.623 7.197l-2.944-9.09c-.006-.022-.006-.044-.013-.066l-5.872-18.17C46.58.692 45.579-.031 44.525.007a2.505 2.505 0 0 0-2.373 1.736l-5.527 17.11H19.318L13.78 1.743A2.502 2.502 0 0 0 11.409.008c-1.113-.041-2.054.686-2.407 1.737l-5.85 18.14-.007.015-2.967 9.16a3.53 3.53 0 0 0 1.273 3.941L27.075 51.72c.054.039.115.056.171.087l.016.01.01.007a1.464 1.464 0 0 0 .342.13l.002.001.05.009c.027.006.055.007.082.011.07.01.14.033.211.033.158 0 .315-.032.467-.081l.011-.003.009-.003c.055-.019.109-.041.162-.066.017-.008.033-.019.05-.027l.003-.002.005-.002.003-.002a1.6 1.6 0 0 0 .168-.102l.02-.01.002-.001L54.484 33a3.528 3.528 0 0 0 1.271-3.941\"}})]):(_vm.isTravis)?_c('svg',{attrs:{\"viewBox\":\"0 0 200 199\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"stroke\":\"currentColor\",\"stroke-width\":\"1.2\",\"stroke-linejoin\":\"round\"}},[_c('g',{staticStyle:{\"transform\":\"translateX(-14px)\"}},[_c('path',{attrs:{\"d\":\"M138.347 116.424a2.203 2.203 0 0 0 2.154-2.235 2.186 2.186 0 0 0-2.235-2.153 2.194 2.194 0 0 0 .081 4.388zm13.488 9.878c-2.89-1.396-6.059.377-11.828.484-4.292.151-7.896.198-8.132-6.543-.237-6.747 2.513-12.326 6.805-12.478 4.292-.15 8.207 5.2 8.735 11.931.145 1.854-.06 3.207-.521 4.21 3.996-.477 4.899 2.235 4.941 2.396z\"}}),_c('path',{attrs:{\"d\":\"M76.85 118.051a2.195 2.195 0 1 0-.122-4.388 2.195 2.195 0 0 0 .122 4.388zm6.634 3.529c.063 6.747-3.509 6.339-7.806 6.381-.435.011-.848.016-1.258.022-.482.011-.944.016-1.39.005-4.168-.005-6.833-.194-9.19 1.079.058-.145 1.09-2.461 4.835-3.4-.414-.914-.673-2.181-.742-3.937-.257-6.741 3.9-12.269 8.197-12.306 4.292-.042 7.289 5.411 7.354 12.156zM73.568 72.27a1.65 1.65 0 0 1-.098-.247c-1.975-7.187-1.889-14.723-1.712-18.199l-20.514 5.833c-1.38 8.982-.736 15.583-.597 16.797 1.703-.462 3.411-.887 5.131-1.284 2.836-.628 5.693-1.154 8.556-1.638 2.869-.478 5.747-.843 8.626-1.192.205-.027.404-.042.608-.07zm8.933-.864c-2.408-5.05-2.934-10.422-3.046-12.317-1.858-1.316-3.696-2.895-5.049-4.125-.119 3.631-.032 10.206 1.654 16.345.065.237.058.473 0 .694 2.145-.227 4.292-.425 6.441-.597zm56.78-.098c1.688-6.15 1.779-12.72 1.655-16.345-1.353 1.23-3.197 2.809-5.049 4.125-.114 1.896-.64 7.278-3.052 12.332 2.149.173 4.298.366 6.446.591a1.33 1.33 0 0 1 0-.703zm25.409 5.151c.14-1.207.789-7.809-.591-16.801l-20.52-5.833c.184 3.475.265 11.012-1.707 18.199a1.619 1.619 0 0 1-.101.258c.203.021.408.037.606.064 5.769.661 11.511 1.584 17.189 2.83 1.712.398 3.426.823 5.124 1.283zm3.297.968c2.755.902 5.526 1.858 8.036 3.325-1.343-.532-2.729-.913-4.126-1.257a70.385 70.385 0 0 0-4.201-.924c-2.82-.531-5.65-.982-8.498-1.327-2.841-.37-5.687-.682-8.546-.924-2.858-.241-5.709-.483-8.573-.65-11.447-.704-22.924-.88-34.41-.892-11.483.006-22.962.221-34.409.897-2.862.166-5.715.409-8.572.651-2.857.241-5.71.548-8.546.923-2.847.345-5.678.796-8.498 1.327-1.407.264-2.81.57-4.206.919-1.391.344-2.783.725-4.126 1.257 2.509-1.466 5.28-2.427 8.041-3.331.232-.075.467-.139.703-.214-.015-.059-.032-.113-.043-.177-.048-.317-1.069-7.859.709-18.645.086-.516.456-.935.962-1.075l2.917-.831c.634-22.625 9.952-33.266 10.243-33.594-8.326 13.397-8.25 29.286-8.106 32.986l18.128-5.152c.016-.005.026-.005.042-.01.076-.016.151-.027.226-.032.021 0 .049-.006.075-.006a1.19 1.19 0 0 1 .297.027c.015 0 .031.011.053.016.075.016.145.042.224.075.033.016.054.033.086.049.058.033.119.07.177.112.016.011.034.016.049.033l.032.032c.016.016.037.027.054.044.012.016.494.493 1.262 1.209-.182-5.973.102-23.108 8.262-37.31-.172.498-6.646 19.428-4.415 40.645.724.58 1.486 1.149 2.229 1.649.359.247.58.655.585 1.09.006.07.161 6.833 3.148 12.586.042.086.074.177.102.268 7.429-.505 14.878-.709 22.312-.714 7.436.005 14.88.22 22.307.731.027-.097.06-.193.109-.285 2.986-5.753 3.142-12.516 3.142-12.586.01-.436.231-.843.591-1.09.741-.5 1.493-1.069 2.224-1.649 2.234-21.217-4.24-40.147-4.411-40.645 8.153 14.201 8.444 31.336 8.262 37.31a62.536 62.536 0 0 0 1.261-1.209c.016-.016.039-.027.053-.044.012-.01.018-.021.033-.032.016-.016.033-.022.049-.033.06-.042.119-.079.177-.118.028-.01.054-.027.081-.043.081-.033.155-.059.236-.08.016 0 .033-.011.049-.011.096-.021.2-.032.296-.027.027 0 .049.006.07.006.075.005.156.016.231.032.012.006.028.006.042.01l18.129 5.152c.146-3.7.221-19.59-8.104-32.986.289.328 9.609 10.969 10.237 33.594l2.922.831c.499.14.875.559.962 1.075 1.777 10.786.752 18.328.708 18.645-.01.065-.026.124-.042.182.239.07.47.139.707.215z\"}}),_c('path',{attrs:{\"d\":\"M129.295 19.597v17.025h-12.069v-4.973h-2.719v22.98h4.108V67.48H97.506V54.629h4.092v-22.98h-2.711v4.973h-12.06V19.597h42.468z\"}}),_c('path',{attrs:{\"d\":\"M37.745 92.276a229.005 229.005 0 0 0-7.051 1.47l.829 3.127a103.93 103.93 0 0 1 6.222-4.597zm3.815 51.36a68.861 68.861 0 0 1-.621-2.102l-5.162-3.612a1.391 1.391 0 0 1-.586-.969l-2.516-20.449c-1.864.999-4.017 2.225-4.592 2.707-.497.409-.875 1.46-.336 6.332.668 6.01 3.712 17.333 5.348 18.979 1.968.347 6.327-.258 8.465-.886zm30.85-54.197a150.122 150.122 0 0 1 11.813-2.796c-5.798.212-11.6.481-17.393.808-3.366.186-6.715.414-10.065.667-1.678.129-3.345.263-5.007.445-.476.046-.942.098-1.418.16-4.369 2.614-21.127 13.134-32.631 26.889 11.179-7.769 30.654-19.443 54.701-26.173zm-2.159 9.949c3.251-3.225 6.605-5.886 9.567-7.967-11.415 2.651-21.923 6.543-31.128 10.778a360.846 360.846 0 0 1 21.561-2.811zm43.814-13.144c-2.31-.036-4.623-.057-6.933-.062h-.005c-3.39.005-6.787.041-10.189.109l-6.269 2.971c-.005.005-.041.021-.088.048-.942.46-9.174 4.613-16.919 12.021 6.943-3.65 17.146-8.418 29.153-12.115a144.186 144.186 0 0 1 11.25-2.972zm-3.816 18.788c1.827-1.103 3.582-2.366 5.249-3.712a422.33 422.33 0 0 0-7.278-.072c-10.137 0-19.606.415-28.189 1.061-8.61 4.209-13.875 7.672-13.998 7.76l-8.268 5.514 5.679-8.149a52.176 52.176 0 0 1 2.956-3.857c-9.536 1.066-17.477 2.329-23.41 3.422l3.038 24.632 10.453 7.321 33.184-7.377 6.212-20.465c.104-.337.331-.621.627-.793.098-.063.201-.109.315-.14.192-.052 3.51-.999 7.336-1.465l6.094-3.68zm3.354 78.632a45.604 45.604 0 0 0 3.184-.378 138.958 138.958 0 0 1-3.568-3.857 398.441 398.441 0 0 1-1.92 4.339h.243c.658.001 1.378-.071 2.061-.104zm17.4 7.461c-4.503-.332-8.598-2.205-11.903-5.477a271.86 271.86 0 0 0-.502-.512c-1.598.321-3.22.559-4.881.704-.698.026-1.361.087-2.091.087l-1.083.011-.413-.011c-4.396 6.539-14.159 7.813-14.605 7.87-.403.046-.734.103-1.191.186 5.442 1.491 10.996 2.138 16.474 1.77 5.492-.367 12.627-1.558 20.195-4.628zM127.416 89.04c.377-.471.729-.926 1.044-1.34-3.281.331-6.512.808-9.67 1.408-10.814 2.024-20.801 5.389-29.11 8.837a383.259 383.259 0 0 1 18.54-.455c3.908 0 7.708.067 11.404.176 3.179-3.056 5.861-6.182 7.792-8.626zm29.876-.926c-.01-.006-.02-.012-.031-.012a551.624 551.624 0 0 0-9.826-.651 905.6 905.6 0 0 0-13.667-.668 72.95 72.95 0 0 1-1.574 2.225c-2.479 3.355-7.398 9.51-13.704 14.729 8.926-1.6 24.409-5.56 37.803-14.905.336-.238.668-.486.999-.718zm15.034 51.593l-1.404.983-3.779 2.651-4.095 2.868c-.279.192-.621.28-.954.243l-40.746-4.633-2.966-.337a1.39 1.39 0 0 1-1.171-.977l-6.377-20.998c-1.066-.145-2.014-.219-2.81-.219-.809 0-1.751.073-2.817.219l-6.192 20.392a1.383 1.383 0 0 1-1.025.946l-43.435 9.672c-.103.02-.206.03-.305.03-.279 0-.559-.083-.798-.253l-1.578-1.098-4.726-3.307v-.011l-1.91-1.335c.135.43.289.85.441 1.268l-.006.006c.368 1.092 4.028 11.622 11.467 21.929a873.96 873.96 0 0 0 17.057-5.234c4.488-6.917 10.877-13.777 15.418-14.014a51.12 51.12 0 0 1 2.402-.061c2.221 0 4.344.16 6.31.393-1.671-1.517-2.013-3.298-2.256-4.085 0 0 5.793 4.53 13.17 3.584 7.378-.953 11.959-5.204 11.959-5.204s-.021 3.102-3.236 5.503c6.182-1.869 8.739-2.511 10.489-2.511 1.931 0 2.883.808 3.717 1.519.161.129.321.268.507.419a3519.302 3519.302 0 0 1 12.141 9.614c1.936.227 8.075.926 11.943 1.283 2.231.201 4.245.372 6.217.372.637 0 1.233-.026 1.797-.063 2.558-4.88 4.857-10.411 6.808-16.653.261-.96.516-1.928.743-2.901zm-2.303-11.845l2.992-20.948c-8.439-1.536-20.78-3.394-35.897-4.554-13.647 4.707-25.077 6.108-25.766 6.155l-.797.057c4.353.374 8.454 1.544 8.66 1.605.452.135.804.481.944.933l6.186 20.366 33.138 3.764 10.54-7.378zm8.07 4.411l3.385-23.676a240.127 240.127 0 0 0-5.731-1.169l-3.059 21.423a1.415 1.415 0 0 1-.575.942l-11.472 8.023c-.27.192-.616.28-.947.243l-34.572-3.929a1.391 1.391 0 0 1-1.176-.973l-6.227-20.5c-1.668-.431-5.949-1.43-9.696-1.43-3.764 0-8.041.999-9.708 1.43l-6.228 20.5a1.388 1.388 0 0 1-1.025.947l-34.572 7.692a1.483 1.483 0 0 1-.306.033 1.36 1.36 0 0 1-.792-.25l-11.467-8.029a1.396 1.396 0 0 1-.585-.968l-3.091-25.072c-1.284.249-2.443.487-3.479.703-.734.405-1.46.809-2.174 1.213l3.281 26.568 16.666 11.675 42.047-9.354 6.207-20.449a1.389 1.389 0 0 1 1.108-.975c1.574-.253 2.95-.382 4.116-.382 1.153 0 2.536.129 4.105.382.528.083.957.461 1.108.975l6.366 20.956 42.282 4.808 16.211-11.357zm4.68-27.237l2.977-11.29c-4.318-.978-12.27-2.615-23.1-4.148-5.53 3.976-11.582 7.155-17.53 9.691 18.199 1.771 31.57 4.406 37.653 5.747zm5.161 17.648c.456-5.052.058-6.139-.455-6.554-.513-.43-2.247-1.412-3.935-2.329l-2.779 19.464a1.39 1.39 0 0 1-.58.942l-3.977 2.781c-.315 1.593-.429 2.345-.817 3.903 2.273.528 5.999.938 7.775.595 1.612-1.748 4.214-12.61 4.768-18.802zm11.995-48.031a53.972 53.972 0 0 1-.258 8.733 55.462 55.462 0 0 1-1.619 8.605c-.4 1.414-.86 2.811-1.404 4.198a38.295 38.295 0 0 1-.89 2.071c-.161.341-.331.678-.523 1.025l-.284.512a8.975 8.975 0 0 1-.348.574l-.294.457-.461.237c-.492.254-.895.445-1.342.653l-1.298.585a88.22 88.22 0 0 1-2.62 1.065c-.611.239-1.15.457-1.662.674l-1.444 5.487c-.036-.009-.471-.12-1.283-.315l-.078.574c1.594.833 4.726 2.522 5.793 3.403 2.148 1.775 2.299 4.587 1.823 9.841-.244 2.697-1.139 7.946-2.381 12.767-2.144 8.298-3.283 9.273-4.753 9.649-.746.192-1.894.383-3.008.383-2.266 0-5.353.063-7.429-.439-.533 1.888-2.055 6.812-5.068 12.962.151-.073.3-.135.435-.207 3.717-1.952 10.861-5.064 11.162-5.199l5.643-2.452-2.89 5.435c-.067.118-6.264 11.773-10.059 19.383-3.769 7.538-10.835 9.179-15.065 10.151-.637.151-1.241.291-1.733.425-3.035.854-9.18 2.319-14.599 3.623-.064.016-.13.033-.197.042a64.057 64.057 0 0 1-10.955 5.411c-14.568 5.518-29.923 5.208-43.844.092a647.05 647.05 0 0 1-9.193 1.097 45.12 45.12 0 0 1-4.985.291c-13.264 0-20.294-6.736-25.425-13.331-5.493-7.062-12.212-17.546-12.497-17.985L31 159.053l6.585 2.961c3.152 1.419 12.524 5.757 15.205 7 .217-.061.43-.124.642-.186-4.457-6.357-8.112-13.605-10.695-21.634-2.195.662-5.576 1.175-8.206 1.175-.961 0-1.822-.072-2.484-.228-1.471-.336-3.148-1.754-5.431-9.795-1.325-4.668-2.314-9.764-2.603-12.387-.57-5.121-.466-7.864 1.662-9.636 1.283-1.071 5.611-3.344 6.507-3.809l-.192-1.58c-13.75 8.08-21.991 15.22-22.157 15.366L0 134.929l7.005-11.047c5.544-8.755 11.948-15.832 17.84-21.284-.244-.098-.471-.196-.71-.294l-1.299-.585a34.907 34.907 0 0 1-1.34-.653l-.461-.237-.295-.457c-.166-.249-.238-.388-.347-.574l-.29-.512c-.181-.347-.358-.684-.518-1.025a30.878 30.878 0 0 1-.89-2.071 44.74 44.74 0 0 1-1.404-4.198 54.745 54.745 0 0 1-1.62-8.605 54.664 54.664 0 0 1-.259-8.733c.078-1.455.218-2.909.419-4.354.103-.725.213-1.45.357-2.17.151-.734.297-1.418.519-2.221l.155-.564.404-.317c2.294-1.802 4.768-3.163 7.284-4.369a78.87 78.87 0 0 1 6.311-2.616c5.943-16.493 16.162-31.118 29.591-41.311C74.337 6.197 90.664.627 107.671.627s33.334 5.57 47.218 16.106c13.43 10.193 23.649 24.819 29.588 41.307a78.282 78.282 0 0 1 6.316 2.62c2.515 1.206 4.99 2.567 7.283 4.369l.404.317.156.564c.227.803.372 1.487.517 2.221.146.72.26 1.445.357 2.17.203 1.443.348 2.897.419 4.352zM40.499 56.337c-2.516 1.014-5.016 2.06-7.46 3.209-2.449 1.119-4.856 2.32-7.155 3.66-2.121 1.222-4.157 2.563-5.954 4.076-.077.455-.149.952-.211 1.423a51.357 51.357 0 0 0-.388 6.068c-.026 2.713.16 5.426.502 8.112.372 2.692.864 5.369 1.594 7.952a41.963 41.963 0 0 0 1.243 3.804c.233.623.492 1.228.762 1.818.134.294.274.585.413.864l.172.326c.201.104.409.207.605.3l1.206.574c.673.311 1.6.751 2.366 1.093.046-.037.088-.078.124-.114l-2.231-8.511c.471-.129 4.717-1.227 12.032-2.619a33.744 33.744 0 0 1-1.775-.379 36.704 36.704 0 0 1-4.898-1.563 22.857 22.857 0 0 1-2.309-1.119c-.741-.425-1.471-.905-2.035-1.547 8.035 2.624 24.637 1.433 39.398-.088 13.501-1.393 27.028-2.293 40.628-2.325 13.6.031 27.138.931 40.63 2.325 14.77 1.522 31.374 2.713 39.406.088-.564.642-1.293 1.122-2.034 1.547-.739.42-1.522.782-2.309 1.119a36.965 36.965 0 0 1-4.903 1.563c-.244.056-.492.114-.741.166 8.02 1.486 12.689 2.697 13.186 2.832l-2.138 8.107c.43-.192.864-.377 1.288-.574l1.207-.574c.196-.094.404-.196.606-.3l.166-.326c.144-.279.284-.57.419-.864.27-.591.528-1.196.767-1.818.471-1.231.879-2.51 1.236-3.804.731-2.583 1.228-5.26 1.595-7.952.346-2.686.528-5.4.502-8.112a52.755 52.755 0 0 0-.176-4.059 51.573 51.573 0 0 0-.213-2.009 29.83 29.83 0 0 0-.213-1.423c-1.797-1.513-3.831-2.853-5.954-4.076-2.299-1.34-4.704-2.541-7.159-3.66-2.438-1.149-4.943-2.195-7.46-3.209a138.835 138.835 0 0 0-3.801-1.476c-1.267-.491-2.552-.956-3.835-1.423 2.696.445 5.369 1.06 8.013 1.739 1.724.446 3.444.948 5.141 1.481-12.11-31.658-41.07-52.272-72.685-52.272-31.622 0-60.576 20.614-72.684 52.272a107.832 107.832 0 0 1 5.135-1.481c2.651-.678 5.322-1.294 8.02-1.739-1.29.466-2.568.931-3.842 1.423-1.268.47-2.535.967-3.799 1.475zm72.127 115.799l1.594 1.899c.036.046 3.577 4.26 7.906 8.552 2.879 2.853 6.357 4.297 10.343 4.297 1.361 0 2.791-.175 4.235-.523 1.34-.326 2.796-.673 4.287-1.03 5.384-1.287 11.482-2.749 14.438-3.577.585-.166 1.238-.315 1.925-.472 3.935-.909 9.329-2.163 12.187-7.889 2.149-4.297 5.047-9.874 7.197-13.961-1.863.859-3.816 1.79-5.203 2.52-2.138 1.123-4.938 1.667-8.558 1.667-2.152 0-4.266-.181-6.605-.389-4.675-.43-12.586-1.361-12.667-1.372l-.606-.067-.478-.383c-.071-.052-7.003-5.575-12.606-9.981a75.727 75.727 0 0 1-.621-.513c-.59-.503-.59-.503-.943-.503-1.796 0-7.019 1.62-18.461 5.167l-.703.223-.689-.26c-.078-.026-7.585-2.81-16.581-2.81-.736 0-1.47.019-2.185.056-.901.046-5.958 2.448-12.425 12.68l-.419.657-.741.238c-.107.037-11.238 3.63-23.042 7.005l-.766.218-.725-.337c-.077-.031-4.696-2.174-9.091-4.194 2.397 3.541 5.462 7.958 8.159 11.422 4.711 6.067 10.649 11.674 22.034 11.674 1.428 0 2.945-.088 4.503-.265 11.581-1.309 14.563-1.837 16.168-2.117.543-.092.973-.171 1.522-.238.088-.011 9.571-1.237 12.232-7.206 2.744-6.134 3.298-7.595 3.319-7.651l.968-2.583-.263-.245c.192-.207.383-.424.58-.632 0 .005 0 .005.005.005l.019.016c.306.218.611.45.916.684l-.159.218z\"}})])]):(_vm.isJenkins)?_c('svg',{attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 128 128\"}},[_c('path',{attrs:{\"d\":\"M127.15 104.133l-19.926-14.012c7.85-9.503 12.775-23.071 12.775-38.119 0-28.671-17.863-51.997-39.82-51.997a30.814 30.814 0 0 0-6.404.681 1.98 1.98 0 0 0-.518-.15C50.843-2.42 40.509 7.686 38.21 10.353c-9.702 2.47-12.73 10.147-13.079 14.684-.441.123-.81.23-1.08.31-12.501 4.261-6.903 24.066-6.288 26.11a20.664 20.664 0 0 0-2.772 10.545C14.99 71.375 20.72 79 27.762 79c.234 0 .465-.017.697-.033a51.953 51.953 0 0 0 5.413 12L1.409 111.314a3.057 3.057 0 0 0-1.011 4.094l6.895 11.613a2 2 0 1 0 3.44-2.042l-6.4-10.777 9.702-6.08 13.318 19.025a2 2 0 0 0 3.278-2.294l-13.202-18.858L26 100.622a41.22 41.22 0 0 0 34.653 18.533q.564 0 1.14-.013a1.963 1.963 0 0 0 .214-.027l-.014 4.918a3.917 3.917 0 0 0 1.873 3.357 4.014 4.014 0 0 0 3.93.182l10.534-5.252a7.496 7.496 0 0 0 4.561 1.875c.145.008.288.012.431.012a7.473 7.473 0 0 0 4.962-1.87c.168-.148.326-.304.479-.465l11.43 5.7a4.012 4.012 0 0 0 3.932-.182 3.917 3.917 0 0 0 1.872-3.357l-.017-6.147a22.458 22.458 0 0 0 13.411-14.318l4.186 2.944-7.127 18.777a2 2 0 1 0 3.74 1.42l7.679-20.23a1.999 1.999 0 0 0-.72-2.346zm-87.383-90.04a2.024 2.024 0 0 0 1.177-.766c.315-.423 7.037-9.164 23.938-9.326-7.758 4.231-14.278 11.578-18.64 20.838-4.082-2.762-11.631-1.907-16.909-.816.61-2.924 2.771-8.23 10.434-9.93zm21.929 101.05q-.52.013-1.032.012A37.216 37.216 0 0 1 29.39 98.498l6.73-4.217c5.164 6.96 13.285 13.664 25.706 14.712.057.004.115.006.17.006.014 0 .027-.003.04-.003l-.017 6.165a1.794 1.794 0 0 0-.323-.018zm2.239-10.55a4.004 4.004 0 0 0-.872.726 1.98 1.98 0 0 0-.9-.313c-21.175-1.785-28.304-21.652-29.866-27.095a11.856 11.856 0 0 0 2.458-1.653 2 2 0 1 0-2.62-3.023A6.687 6.687 0 0 1 27.763 75c-4.754 0-8.771-5.953-8.771-13s4.017-12.999 8.771-12.999a7.365 7.365 0 0 1 5.663 3.123 2 2 0 0 0 3.135-2.485 11.261 11.261 0 0 0-8.798-4.638 10.527 10.527 0 0 0-6.817 2.65c-1.109-5.199-2.545-16.153 4.326-18.495 6.478-1.936 16.724-3.397 19.229-.586.034.038.074.066.11.1a64.857 64.857 0 0 0-4.25 23.331 66.562 66.562 0 0 0 2.105 16.75h-4.473a2 2 0 1 0 0 4h6.967a2 2 0 0 0 2-2.037l-.01-.53a2.032 2.032 0 0 0-.082-.531 62.16 62.16 0 0 1-2.507-17.652c0-26.466 16.069-47.998 35.82-47.998 12.221 0 23.028 8.25 29.495 20.807a12.877 12.877 0 0 0-10.72.812 2 2 0 0 0 2.085 3.413c.234-.144 5.762-3.41 11.466 2.309A61.514 61.514 0 0 1 116 52.002c0 26.466-16.069 47.998-35.82 47.998a29.425 29.425 0 0 1-19.099-7.41 2 2 0 0 0-2.588 3.051A33.374 33.374 0 0 0 80.18 104c9.163 0 17.606-4.073 24.342-10.89l4.598 3.234c-.017.049-.04.094-.054.145a17.45 17.45 0 0 1-5.327 7.936 4 4 0 0 0-3.617.015l-12.489 6.35a7.517 7.517 0 0 0-8.044-.392l-11.717-5.958a4.01 4.01 0 0 0-3.936.153zm2.06 19.451l.063-16.039 10.61 5.396a7.204 7.204 0 0 0-.514 5.55zm20.785-7.039a3.328 3.328 0 0 1-1.14 2.33 3.5 3.5 0 0 1-2.525.866 3.394 3.394 0 0 1 .177-6.785c.066 0 .133.002.2.006a3.5 3.5 0 0 1 2.414 1.142 3.325 3.325 0 0 1 .874 2.44zm3.841 1.324a7.406 7.406 0 0 0 .154-1.102 7.283 7.283 0 0 0-.576-3.266l11.754-6.007.027 16.038zm15.348-4.778l-.016-5.61c0-.044-.007-.087-.009-.13a22.179 22.179 0 0 0 6.579-9.074l3.41 2.399a18.496 18.496 0 0 1-9.964 12.415z\"}}),_c('path',{attrs:{\"d\":\"M79.996 69.219a6.275 6.275 0 0 0 2.69 5.353 10.044 10.044 0 0 0 5.665 1.422 31.612 31.612 0 0 0 9.656-1.87c4.814-1.526 7.481-3.773 7.927-6.68.678-4.42-4.201-7.982-4.76-8.374a2.079 2.079 0 0 0-.204-.126c-7.402-3.963-9.935-17.172-9.96-17.306a2 2 0 0 0-3.934.727c.114.617 2.88 15.105 11.888 20.041 1.103.804 3.25 2.907 3.016 4.432-.188 1.223-2.076 2.489-5.266 3.502-3.307 1.21-9.431 2.534-11.772.93a2.31 2.31 0 0 1-.946-2.128 2 2 0 0 0-4 .077zM61.196 32.101c1.884-1.221 4.325-1.422 7.257-.595a2 2 0 0 0 1.084-3.85c-4.087-1.15-7.626-.784-10.516 1.089-4.96 3.215-5.966 9.692-6.006 9.967a2 2 0 1 0 3.958.582c.007-.05.819-4.987 4.223-7.193zM69.995 46.148a2 2 0 0 0-2.604 1.104l-1.25 3.088a2 2 0 0 0 1.324 2.678 24.595 24.595 0 0 0 6.498.977 12.123 12.123 0 0 0 5.624-1.197 4.354 4.354 0 0 0 2.254-2.595 3.765 3.765 0 0 0-.356-2.96l-4.694-8.231a2 2 0 0 0-3.474 1.981l4.63 8.122a.992.992 0 0 1-.196.128c-.987.51-3.124 1.154-7.025.43l.373-.92a2 2 0 0 0-1.104-2.605zM99.305 51.655a19.348 19.348 0 0 0 6.673 1.344 10.006 10.006 0 0 0 5.832-1.67 5.1 5.1 0 0 0 1.781-6.164 2.009 2.009 0 0 0-.16-.304l-5.78-8.944a2 2 0 0 0-3.36 2.171l5.662 8.763a1.07 1.07 0 0 1-.42 1.19c-1.157.802-3.27 1.456-6.952.468l.298-.829a2 2 0 0 0-3.764-1.355l-1 2.776a2 2 0 0 0 1.19 2.554zM88.668 78.8c-8.383 1.391-13.92-4.833-14.16-5.107a2 2 0 0 0-3.03 2.612c.261.302 5.876 6.699 14.743 6.699a18.869 18.869 0 0 0 3.104-.26 2 2 0 1 0-.657-3.945zM105.485 74.692c-1.219 1.409-4.509 2.655-8.8 3.333a2 2 0 0 0 .31 3.976 2.03 2.03 0 0 0 .315-.025c3.785-.599 8.801-1.894 11.2-4.666a2 2 0 0 0-3.025-2.618zM88.688 88.596c-14.958 2.334-19.716-6.142-19.923-6.525a2 2 0 0 0-3.547 1.848c.214.415 4.872 9.086 18.453 9.086a36.565 36.565 0 0 0 5.634-.457 2 2 0 1 0-.617-3.952zM23.902 56.318a2 2 0 0 0 1.162 3.828 3.45 3.45 0 0 1 4.525 2.474 2 2 0 0 0 3.805-1.237 7.464 7.464 0 0 0-9.491-5.065z\"}})]):(_vm.isAzure)?_c('svg',{attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 256 256\"}},[_c('path',{attrs:{\"d\":\"M193.412 58.029l62.586-11.421v157.685l.005.001-62.588 51.604-.004-.001-.001.001v-.001l-96.473-32.233V256L25.94 172.124l167.47 23.417V58.03L25.938 89.904v82.22L0 167.306V94.841l25.938-33.88 87.979-34.394V0l79.495 58.029z\",\"fill-rule\":\"nonzero\"}})]):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport Vue from 'vue'\nimport {Component, Prop} from 'vue-property-decorator'\n\nimport TileType from '@/enums/tileType'\n\n@Component\nexport default class MonitororTileIcon extends Vue {\n /*\n * Props\n */\n\n @Prop()\n private tileType!: TileType\n\n /*\n * Computed\n */\n\n get isGroup(): boolean {\n return this.tileType === TileType.Group\n }\n\n get isHttp(): boolean {\n return [\n TileType.HttpStatus,\n TileType.HttpRaw,\n TileType.HttpFormatted,\n ].includes(this.tileType)\n }\n\n get isPing(): boolean {\n return this.tileType === TileType.Ping\n }\n\n get isPort(): boolean {\n return this.tileType === TileType.Port\n }\n\n get isPingdom(): boolean {\n return [\n TileType.PingdomCheck,\n TileType.PingdomTransactionCheck,\n ].includes(this.tileType)\n }\n\n get isGitHub(): boolean {\n return [\n TileType.GitHubChecks,\n TileType.GitHubPullRequest,\n TileType.GitHubCount,\n ].includes(this.tileType)\n }\n\n get isGitLab(): boolean {\n return [\n TileType.GitLabPipeline,\n TileType.GitLabMergeRequest,\n TileType.GitLabIssues,\n ].includes(this.tileType)\n }\n\n get isTravis(): boolean {\n return this.tileType === TileType.Travis\n }\n\n get isJenkins(): boolean {\n return this.tileType === TileType.Jenkins\n }\n\n get isAzure(): boolean {\n return [\n TileType.AzureDevOpsBuild,\n TileType.AzureDevOpsRelease,\n ].includes(this.tileType)\n }\n}\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--14-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TileIcon.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--14-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TileIcon.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./TileIcon.vue?vue&type=template&id=06a9dfcc&\"\nimport script from \"./TileIcon.vue?vue&type=script&lang=ts&\"\nexport * from \"./TileIcon.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./TileIcon.vue?vue&type=style&index=0&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","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport {Component} from 'vue-property-decorator'\n\nimport TileStatus from '@/enums/tileStatus'\n\nimport AbstractMonitororTile from '@/classes/monitororTile'\nimport MonitororTileIcon from '@/components/TileIcon.vue'\n\n@Component({\n components: {\n MonitororTileIcon,\n },\n})\nexport default class MonitororSubTile extends AbstractMonitororTile {\n /*\n * Computed\n */\n\n get classes() {\n return {\n ['c-monitoror-sub-tile__theme-' + this.theme]: true,\n 'c-monitoror-sub-tile__status-succeeded': this.isSucceeded,\n 'c-monitoror-sub-tile__status-failed': this.isFailed,\n 'c-monitoror-sub-tile__status-warning': this.isWarning,\n 'c-monitoror-sub-tile__status-running': this.isRunning,\n 'c-monitoror-sub-tile__status-queued': this.isQueued,\n 'c-monitoror-sub-tile__status-canceled': this.status === TileStatus.Canceled,\n 'c-monitoror-sub-tile__status-action-required': this.status === TileStatus.ActionRequired,\n }\n }\n\n get progressTime(): string | undefined {\n if (super.progressTime === undefined) {\n return\n }\n\n return super.progressTime.replace('Overtime: ', '')\n }\n}\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--14-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SubTile.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--14-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SubTile.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./SubTile.vue?vue&type=template&id=1171e134&\"\nimport script from \"./SubTile.vue?vue&type=script&lang=ts&\"\nexport * from \"./SubTile.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./SubTile.vue?vue&type=style&index=0&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","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport {Component} from 'vue-property-decorator'\n\nimport DISPLAYABLE_SUBTILE_STATUS from '@/constants/displayableSubtileStatus'\nimport TileStatus from '@/enums/tileStatus'\nimport TileType from '@/enums/tileType'\nimport TileValueUnit from '@/enums/tileValueUnit'\nimport TileConfig from '@/interfaces/tileConfig'\n\nimport AbstractMonitororTile from '@/classes/monitororTile'\nimport MonitororSubTile from '@/components/SubTile.vue'\nimport MonitororTileIcon from '@/components/TileIcon.vue'\nimport TileValue from '@/interfaces/tileValue'\n\n@Component({\n components: {\n MonitororSubTile,\n MonitororTileIcon,\n },\n})\nexport default class MonitororTile extends AbstractMonitororTile {\n\n /*\n * Computed\n */\n\n get classes() {\n return {\n ['c-monitoror-tile__theme-' + this.theme]: true,\n 'c-monitoror-tile__empty': this.isEmpty,\n 'c-monitoror-tile__group': this.isGroup,\n 'c-monitoror-tile__status-succeeded': this.isSucceeded,\n 'c-monitoror-tile__status-failed': this.isFailed,\n 'c-monitoror-tile__status-warning': this.isWarning,\n 'c-monitoror-tile__status-running': this.isRunning,\n 'c-monitoror-tile__status-queued': this.isQueued,\n 'c-monitoror-tile__status-canceled': this.status === TileStatus.Canceled,\n 'c-monitoror-tile__status-action-required': this.status === TileStatus.ActionRequired,\n }\n }\n\n get styles() {\n const styles = {\n 'grid-column': `auto / span ${this.columnSpan}`,\n 'grid-row': `auto / span ${this.rowSpan}`,\n '--row-span': this.rowSpan,\n }\n\n return styles\n }\n\n get isEmpty(): boolean {\n return this.type === TileType.Empty\n }\n\n get isGroup(): boolean {\n return this.type === TileType.Group\n }\n\n get columnSpan(): number {\n return this.config.columnSpan || 1\n }\n\n get rowSpan(): number {\n return this.config.rowSpan || 1\n }\n\n get displayedSubTiles(): TileConfig[] | undefined {\n if (!this.config.tiles) {\n return\n }\n\n const displayedSubTiles = this.config.tiles.filter((subTile) => {\n if (!this.$store.state.tilesState.hasOwnProperty(subTile.stateKey)) {\n return false\n }\n\n return DISPLAYABLE_SUBTILE_STATUS.includes(this.$store.state.tilesState[subTile.stateKey].status)\n })\n\n return displayedSubTiles\n }\n\n get value(): TileValue | undefined {\n if (this.state === undefined) {\n return\n }\n\n return this.state.value\n }\n\n get message(): string | undefined {\n if (this.state === undefined) {\n return\n }\n\n return this.state.message\n }\n\n get buildId(): string | undefined {\n if (this.build === undefined) {\n return\n }\n\n return this.build.id\n }\n\n get unit(): TileValueUnit {\n if (this.value === undefined) {\n return TileValueUnit.Raw\n }\n\n return this.value.unit as TileValueUnit\n }\n\n get values(): string[] | undefined {\n if (this.value === undefined) {\n return\n }\n\n return this.value.values\n }\n\n get displayedValue(): string | undefined {\n if (this.values === undefined) {\n return\n }\n\n const UNIT_DISPLAY = {\n [TileValueUnit.Millisecond]: 'ms',\n [TileValueUnit.Ratio]: '%',\n [TileValueUnit.Number]: '',\n [TileValueUnit.Raw]: '',\n }\n\n let value = this.values[this.values.length - 1]\n if (this.unit === TileValueUnit.Millisecond) {\n value = Math.round(parseFloat(value)).toString()\n } else if (this.unit === TileValueUnit.Ratio) {\n value = (parseFloat(value) * 100).toFixed(2).toString()\n }\n\n return value + UNIT_DISPLAY[this.unit]\n }\n}\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--14-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Tile.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--14-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Tile.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Tile.vue?vue&type=template&id=6806074b&\"\nimport script from \"./Tile.vue?vue&type=script&lang=ts&\"\nexport * from \"./Tile.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Tile.vue?vue&type=style&index=0&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 () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"c-monitoror-welcome\",class:_vm.classes},[(_vm.shouldShowWelcomeNextStep)?[_c('h1',{staticClass:\"c-monitoror-welcome--title\"},[_vm._v(\"Welcome\")]),_c('h2',{staticClass:\"c-monitoror-welcome--subtitle\"},[_vm._v(\"You're almost there!\")]),_c('div',{staticClass:\"c-monitoror-welcome--content\"},[_c('div',{staticClass:\"c-monitoror-welcome--next-step-content\"},[_c('div',{staticClass:\"c-monitoror-welcome--next-step-sup-title\"},[_vm._v(\" Step \"+_vm._s(_vm.currentStep)+\" of 3 \")]),(_vm.currentStep === 1)?[_c('h3',{staticClass:\"c-monitoror-welcome--next-step-title\"},[_vm._v(\" Create your UI configuration \")]),_vm._m(0),_c('pre',[_c('code',[_vm._v(\"{\\n \\\"version\\\": \\\"2.0\\\",\\n \\\"columns\\\": 2,\\n \\\"tiles\\\": [\\n { \\\"type\\\": \\\"PORT\\\", \\\"label\\\": \\\"Welcome config example\\\", \\\"params\\\": { \\\"hostname\\\": \\\"127.0.0.1\\\", \\\"port\\\": \"+_vm._s(_vm.appPort)+\" } },\\n { \\\"type\\\": \\\"HTTP-RAW\\\", \\\"label\\\": \\\"Monitoror stars\\\", \\\"params\\\": { \\\"url\\\": \\\"https://github.com/monitoror/monitoror\\\", \\\"regex\\\": \\\"(\\\\\\\\d+) users starred\\\" } }\\n ]\\n}\")])]),_vm._m(1)]:_vm._e(),(_vm.currentStep === 2)?[_c('h3',{staticClass:\"c-monitoror-welcome--next-step-title\"},[_vm._v(\" Setup Core configuration \")]),_vm._m(2),_vm._m(3),_vm._m(4)]:_vm._e(),(_vm.currentStep === 3)?[_c('h3',{staticClass:\"c-monitoror-welcome--next-step-title\"},[_vm._v(\" Restart the Core \")]),_vm._m(5),_vm._m(6),_vm._m(7)]:_vm._e(),_c('div',{staticClass:\"c-monitoror-welcome--nav\"},[(_vm.currentStep > 1)?_c('button',{staticClass:\"c-monitoror-welcome--button c-monitoror-welcome--button__back\",on:{\"click\":function($event){_vm.currentStep -= 1}}},[_c('svg',{attrs:{\"viewBox\":\"0 0 32 32\",\"xmlns\":\"http://www.w3.org/2000/svg\"}},[_c('path',{attrs:{\"d\":\"M31.2 14L18.7 1.6c-1.1-1.1-3-1.1-4.1 0-1.1 1.1-1.1 2.9 0 4.1L25 16 14.6 26.3c-1.1 1.1-1.1 2.9 0 4.1 1.1 1.1 3 1.1 4.1 0L31.2 18c.6-.6.9-1.3.8-2 0-.7-.3-1.5-.8-2z\",\"fill\":\"currentColor\"}}),_c('path',{attrs:{\"d\":\"M2.3 13h22.9c1.3 0 2.3 1 2.3 2.3v1.5c0 1.3-1 2.3-2.3 2.3H2.3c-1.3 0-2.3-1-2.3-2.3v-1.5C0 14.1 1 13 2.3 13z\",\"fill\":\"currentColor\"}})]),_vm._v(\" Back \")]):_vm._e(),(_vm.currentStep < 3)?_c('button',{staticClass:\"c-monitoror-welcome--button c-monitoror-welcome--button__plain\",on:{\"click\":function($event){_vm.currentStep += 1}}},[_vm._v(\" Next step \"),_c('svg',{attrs:{\"viewBox\":\"0 0 32 32\",\"xmlns\":\"http://www.w3.org/2000/svg\"}},[_c('path',{attrs:{\"d\":\"M31.2 14L18.7 1.6c-1.1-1.1-3-1.1-4.1 0-1.1 1.1-1.1 2.9 0 4.1L25 16 14.6 26.3c-1.1 1.1-1.1 2.9 0 4.1 1.1 1.1 3 1.1 4.1 0L31.2 18c.6-.6.9-1.3.8-2 0-.7-.3-1.5-.8-2z\",\"fill\":\"currentColor\"}}),_c('path',{attrs:{\"d\":\"M2.3 13h22.9c1.3 0 2.3 1 2.3 2.3v1.5c0 1.3-1 2.3-2.3 2.3H2.3c-1.3 0-2.3-1-2.3-2.3v-1.5C0 14.1 1 13 2.3 13z\",\"fill\":\"currentColor\"}})])]):_vm._e(),(_vm.currentStep === 3)?_c('button',{staticClass:\"c-monitoror-welcome--button\",attrs:{\"disabled\":\"\"}},[_vm._v(\" You're done! 🎉 \")]):_vm._e()])],2)])]:[_vm._m(8),_c('h2',{staticClass:\"c-monitoror-welcome--subtitle\"},[_vm._v(\"Choose a configuration\")]),_c('div',{staticClass:\"c-monitoror-welcome--content c-monitoror-welcome--content__choose-configuration\"},[_vm._l((_vm.configList),function(configMetadata){return [_c('a',{staticClass:\"c-monitoror-welcome--button c-monitoror-welcome--button__card\",attrs:{\"href\":configMetadata.uiUrl}},[_c('code',[_vm._v(_vm._s(configMetadata.name))]),_c('svg',{attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 24 24\",\"fill\":\"currentcolor\"}},[_c('path',{attrs:{\"fill-rule\":\"evenodd\",\"d\":\"M11.31 2.525a9.648 9.648 0 011.38 0c.055.004.135.05.162.16l.351 1.45c.153.628.626 1.08 1.173 1.278.205.074.405.157.6.249a1.832 1.832 0 001.733-.074l1.275-.776c.097-.06.186-.036.228 0 .348.302.674.628.976.976.036.042.06.13 0 .228l-.776 1.274a1.832 1.832 0 00-.074 1.734c.092.195.175.395.248.6.198.547.652 1.02 1.278 1.172l1.45.353c.111.026.157.106.161.161a9.653 9.653 0 010 1.38c-.004.055-.05.135-.16.162l-1.45.351a1.833 1.833 0 00-1.278 1.173 6.926 6.926 0 01-.25.6 1.832 1.832 0 00.075 1.733l.776 1.275c.06.097.036.186 0 .228a9.555 9.555 0 01-.976.976c-.042.036-.13.06-.228 0l-1.275-.776a1.832 1.832 0 00-1.733-.074 6.926 6.926 0 01-.6.248 1.833 1.833 0 00-1.172 1.278l-.353 1.45c-.026.111-.106.157-.161.161a9.653 9.653 0 01-1.38 0c-.055-.004-.135-.05-.162-.16l-.351-1.45a1.833 1.833 0 00-1.173-1.278 6.928 6.928 0 01-.6-.25 1.832 1.832 0 00-1.734.075l-1.274.776c-.097.06-.186.036-.228 0a9.56 9.56 0 01-.976-.976c-.036-.042-.06-.13 0-.228l.776-1.275a1.832 1.832 0 00.074-1.733 6.948 6.948 0 01-.249-.6 1.833 1.833 0 00-1.277-1.172l-1.45-.353c-.111-.026-.157-.106-.161-.161a9.648 9.648 0 010-1.38c.004-.055.05-.135.16-.162l1.45-.351a1.833 1.833 0 001.278-1.173 6.95 6.95 0 01.249-.6 1.832 1.832 0 00-.074-1.734l-.776-1.274c-.06-.097-.036-.186 0-.228.302-.348.628-.674.976-.976.042-.036.13-.06.228 0l1.274.776a1.832 1.832 0 001.734.074 6.95 6.95 0 01.6-.249 1.833 1.833 0 001.172-1.277l.353-1.45c.026-.111.106-.157.161-.161zM12 1c-.268 0-.534.01-.797.028-.763.055-1.345.617-1.512 1.304l-.352 1.45c-.02.078-.09.172-.225.22a8.45 8.45 0 00-.728.303c-.13.06-.246.044-.315.002l-1.274-.776c-.604-.368-1.412-.354-1.99.147-.403.348-.78.726-1.129 1.128-.5.579-.515 1.387-.147 1.99l.776 1.275c.042.069.059.185-.002.315a8.45 8.45 0 00-.302.728c-.05.135-.143.206-.221.225l-1.45.352c-.687.167-1.249.749-1.304 1.512a11.149 11.149 0 000 1.594c.055.763.617 1.345 1.304 1.512l1.45.352c.078.02.172.09.22.225.09.248.191.491.303.729.06.129.044.245.002.314l-.776 1.274c-.368.604-.354 1.412.147 1.99.348.403.726.78 1.128 1.129.579.5 1.387.515 1.99.147l1.275-.776c.069-.042.185-.059.315.002.237.112.48.213.728.302.135.05.206.143.225.221l.352 1.45c.167.687.749 1.249 1.512 1.303a11.125 11.125 0 001.594 0c.763-.054 1.345-.616 1.512-1.303l.352-1.45c.02-.078.09-.172.225-.22.248-.09.491-.191.729-.303.129-.06.245-.044.314-.002l1.274.776c.604.368 1.412.354 1.99-.147.403-.348.78-.726 1.129-1.128.5-.579.515-1.387.147-1.99l-.776-1.275c-.042-.069-.059-.185.002-.315.112-.237.213-.48.302-.728.05-.135.143-.206.221-.225l1.45-.352c.687-.167 1.249-.749 1.303-1.512a11.125 11.125 0 000-1.594c-.054-.763-.616-1.345-1.303-1.512l-1.45-.352c-.078-.02-.172-.09-.22-.225a8.469 8.469 0 00-.303-.728c-.06-.13-.044-.246-.002-.315l.776-1.274c.368-.604.354-1.412-.147-1.99-.348-.403-.726-.78-1.128-1.129-.579-.5-1.387-.515-1.99-.147l-1.275.776c-.069.042-.185.059-.315-.002a8.465 8.465 0 00-.728-.302c-.135-.05-.206-.143-.225-.221l-.352-1.45c-.167-.687-.749-1.249-1.512-1.304A11.149 11.149 0 0012 1zm2.5 11a2.5 2.5 0 11-5 0 2.5 2.5 0 015 0zm1.5 0a4 4 0 11-8 0 4 4 0 018 0z\"}})])])]})],2)]],2)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('p',[_vm._v(\" As a starting point, save this in a \"),_c('code',[_vm._v(\"config.json\")]),_vm._v(\" file next to \"),_c('code',[_vm._v(\"monitoror\")]),_vm._v(\" binary: \")])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('p',{staticClass:\"note\"},[_c('strong',[_vm._v(\"Hey, what's that \\\"UI configuration\\\"?\")]),_vm._v(\" \"),_c('br'),_vm._v(\" It's a JSON file where you will define what you want to display. \")])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('p',[_vm._v(\" You need to tell to the Core that you have a new UI configuration. To do so, put the following in a file named \"),_c('code',[_vm._v(\".env\")]),_vm._v(\" next to \"),_c('code',[_vm._v(\"monitoror\")]),_vm._v(\" binary file: \")])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('pre',[_c('code',[_vm._v(\"MO_CONFIG=\\\"./config.json\\\"\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('p',{staticClass:\"note\"},[_c('strong',[_vm._v(\"Another configuration?\")]),_vm._v(\" \"),_c('br'),_vm._v(\" Yes! This one is mostly here to register UI configurations and to setup \"),_c('em',[_vm._v(\"monitorables\")]),_vm._v(\", which are things that you can use in your UI configurations. \")])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('p',[_vm._v(\" As you have updated the \"),_c('code',[_vm._v(\".env\")]),_vm._v(\" file, you need to stop and start again the \"),_c('code',[_vm._v(\"monitoror\")]),_vm._v(\" command, and you should see that in start logs: \")])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('pre',[_c('code',[_vm._v(\"AVAILABLE NAMED CONFIGURATIONS\\n\\n default -> ./config.json\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('p',{staticClass:\"note\"},[_c('strong',[_vm._v(\"Wait, when did I need to restart?\")]),_vm._v(\" \"),_c('br'),_vm._v(\" You need to restart the Core (the \"),_c('code',[_vm._v(\"monitoror\")]),_vm._v(\" binary) each time you update the \"),_c('code',[_vm._v(\".env\")]),_vm._v(\" file. \")])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('h1',{staticClass:\"c-monitoror-welcome--title\"},[_vm._v(\"Welcome \"),_c('span',{staticClass:\"hide-on-mobile\"},[_vm._v(\"back\")])])}]\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport {Component, Vue} from 'vue-property-decorator'\n\nimport Route from '@/enums/route'\nimport ConfigMetadata from '@/interfaces/configMetadata'\n\n@Component({})\nexport default class MonitororWelcome extends Vue {\n /*\n * Data\n */\n private currentStep: number = 1\n private shouldHaveScroll: boolean = false\n\n /*\n * Computed\n */\n\n get classes() {\n return {\n 'c-monitoror-welcome__no-scroll': !this.shouldHaveScroll,\n }\n }\n\n get shouldShowWelcomeNextStep(): boolean {\n const isOnWelcomeNextStepRoute = Route.Welcome === this.$store.getters.currentRoute\n\n return isOnWelcomeNextStepRoute || this.$store.getters.isNewUser\n }\n\n get configList(): ConfigMetadata[] {\n return this.$store.state.configList\n }\n\n get appPort(): string {\n const protocolPort = window.location.protocol === 'https:' ? '443' : '80'\n\n return window.location.port || protocolPort\n }\n\n /*\n * Methods\n */\n\n private mounted() {\n this.$store.dispatch('fetchConfigList')\n\n setTimeout(() => {\n this.shouldHaveScroll = true\n }, 1650)\n }\n}\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--14-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Welcome.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--14-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Welcome.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Welcome.vue?vue&type=template&id=656fc04b&\"\nimport script from \"./Welcome.vue?vue&type=script&lang=ts&\"\nexport * from \"./Welcome.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Welcome.vue?vue&type=style&index=0&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","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport {Component, Vue} from 'vue-property-decorator'\n\nimport MonitororErrors from '@/components/Errors.vue'\nimport MonitororTile from '@/components/Tile.vue'\nimport MonitororWelcome from '@/components/Welcome.vue'\nimport hasConfigVerifyErrors from '@/helpers/hasConfigVerifyErrors'\nimport ConfigError from '@/interfaces/configError'\nimport TileConfig from '@/interfaces/tileConfig'\n\n@Component({\n components: {\n MonitororErrors,\n MonitororTile,\n MonitororWelcome,\n },\n})\nexport default class App extends Vue {\n private static readonly SHOW_CURSOR_DELAY: number = 10 // 10 seconds\n\n /*\n * Data\n */\n\n private shouldShowCursor: boolean = true\n private shouldDisableTransitions: boolean = false\n private shouldShowCursorTimeout!: number\n private shouldDisableTransitionsTimeout!: number\n private taskRunnerInterval!: number\n private isReady: boolean = false\n\n /*\n * Computed\n */\n\n get classes() {\n return {\n 'c-app__disable-transitions': this.shouldDisableTransitions,\n ['c-app__theme-' + this.theme]: true,\n 'c-app__show-cursor': this.hasConfigVerifyErrors || this.shouldShowCursor,\n 'c-app__no-scroll': !this.shouldShowWelcomePage && !this.hasConfigVerifyErrors,\n 'c-app__config-verify-errors': !this.shouldShowWelcomePage && this.hasConfigVerifyErrors,\n 'c-app__welcome-page': this.shouldShowWelcomePage,\n }\n }\n\n get cssProperties() {\n const tilesCount = this.tiles.reduce((accumulator, tile) => {\n return accumulator + (tile.rowSpan || 1) * (tile.columnSpan || 1)\n }, 0)\n\n return {\n '--columns': this.columns,\n '--rows': Math.ceil(tilesCount / this.columns),\n '--zoom': this.zoom,\n }\n }\n\n get appLoadingClasses() {\n return {\n 'c-app--loading__error': !this.shouldShowWelcomePage && this.isOnline && this.hasErrors,\n 'c-app--loading__warning': !this.isOnline,\n 'c-app--loading__config-verify-errors': !this.shouldShowWelcomePage && this.hasConfigVerifyErrors,\n 'c-app--loading__small-logo': this.shouldShowWelcomePage || this.hasConfigVerifyErrors,\n }\n }\n\n get shouldInit(): boolean {\n return this.$store.getters.shouldInit\n }\n\n get columns(): number {\n return this.$store.state.columns\n }\n\n get zoom(): number {\n return this.$store.state.zoom\n }\n\n get tiles(): TileConfig[] {\n return this.$store.state.tiles\n }\n\n get errors(): ConfigError[] {\n return this.$store.state.errors\n }\n\n get hasErrors(): boolean {\n return this.errors.length > 0\n }\n\n get hasConfigVerifyErrors(): boolean {\n return hasConfigVerifyErrors(this.errors)\n }\n\n get loadingProgress(): number {\n return this.$store.getters.loadingProgress\n }\n\n get loadingProgressBarStyle() {\n return {\n transform: `translateX(-${100 - this.loadingProgress * 100}%)`,\n }\n }\n\n get shouldShowLoading(): boolean {\n return this.loadingProgress < 1 || !this.isOnline || this.hasErrors\n }\n\n get shouldShowWelcomePage(): boolean {\n return this.isReady && this.$store.getters.shouldShowWelcomePage\n }\n\n get isOnline(): boolean {\n return this.$store.state.online\n }\n\n get theme(): string {\n return this.$store.getters.theme.toString().toLowerCase()\n }\n\n /*\n * Methods\n */\n\n public resetShowCursorTimeout() {\n clearTimeout(this.shouldShowCursorTimeout)\n this.shouldShowCursor = true\n this.shouldShowCursorTimeout = setTimeout(() => {\n this.shouldShowCursor = false\n }, App.SHOW_CURSOR_DELAY * 1000)\n }\n\n public dispatchUpdateNetworkState() {\n return this.$store.dispatch('updateNetworkState')\n }\n\n public onResize() {\n clearTimeout(this.shouldDisableTransitionsTimeout)\n this.shouldDisableTransitions = true\n this.shouldShowCursorTimeout = setTimeout(() => {\n this.shouldDisableTransitions = false\n }, App.SHOW_CURSOR_DELAY * 1000)\n }\n\n /*\n * Hooks\n */\n\n private async mounted() {\n await Vue.nextTick()\n\n window.addEventListener('online', this.dispatchUpdateNetworkState)\n window.addEventListener('offline', this.dispatchUpdateNetworkState)\n window.addEventListener('resize', this.onResize)\n\n this.taskRunnerInterval = setInterval(() => {\n this.$store.dispatch('runTasks')\n }, 50)\n\n if (this.shouldInit) {\n await this.$store.dispatch('init')\n }\n\n setTimeout(() => {\n this.isReady = true\n })\n }\n\n private beforeDestroy() {\n window.removeEventListener('online', this.dispatchUpdateNetworkState)\n window.removeEventListener('offline', this.dispatchUpdateNetworkState)\n window.removeEventListener('resize', this.onResize)\n\n clearTimeout(this.shouldShowCursorTimeout)\n clearInterval(this.taskRunnerInterval)\n\n this.$store.dispatch('killAllTasks', [])\n }\n}\n","import mod from \"-!../node_modules/cache-loader/dist/cjs.js??ref--14-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/ts-loader/index.js??ref--14-3!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../node_modules/cache-loader/dist/cjs.js??ref--14-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/ts-loader/index.js??ref--14-3!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=5118a043&\"\nimport script from \"./App.vue?vue&type=script&lang=ts&\"\nexport * from \"./App.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./App.vue?vue&type=style&index=0&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","import Vue from 'vue'\n\nimport App from './App.vue'\nimport store from './store'\n\nVue.config.productionTip = false\n\nexport default new Vue({\n store,\n render: h => h(App),\n}).$mount('#app')\n"],"sourceRoot":""}