{ "version": 3, "sources": ["../ui/app/components/mn_tasks_details.js", "../ui/app/mn_admin/mn_settings_auto_failover_service.js"], "sourcesContent": ["/*\nCopyright 2021-Present Couchbase, Inc.\n\nUse of this software is governed by the Business Source License included in\nthe file licenses/BSL-Couchbase.txt. As of the Change Date specified in that\nfile, in accordance with the Business Source License, use of this software will\nbe governed by the Apache License, Version 2.0, included in the file\nlicenses/APL2.txt.\n*/\n\nimport angular from 'angular';\nimport _ from 'lodash';\nimport {downgradeInjectable, setAngularJSGlobal} from '@angular/upgrade/static';\nsetAngularJSGlobal(angular);\nimport {MnTasksService} from '../mn.tasks.service.js';\n\nexport default 'mnTasksDetails';\n\nangular\n .module('mnTasksDetails', [])\n .factory('mnTasksDetails', [\"$http\", \"$cacheFactory\", \"mnTasksService\", mnTasksDetailsFactory])\n .factory('mnTasksService', downgradeInjectable(MnTasksService));\n\nfunction mnTasksDetailsFactory($http, $cacheFactory, mnTasksService) {\n var mnTasksDetails = {\n get: get,\n clearCache: clearCache,\n getFresh: getFresh,\n getRebalanceReport: getRebalanceReport,\n clearRebalanceReportCache: clearRebalanceReportCache\n };\n\n return mnTasksDetails;\n\n function getRebalanceReport(url) {\n return $http({\n url: url || \"/logs/rebalanceReport\",\n cache: true,\n method: 'GET'\n }).then(null,function () {\n return {data: {stageInfo: {}}};\n });\n }\n\n function clearRebalanceReportCache(url) {\n $cacheFactory.get('$http').remove(url || \"/logs/rebalanceReport\");\n return this;\n }\n\n function get(mnHttpParams) {\n return $http({\n url: '/pools/default/tasks',\n method: 'GET',\n cache: true,\n mnHttp: mnHttpParams\n }).then(function (resp) {\n var rv = {};\n var tasks = resp.data;\n\n rv.tasks = tasks;\n rv.tasksXDCR = _.filter(tasks, detectXDCRTask);\n rv.tasksCollectInfo = _.filter(tasks, detectCollectInfoTask);\n rv.tasksRecovery = _.detect(tasks, detectRecoveryTasks);\n rv.tasksRebalance = _.detect(tasks, detectRebalanceTasks);\n rv.tasksWarmingUp = _.filter(tasks, detectWarmupTask);\n rv.tasksBucketCompaction = _.filter(tasks, detectBucketCompactionTask);\n rv.tasksViewCompaction = _.filter(tasks, detectViewCompactionTask);\n rv.inRebalance = !!(rv.tasksRebalance && rv.tasksRebalance.status === \"running\");\n rv.inRecoveryMode = !!rv.tasksRecovery;\n rv.loadingSamples = _.filter(tasks, detectLoadingSamples);\n rv.isLoadingSamples = !!_.detect(tasks, detectLoadingSamples);\n rv.stopRecoveryURI = rv.tasksRecovery && rv.tasksRecovery.stopURI;\n rv.isSubtypeFailover =\n !!(rv.tasksRebalance &&\n ['gracefulFailover', 'failover'].includes(rv.tasksRebalance.subtype));\n rv.running = _.filter(tasks, function (task) {\n return task.status === \"running\";\n });\n rv.isOrphanBucketTask = !!_.detect(tasks, detectOrphanBucketTask);\n\n mnTasksService.stream.tasksXDCRPlug.next(rv.tasksXDCR);\n mnTasksService.stream.tasksWarmingUpPlug.next(rv.tasksWarmingUp);\n mnTasksService.stream.tasksBucketCompactionPlug.next(rv.tasksBucketCompaction);\n mnTasksService.stream.tasksViewCompactionPlug.next(rv.tasksViewCompaction);\n mnTasksService.stream.tasksLoadingSamples.next(rv.loadingSamples);\n\n let noCollectInfoTask = {\n nodesByStatus: {},\n nodeErrors: [],\n status: 'idle',\n perNode: {}\n };\n mnTasksService.stream.taskCollectInfoPlug.next(rv.tasksCollectInfo[0] || noCollectInfoTask);\n\n return rv;\n });\n }\n\n function detectXDCRTask(taskInfo) {\n return taskInfo.type === 'xdcr';\n }\n\n function detectCollectInfoTask(taskInfo) {\n return taskInfo.type === 'clusterLogsCollection';\n }\n\n function detectOrphanBucketTask(taskInfo) {\n return taskInfo.type === \"orphanBucket\";\n }\n\n function detectRecoveryTasks(taskInfo) {\n return taskInfo.type === \"recovery\";\n }\n\n function detectRebalanceTasks(taskInfo) {\n return taskInfo.type === \"rebalance\";\n }\n\n function detectLoadingSamples(taskInfo) {\n return taskInfo.type === \"loadingSampleBucket\" && taskInfo.status === \"running\";\n }\n\n function detectWarmupTask(taskInfo) {\n return taskInfo.type === 'warming_up' && taskInfo.status === 'running';\n }\n\n function detectBucketCompactionTask(taskInfo) {\n return taskInfo.type === 'bucket_compaction';\n }\n\n function detectViewCompactionTask(taskInfo) {\n return taskInfo.type === 'view_compaction' || taskInfo.type === 'indexer';\n }\n\n function clearCache() {\n $cacheFactory.get('$http').remove('/pools/default/tasks');\n return this;\n }\n\n function getFresh(mnHttpParams) {\n return mnTasksDetails.clearCache().get(mnHttpParams);\n }\n}\n", "/*\nCopyright 2020-Present Couchbase, Inc.\n\nUse of this software is governed by the Business Source License included in\nthe file licenses/BSL-Couchbase.txt. As of the Change Date specified in that\nfile, in accordance with the Business Source License, use of this software will\nbe governed by the Apache License, Version 2.0, included in the file\nlicenses/APL2.txt.\n*/\n\nimport angular from \"angular\";\n\nexport default 'mnSettingsAutoFailoverService';\n\nangular\n .module('mnSettingsAutoFailoverService', [])\n .factory('mnSettingsAutoFailoverService', [\"$http\", mnSettingsAutoFailoverServiceFactory]);\n\nfunction mnSettingsAutoFailoverServiceFactory($http) {\n var mnSettingsAutoFailoverService = {\n resetAutoFailOverCount: resetAutoFailOverCount,\n resetAutoReprovisionCount: resetAutoReprovisionCount,\n getAutoFailoverSettings: getAutoFailoverSettings,\n saveAutoFailoverSettings: saveAutoFailoverSettings,\n getAutoReprovisionSettings: getAutoReprovisionSettings,\n postAutoReprovisionSettings: postAutoReprovisionSettings\n };\n\n return mnSettingsAutoFailoverService;\n\n function resetAutoFailOverCount(mnHttpParams) {\n return $http({\n method: 'POST',\n url: '/settings/autoFailover/resetCount',\n mnHttp: mnHttpParams\n });\n }\n function getAutoFailoverSettings() {\n return $http({\n method: 'GET',\n url: \"/settings/autoFailover\"\n }).then(function (resp) {\n return resp.data;\n });\n }\n function saveAutoFailoverSettings(autoFailoverSettings, params) {\n return $http({\n method: 'POST',\n url: \"/settings/autoFailover\",\n data: autoFailoverSettings,\n params: params\n });\n }\n function getAutoReprovisionSettings() {\n return $http({\n method: 'GET',\n url: \"/settings/autoReprovision\"\n });\n }\n function postAutoReprovisionSettings(settings, params) {\n return $http({\n method: 'POST',\n url: \"/settings/autoReprovision\",\n data: settings,\n params: params\n });\n }\n function resetAutoReprovisionCount(mnHttpParams) {\n return $http({\n method: 'POST',\n url: \"/settings/autoReprovision/resetCount\",\n mnHttp: mnHttpParams\n });\n }\n}\n"], "mappings": "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", "names": [] }