{ "version": 3, "sources": ["../ui/app/components/directives/mn_detail_stats_controller.js"], "sourcesContent": ["/*\nCopyright 2019-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\nimport mnStatisticsNewService from '../../mn_admin/mn_statistics_service.js';\nimport mnStatisticsDescriptionService from '../../mn_admin/mn_statistics_description_service.js';\nimport mnStatisticsChart from '../../mn_admin/mn_statistics_chart_directive.js';\nimport mnHelper from '../mn_helper.js';\nimport mnPoolDefault from '../mn_pool_default.js';\nimport mnPermissions from '../mn_permissions.js';\n\nexport default 'mnDetailStatsModule';\n\nangular\n .module('mnDetailStatsModule', [\n mnStatisticsNewService,\n mnStatisticsDescriptionService,\n mnStatisticsChart,\n mnHelper,\n mnPoolDefault,\n mnPermissions\n ])\n .component('mnDetailStats', {\n bindings: {\n mnTitle: \"@\",\n bucket: \"@\",\n itemId: \"@\",\n service: \"@\",\n prefix: \"@\",\n nodeName: \"@?\"\n },\n template: \"\",\n controller: [\"mnStatisticsNewService\", \"mnStatisticsDescriptionService\", \"mnHelper\", \"$scope\", \"mnPoolDefault\", \"mnPermissions\", controller]\n });\n\nfunction controller(mnStatisticsNewService, mnStatisticsDescriptionService, mnHelper, $scope, mnPoolDefault, mnPermissions) {\n var vm = this;\n\n vm.zoom = \"minute\";\n vm.onSelectZoom = onSelectZoom;\n vm.items = {};\n vm.$onInit = activate;\n\n function onSelectZoom(selectedOption) {\n activate(selectedOption);\n }\n\n function getStats(stat) {\n var rv = {};\n rv[\"@\" + vm.service + \"-.@items.\" + stat] = true;\n return rv;\n }\n\n function activate(selectedZoom) {\n let permissions = mnPermissions.export.cluster.collection[(vm.bucket || \".\") + ':.:.'];\n vm.isComponentDisabled = !(permissions && permissions.stats.read);\n\n if (vm.isComponentDisabled) {\n return;\n }\n\n selectedZoom = selectedZoom || vm.zoom;\n vm.scope = $scope;\n vm.mnAdminStatsPoller = mnStatisticsNewService.mnAdminStatsPoller;\n vm.mnAdminStatsPoller.heartbeat\n .setInterval(mnStatisticsNewService.defaultZoomInterval(selectedZoom));\n vm.items[vm.service] =\n mnPoolDefault.export.compat.atLeast70 ? vm.itemId : (vm.prefix + \"/\" + vm.itemId + \"/\");\n var stats = mnStatisticsDescriptionService.getStats();\n vm.charts = Object\n .keys(stats[\"@\" + vm.service + \"-\"][\"@items\"])\n .filter(function (key) {\n let item = stats[\"@\" + vm.service + \"-\"][\"@items\"][key];\n return item && !!item.desc;\n })\n .map(function (stat) {\n return {\n node: vm.nodeName,\n preset: true,\n id: mnHelper.generateID(),\n isSpecific: false,\n size: \"small\",\n stats: getStats(stat)\n };\n });\n }\n}\n"], "mappings": "uaAmBA,GAAO,oCAAQ,sBAEf,UACG,OAAO,sBAAuB,CAC7B,8BACA,0CACA,sCACA,kBACA,wBACA,yBAED,UAAU,gBAAiB,CAC1B,SAAU,CACR,QAAS,IACT,OAAQ,IACR,OAAQ,IACR,QAAS,IACT,OAAQ,IACR,SAAU,MAEZ,SAAU,uFACV,WAAY,CAAC,yBAA0B,iCAAkC,WAAY,SAAU,gBAAiB,gBAAiB,cAGrI,oBAAoB,uBAAwB,+BAAgC,SAAU,OAAQ,cAAe,cAAe,CAC1H,GAAI,IAAK,KAET,GAAG,KAAO,SACV,GAAG,aAAe,aAClB,GAAG,MAAQ,GACX,GAAG,QAAU,SAEb,sBAAsB,eAAgB,CACpC,SAAS,gBADF,oCAIT,kBAAkB,KAAM,CACtB,GAAI,IAAK,GACT,UAAG,IAAM,GAAG,QAAU,YAAc,MAAQ,GACrC,GAHA,4BAMT,kBAAkB,aAAc,CAC9B,GAAI,aAAc,cAAc,OAAO,QAAQ,WAAY,IAAG,QAAU,KAAO,QAG/E,GAFA,GAAG,oBAAsB,CAAE,cAAe,YAAY,MAAM,MAExD,IAAG,oBAIP,cAAe,cAAgB,GAAG,KAClC,GAAG,MAAQ,OACX,GAAG,mBAAqB,uBAAuB,mBAC/C,GAAG,mBAAmB,UACnB,YAAY,uBAAuB,oBAAoB,eAC1D,GAAG,MAAM,GAAG,SACV,cAAc,OAAO,OAAO,UAAY,GAAG,OAAU,GAAG,OAAS,IAAM,GAAG,OAAS,IACrF,GAAI,OAAQ,+BAA+B,WAC3C,GAAG,OAAS,OACT,KAAK,MAAM,IAAM,GAAG,QAAU,KAAK,WACnC,OAAO,SAAU,IAAK,CACrB,GAAI,MAAO,MAAM,IAAM,GAAG,QAAU,KAAK,UAAU,KACnD,MAAO,OAAQ,CAAC,CAAC,KAAK,OAEvB,IAAI,SAAU,KAAM,CACnB,MAAO,CACL,KAAM,GAAG,SACT,OAAQ,GACR,GAAI,SAAS,aACb,WAAY,GACZ,KAAM,QACN,MAAO,SAAS,UA7Bf,4BAlBF", "names": [] }