{"version":3,"sources":["webpack:///./node_modules/core-js/modules/es.set.constructor.js","webpack:///./src/mixins/dashboard.js","webpack:///./node_modules/d3-color/src/define.js","webpack:///./node_modules/d3-color/src/color.js","webpack:///./node_modules/d3-color/src/math.js","webpack:///./node_modules/d3-color/src/cubehelix.js","webpack:///./node_modules/d3-interpolate/src/constant.js","webpack:///./node_modules/d3-interpolate/src/color.js","webpack:///./node_modules/d3-interpolate/src/cubehelix.js","webpack:///./node_modules/d3-scale-chromatic/src/sequential-multi/rainbow.js","webpack:///./node_modules/core-js/modules/es.set.js","webpack:///./src/modules/user/components/CreditUtilization.vue?3428","webpack:///./src/modules/user/components/CreditUtilization.vue","webpack:///src/modules/user/components/CreditUtilization.vue","webpack:///./src/modules/user/components/CreditUtilization.vue?3fd0","webpack:///./src/modules/user/components/CreditUtilization.vue?e6c3","webpack:///./src/mixins/usageAndResources.js"],"names":["collection","collectionStrong","init","this","arguments","length","undefined","BarChart","DoughnutChart","DashboardLoader","DashboardEmpty","DashboardError","components","props","rpid","Number","oid","sid","dates","Array","data","othersSliceColor","computed","reportURL","url","methods","dateToLabel","labels","map","item","split","year","month","date","findBarChartGroupingResolution","chartData","startDate","DateTime","fromISO","Object","keys","endDate","reverse","duration","diff","as","months","dataInGBs","NaN","roundDataItems","roundDataItem","limit","parseFloat","repeat","precision","toFixed","watch","handler","fetchAllCharts","immediate","newDatePair","constructor","prototype","factory","extend","parent","definition","create","key","Color","darker","brighter","reI","reN","reP","reHex","reRgbInteger","RegExp","reRgbPercent","reRgbaInteger","reRgbaPercent","reHslPercent","reHslaPercent","named","aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkgrey","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","green","greenyellow","grey","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightgrey","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","slategrey","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen","color_formatHex","rgb","formatHex","color_formatHex8","formatHex8","color_formatHsl","hslConvert","formatHsl","color_formatRgb","formatRgb","color","format","m","l","trim","toLowerCase","exec","parseInt","rgbn","Rgb","rgba","hsla","hasOwnProperty","n","r","g","b","a","rgbConvert","o","opacity","rgb_formatHex","hex","rgb_formatHex8","isNaN","rgb_formatRgb","clampa","clampi","Math","max","min","value","round","toString","h","s","Hsl","hsl","clamph","clampt","hsl2rgb","m1","m2","define","channels","assign","displayable","k","pow","radians","PI","degrees","A","B","C","D","E","ED","EB","BC_DA","cubehelixConvert","Cubehelix","bl","sqrt","atan2","cosh","cos","sinh","sin","x","linear","d","t","constant","nogamma","hue","cubehelixGamma","y","cubehelix","start","end","gamma","cubehelixLong","c","floor","ts","abs","expression","class","isIntersecting","width","_vm","sidebarWidth","description","icon","_c","attrs","staticClass","style","fetchingChartData","creditByResource","on","creditBySublevels","handleLegendClickSublevel","_e","_v","stacked","hasData","staticRenderFns","colorStart","colorEnd","useEndAsStart","name","mixins","rawChartData","credit_by_sublevels","credit_utilization","selectedResourceTypes","availableResourceTypes","ignoredSublevels","colors","intersectionObserver","options","rootMargin","threshold","doughnutChartSlicesLimit","mounted","datasets","backgroundColor","meta","creditUtilizationTimeLine","targetBarCount","set","totalCreditsByResources","totalCreditsbySublevels","activeLabels","list","creditUsageTimelineResolution","currentSublevel","onIntersect","groupBarChartDataByDate","label","currentDayLabel","total","sumByResources","e","code","valueSum","sumBySublevels","limitDoughnutChartArcs","slices","getUsedResourceTypes","reduce","fetchChartData","payload","start_date","end_date","console","rawChartDataKeys","promises","Promise","values","toggle","indexOfResource","handleLegendClickResource","isError","component","usageAndResources","relationActionTypes","REMOVE","MAP","relationActionLevel","ORGANIZATION","SPACE","contractTypes","type","nuvolosPackageTypes","EDUCATION","MIXED","RESEARCH","metrics","APP_USAGE","HPC_USAGE","USERS_STATISTICS","INVITATION_STATISTICS","resourceTypes","performingOperation","resourcePoolResources","dateRangeOptionsRanges","dataDateRange","selectedDateRangeOption","dateRangeOptions","doughnutChartColors","rules","required","isFloat","isInteger","rangeRequired","dateOrder","areDatesInOrder","isNegative","isPositive","roundNumber","number","updateDateRange","setDateRanges","Date","endString","toISOString","slice","currentMonth","UTC","getFullYear","getMonth","previousMonth","setMonth","previousMonthStart","previousMonthEnd","previousMonthStartString","previousMonthEndString","lastThirtyDays","setDate","getDate","getResourceTypeByCode","resourceCode","resource","find","resourceType","fetchResourcePoolResources","$store","dispatch","$axios","get","then","response","catch","snackBarText","snackBarTimeout","snackBarIcon","finally","mapResourcePool","resourcePoolIdentifier","nuvolosIdentifier","resourceTypeToMap","baseURL","apiURL","put","error","deleteResourceMapping","delete"],"mappings":"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ArB,qBACAV,kBACAG,gBACA6B,sBACAlT,yBACAmT,SAEAC,gCACAC,cAGAxT,sFACAyT,6BAGAC,mBACA,kDACA,sFACA,qCAEA1V,UACAgU,4BAAA,WACA,yCACA,iEACA,+DAEA,sCACA,0CAEA,GACA3T,SACAsV,UACA,CACAC,mCAAA,6EACA9V,+BAIA,WAEAoU,6BACA,yCAEA,iEACA,+DACA,wBACA,uBAEA,sCACA,0CACA,+BACA,uBACA,IACAkB,QACAA,+BAEA,yBACA,OACA1V,UACAC,cAIA,OACAU,SACAsV,UACA,CACAC,kBACA9V,8BAGA+V,UAGAC,qCAAA,aACA,wCAEA,qGAAAC,oBACA,+DAKA,OAJAJ,uBACAK,kDAGA,CACA3V,2BACAsV,cAGAM,mCAAA,WACA,yCACA,iEACA,6EACA,mDACA,wDAEAC,mCAAA,WACA,yCACA,uFAEA,OADApW,0BAAA,yCACA,8CAEAqW,wBAAA,WACA,wDAEA,OADAC,yCAAA,6BACA,IACA,KAEAC,yCACA,kFAEAC,2BACA,wBACA,kBACA,kBAGAnW,SACAoW,0BACA,yCAEAC,sCAAA,WACA,yCAEA,iCACAC,cACAb,wBACA9V,0CAAA,UACA,2BACA,KAEA,UACA,YACA4W,6EACA,MACA,aACAA,8FACA,MACA,cACAA,gGAEA,gCAGA,OAFA,eACAC,kCACA,IACA,SAGAC,2BAAA,IAEA,EAFA,OACA,sBACA/V,mBAAA,+EAEA,8DACA,iCAEA,cACA,UACA,2CACA,EACAgW,iBAEA1E,QACA2E,OACAlC,OACAmC,iBAbA,qBAiBA,8BACA,UAEAC,2BAAA,WACA,qBACA,iDACA,8CACA,eACA,GAEA,OADAlX,aACA,KAEA,UAEAmX,mCAAA,+DACA,8CACA,wBAEA,sBACA,mDAGA,OAFAC,QAAAtC,cAAAmC,aAEA,GAEAI,gCAAA,WAEA,wCACA7W,iBAAA,kBACA8W,sBACA,eACA,iBAEA,WACA,SAEA,iIACA,mGAEAC,2BAAA,oKAOA,OAPA,SAEA,2CACA,yBACAC,GACAC,aACAC,YACA,SACA,6DACA,OADA,SAAA1X,SACA,4CACAA,GAAA,QAGA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","file":"static/js/chunk-e540ed1e.4092db38.js","sourcesContent":["'use strict';\nvar collection = require('../internals/collection');\nvar collectionStrong = require('../internals/collection-strong');\n\n// `Set` constructor\n// https://tc39.es/ecma262/#sec-set-objects\ncollection('Set', function (init) {\n return function Set() { return init(this, arguments.length ? arguments[0] : undefined); };\n}, collectionStrong);\n","import { DateTime } from 'luxon'\n\nconst BarChart = () => import('@/components/charts/BarChart.vue')\nconst DoughnutChart = () => import('@/components/charts/DoughnutChart.vue')\nconst DashboardLoader = () => import('@/components/DashboardLoader.vue')\nconst DashboardEmpty = () => import('@/components/DashboardEmpty.vue')\nconst DashboardError = () => import('@/components/DashboardError.vue')\n\nexport default {\n components: { DashboardLoader, DashboardEmpty, DashboardError, BarChart, DoughnutChart },\n props: { rpid: Number, oid: Number, sid: Number, dates: Array },\n data() {\n return {\n othersSliceColor: 'rgb(150, 150, 150)'\n }\n },\n computed: {\n reportURL() {\n if (!this.rpid) return ''\n let url = `/resource/${this.rpid}`\n if (this.oid && !this.sid) url += `/org/${this.oid}`\n if (this.sid) url += `/space/${this.sid}`\n return url\n }\n },\n methods: {\n dateToLabel(labels) {\n return labels.map(item => {\n const [year, month, date] = item.split('-')\n return date ? [`${month}-${date}`, year] : [month, year]\n })\n },\n findBarChartGroupingResolution(chartData) {\n const startDate = DateTime.fromISO(Object.keys(chartData)[0])\n const endDate = DateTime.fromISO(Object.keys(chartData).reverse()[0])\n const duration = endDate.diff(startDate, ['days', 'months'])\n return duration.as('days') < 32 ? 'daily' : duration.months < 5 ? 'weekly' : 'monthly'\n },\n dataInGBs(data) {\n return data.map(item => (item === null ? NaN : item / (1000 * 1000 * 1000)))\n },\n roundDataItems(data) {\n return data.map(this.roundDataItem)\n },\n roundDataItem(item) {\n const limit = parseFloat('0.' + '0'.repeat(this.precision - 1) + '1')\n return item < limit && item > 0 ? limit : parseFloat(item.toFixed(this.precision))\n }\n },\n watch: {\n reportURL: {\n handler() {\n this.fetchAllCharts()\n },\n immediate: true\n },\n dates(newDatePair) {\n const [startDate, endDate] = newDatePair\n if (!(startDate && endDate)) return\n this.fetchAllCharts()\n }\n }\n}\n","export default function(constructor, factory, prototype) {\n constructor.prototype = factory.prototype = prototype;\n prototype.constructor = constructor;\n}\n\nexport function extend(parent, definition) {\n var prototype = Object.create(parent.prototype);\n for (var key in definition) prototype[key] = definition[key];\n return prototype;\n}\n","import define, {extend} from \"./define.js\";\n\nexport function Color() {}\n\nexport var darker = 0.7;\nexport var brighter = 1 / darker;\n\nvar reI = \"\\\\s*([+-]?\\\\d+)\\\\s*\",\n reN = \"\\\\s*([+-]?(?:\\\\d*\\\\.)?\\\\d+(?:[eE][+-]?\\\\d+)?)\\\\s*\",\n reP = \"\\\\s*([+-]?(?:\\\\d*\\\\.)?\\\\d+(?:[eE][+-]?\\\\d+)?)%\\\\s*\",\n reHex = /^#([0-9a-f]{3,8})$/,\n reRgbInteger = new RegExp(`^rgb\\\\(${reI},${reI},${reI}\\\\)$`),\n reRgbPercent = new RegExp(`^rgb\\\\(${reP},${reP},${reP}\\\\)$`),\n reRgbaInteger = new RegExp(`^rgba\\\\(${reI},${reI},${reI},${reN}\\\\)$`),\n reRgbaPercent = new RegExp(`^rgba\\\\(${reP},${reP},${reP},${reN}\\\\)$`),\n reHslPercent = new RegExp(`^hsl\\\\(${reN},${reP},${reP}\\\\)$`),\n reHslaPercent = new RegExp(`^hsla\\\\(${reN},${reP},${reP},${reN}\\\\)$`);\n\nvar named = {\n aliceblue: 0xf0f8ff,\n antiquewhite: 0xfaebd7,\n aqua: 0x00ffff,\n aquamarine: 0x7fffd4,\n azure: 0xf0ffff,\n beige: 0xf5f5dc,\n bisque: 0xffe4c4,\n black: 0x000000,\n blanchedalmond: 0xffebcd,\n blue: 0x0000ff,\n blueviolet: 0x8a2be2,\n brown: 0xa52a2a,\n burlywood: 0xdeb887,\n cadetblue: 0x5f9ea0,\n chartreuse: 0x7fff00,\n chocolate: 0xd2691e,\n coral: 0xff7f50,\n cornflowerblue: 0x6495ed,\n cornsilk: 0xfff8dc,\n crimson: 0xdc143c,\n cyan: 0x00ffff,\n darkblue: 0x00008b,\n darkcyan: 0x008b8b,\n darkgoldenrod: 0xb8860b,\n darkgray: 0xa9a9a9,\n darkgreen: 0x006400,\n darkgrey: 0xa9a9a9,\n darkkhaki: 0xbdb76b,\n darkmagenta: 0x8b008b,\n darkolivegreen: 0x556b2f,\n darkorange: 0xff8c00,\n darkorchid: 0x9932cc,\n darkred: 0x8b0000,\n darksalmon: 0xe9967a,\n darkseagreen: 0x8fbc8f,\n darkslateblue: 0x483d8b,\n darkslategray: 0x2f4f4f,\n darkslategrey: 0x2f4f4f,\n darkturquoise: 0x00ced1,\n darkviolet: 0x9400d3,\n deeppink: 0xff1493,\n deepskyblue: 0x00bfff,\n dimgray: 0x696969,\n dimgrey: 0x696969,\n dodgerblue: 0x1e90ff,\n firebrick: 0xb22222,\n floralwhite: 0xfffaf0,\n forestgreen: 0x228b22,\n fuchsia: 0xff00ff,\n gainsboro: 0xdcdcdc,\n ghostwhite: 0xf8f8ff,\n gold: 0xffd700,\n goldenrod: 0xdaa520,\n gray: 0x808080,\n green: 0x008000,\n greenyellow: 0xadff2f,\n grey: 0x808080,\n honeydew: 0xf0fff0,\n hotpink: 0xff69b4,\n indianred: 0xcd5c5c,\n indigo: 0x4b0082,\n ivory: 0xfffff0,\n khaki: 0xf0e68c,\n lavender: 0xe6e6fa,\n lavenderblush: 0xfff0f5,\n lawngreen: 0x7cfc00,\n lemonchiffon: 0xfffacd,\n lightblue: 0xadd8e6,\n lightcoral: 0xf08080,\n lightcyan: 0xe0ffff,\n lightgoldenrodyellow: 0xfafad2,\n lightgray: 0xd3d3d3,\n lightgreen: 0x90ee90,\n lightgrey: 0xd3d3d3,\n lightpink: 0xffb6c1,\n lightsalmon: 0xffa07a,\n lightseagreen: 0x20b2aa,\n lightskyblue: 0x87cefa,\n lightslategray: 0x778899,\n lightslategrey: 0x778899,\n lightsteelblue: 0xb0c4de,\n lightyellow: 0xffffe0,\n lime: 0x00ff00,\n limegreen: 0x32cd32,\n linen: 0xfaf0e6,\n magenta: 0xff00ff,\n maroon: 0x800000,\n mediumaquamarine: 0x66cdaa,\n mediumblue: 0x0000cd,\n mediumorchid: 0xba55d3,\n mediumpurple: 0x9370db,\n mediumseagreen: 0x3cb371,\n mediumslateblue: 0x7b68ee,\n mediumspringgreen: 0x00fa9a,\n mediumturquoise: 0x48d1cc,\n mediumvioletred: 0xc71585,\n midnightblue: 0x191970,\n mintcream: 0xf5fffa,\n mistyrose: 0xffe4e1,\n moccasin: 0xffe4b5,\n navajowhite: 0xffdead,\n navy: 0x000080,\n oldlace: 0xfdf5e6,\n olive: 0x808000,\n olivedrab: 0x6b8e23,\n orange: 0xffa500,\n orangered: 0xff4500,\n orchid: 0xda70d6,\n palegoldenrod: 0xeee8aa,\n palegreen: 0x98fb98,\n paleturquoise: 0xafeeee,\n palevioletred: 0xdb7093,\n papayawhip: 0xffefd5,\n peachpuff: 0xffdab9,\n peru: 0xcd853f,\n pink: 0xffc0cb,\n plum: 0xdda0dd,\n powderblue: 0xb0e0e6,\n purple: 0x800080,\n rebeccapurple: 0x663399,\n red: 0xff0000,\n rosybrown: 0xbc8f8f,\n royalblue: 0x4169e1,\n saddlebrown: 0x8b4513,\n salmon: 0xfa8072,\n sandybrown: 0xf4a460,\n seagreen: 0x2e8b57,\n seashell: 0xfff5ee,\n sienna: 0xa0522d,\n silver: 0xc0c0c0,\n skyblue: 0x87ceeb,\n slateblue: 0x6a5acd,\n slategray: 0x708090,\n slategrey: 0x708090,\n snow: 0xfffafa,\n springgreen: 0x00ff7f,\n steelblue: 0x4682b4,\n tan: 0xd2b48c,\n teal: 0x008080,\n thistle: 0xd8bfd8,\n tomato: 0xff6347,\n turquoise: 0x40e0d0,\n violet: 0xee82ee,\n wheat: 0xf5deb3,\n white: 0xffffff,\n whitesmoke: 0xf5f5f5,\n yellow: 0xffff00,\n yellowgreen: 0x9acd32\n};\n\ndefine(Color, color, {\n copy(channels) {\n return Object.assign(new this.constructor, this, channels);\n },\n displayable() {\n return this.rgb().displayable();\n },\n hex: color_formatHex, // Deprecated! Use color.formatHex.\n formatHex: color_formatHex,\n formatHex8: color_formatHex8,\n formatHsl: color_formatHsl,\n formatRgb: color_formatRgb,\n toString: color_formatRgb\n});\n\nfunction color_formatHex() {\n return this.rgb().formatHex();\n}\n\nfunction color_formatHex8() {\n return this.rgb().formatHex8();\n}\n\nfunction color_formatHsl() {\n return hslConvert(this).formatHsl();\n}\n\nfunction color_formatRgb() {\n return this.rgb().formatRgb();\n}\n\nexport default function color(format) {\n var m, l;\n format = (format + \"\").trim().toLowerCase();\n return (m = reHex.exec(format)) ? (l = m[1].length, m = parseInt(m[1], 16), l === 6 ? rgbn(m) // #ff0000\n : l === 3 ? new Rgb((m >> 8 & 0xf) | (m >> 4 & 0xf0), (m >> 4 & 0xf) | (m & 0xf0), ((m & 0xf) << 4) | (m & 0xf), 1) // #f00\n : l === 8 ? rgba(m >> 24 & 0xff, m >> 16 & 0xff, m >> 8 & 0xff, (m & 0xff) / 0xff) // #ff000000\n : l === 4 ? rgba((m >> 12 & 0xf) | (m >> 8 & 0xf0), (m >> 8 & 0xf) | (m >> 4 & 0xf0), (m >> 4 & 0xf) | (m & 0xf0), (((m & 0xf) << 4) | (m & 0xf)) / 0xff) // #f000\n : null) // invalid hex\n : (m = reRgbInteger.exec(format)) ? new Rgb(m[1], m[2], m[3], 1) // rgb(255, 0, 0)\n : (m = reRgbPercent.exec(format)) ? new Rgb(m[1] * 255 / 100, m[2] * 255 / 100, m[3] * 255 / 100, 1) // rgb(100%, 0%, 0%)\n : (m = reRgbaInteger.exec(format)) ? rgba(m[1], m[2], m[3], m[4]) // rgba(255, 0, 0, 1)\n : (m = reRgbaPercent.exec(format)) ? rgba(m[1] * 255 / 100, m[2] * 255 / 100, m[3] * 255 / 100, m[4]) // rgb(100%, 0%, 0%, 1)\n : (m = reHslPercent.exec(format)) ? hsla(m[1], m[2] / 100, m[3] / 100, 1) // hsl(120, 50%, 50%)\n : (m = reHslaPercent.exec(format)) ? hsla(m[1], m[2] / 100, m[3] / 100, m[4]) // hsla(120, 50%, 50%, 1)\n : named.hasOwnProperty(format) ? rgbn(named[format]) // eslint-disable-line no-prototype-builtins\n : format === \"transparent\" ? new Rgb(NaN, NaN, NaN, 0)\n : null;\n}\n\nfunction rgbn(n) {\n return new Rgb(n >> 16 & 0xff, n >> 8 & 0xff, n & 0xff, 1);\n}\n\nfunction rgba(r, g, b, a) {\n if (a <= 0) r = g = b = NaN;\n return new Rgb(r, g, b, a);\n}\n\nexport function rgbConvert(o) {\n if (!(o instanceof Color)) o = color(o);\n if (!o) return new Rgb;\n o = o.rgb();\n return new Rgb(o.r, o.g, o.b, o.opacity);\n}\n\nexport function rgb(r, g, b, opacity) {\n return arguments.length === 1 ? rgbConvert(r) : new Rgb(r, g, b, opacity == null ? 1 : opacity);\n}\n\nexport function Rgb(r, g, b, opacity) {\n this.r = +r;\n this.g = +g;\n this.b = +b;\n this.opacity = +opacity;\n}\n\ndefine(Rgb, rgb, extend(Color, {\n brighter(k) {\n k = k == null ? brighter : Math.pow(brighter, k);\n return new Rgb(this.r * k, this.g * k, this.b * k, this.opacity);\n },\n darker(k) {\n k = k == null ? darker : Math.pow(darker, k);\n return new Rgb(this.r * k, this.g * k, this.b * k, this.opacity);\n },\n rgb() {\n return this;\n },\n clamp() {\n return new Rgb(clampi(this.r), clampi(this.g), clampi(this.b), clampa(this.opacity));\n },\n displayable() {\n return (-0.5 <= this.r && this.r < 255.5)\n && (-0.5 <= this.g && this.g < 255.5)\n && (-0.5 <= this.b && this.b < 255.5)\n && (0 <= this.opacity && this.opacity <= 1);\n },\n hex: rgb_formatHex, // Deprecated! Use color.formatHex.\n formatHex: rgb_formatHex,\n formatHex8: rgb_formatHex8,\n formatRgb: rgb_formatRgb,\n toString: rgb_formatRgb\n}));\n\nfunction rgb_formatHex() {\n return `#${hex(this.r)}${hex(this.g)}${hex(this.b)}`;\n}\n\nfunction rgb_formatHex8() {\n return `#${hex(this.r)}${hex(this.g)}${hex(this.b)}${hex((isNaN(this.opacity) ? 1 : this.opacity) * 255)}`;\n}\n\nfunction rgb_formatRgb() {\n const a = clampa(this.opacity);\n return `${a === 1 ? \"rgb(\" : \"rgba(\"}${clampi(this.r)}, ${clampi(this.g)}, ${clampi(this.b)}${a === 1 ? \")\" : `, ${a})`}`;\n}\n\nfunction clampa(opacity) {\n return isNaN(opacity) ? 1 : Math.max(0, Math.min(1, opacity));\n}\n\nfunction clampi(value) {\n return Math.max(0, Math.min(255, Math.round(value) || 0));\n}\n\nfunction hex(value) {\n value = clampi(value);\n return (value < 16 ? \"0\" : \"\") + value.toString(16);\n}\n\nfunction hsla(h, s, l, a) {\n if (a <= 0) h = s = l = NaN;\n else if (l <= 0 || l >= 1) h = s = NaN;\n else if (s <= 0) h = NaN;\n return new Hsl(h, s, l, a);\n}\n\nexport function hslConvert(o) {\n if (o instanceof Hsl) return new Hsl(o.h, o.s, o.l, o.opacity);\n if (!(o instanceof Color)) o = color(o);\n if (!o) return new Hsl;\n if (o instanceof Hsl) return o;\n o = o.rgb();\n var r = o.r / 255,\n g = o.g / 255,\n b = o.b / 255,\n min = Math.min(r, g, b),\n max = Math.max(r, g, b),\n h = NaN,\n s = max - min,\n l = (max + min) / 2;\n if (s) {\n if (r === max) h = (g - b) / s + (g < b) * 6;\n else if (g === max) h = (b - r) / s + 2;\n else h = (r - g) / s + 4;\n s /= l < 0.5 ? max + min : 2 - max - min;\n h *= 60;\n } else {\n s = l > 0 && l < 1 ? 0 : h;\n }\n return new Hsl(h, s, l, o.opacity);\n}\n\nexport function hsl(h, s, l, opacity) {\n return arguments.length === 1 ? hslConvert(h) : new Hsl(h, s, l, opacity == null ? 1 : opacity);\n}\n\nfunction Hsl(h, s, l, opacity) {\n this.h = +h;\n this.s = +s;\n this.l = +l;\n this.opacity = +opacity;\n}\n\ndefine(Hsl, hsl, extend(Color, {\n brighter(k) {\n k = k == null ? brighter : Math.pow(brighter, k);\n return new Hsl(this.h, this.s, this.l * k, this.opacity);\n },\n darker(k) {\n k = k == null ? darker : Math.pow(darker, k);\n return new Hsl(this.h, this.s, this.l * k, this.opacity);\n },\n rgb() {\n var h = this.h % 360 + (this.h < 0) * 360,\n s = isNaN(h) || isNaN(this.s) ? 0 : this.s,\n l = this.l,\n m2 = l + (l < 0.5 ? l : 1 - l) * s,\n m1 = 2 * l - m2;\n return new Rgb(\n hsl2rgb(h >= 240 ? h - 240 : h + 120, m1, m2),\n hsl2rgb(h, m1, m2),\n hsl2rgb(h < 120 ? h + 240 : h - 120, m1, m2),\n this.opacity\n );\n },\n clamp() {\n return new Hsl(clamph(this.h), clampt(this.s), clampt(this.l), clampa(this.opacity));\n },\n displayable() {\n return (0 <= this.s && this.s <= 1 || isNaN(this.s))\n && (0 <= this.l && this.l <= 1)\n && (0 <= this.opacity && this.opacity <= 1);\n },\n formatHsl() {\n const a = clampa(this.opacity);\n return `${a === 1 ? \"hsl(\" : \"hsla(\"}${clamph(this.h)}, ${clampt(this.s) * 100}%, ${clampt(this.l) * 100}%${a === 1 ? \")\" : `, ${a})`}`;\n }\n}));\n\nfunction clamph(value) {\n value = (value || 0) % 360;\n return value < 0 ? value + 360 : value;\n}\n\nfunction clampt(value) {\n return Math.max(0, Math.min(1, value || 0));\n}\n\n/* From FvD 13.37, CSS Color Module Level 3 */\nfunction hsl2rgb(h, m1, m2) {\n return (h < 60 ? m1 + (m2 - m1) * h / 60\n : h < 180 ? m2\n : h < 240 ? m1 + (m2 - m1) * (240 - h) / 60\n : m1) * 255;\n}\n","export const radians = Math.PI / 180;\nexport const degrees = 180 / Math.PI;\n","import define, {extend} from \"./define.js\";\nimport {Color, rgbConvert, Rgb, darker, brighter} from \"./color.js\";\nimport {degrees, radians} from \"./math.js\";\n\nvar A = -0.14861,\n B = +1.78277,\n C = -0.29227,\n D = -0.90649,\n E = +1.97294,\n ED = E * D,\n EB = E * B,\n BC_DA = B * C - D * A;\n\nfunction cubehelixConvert(o) {\n if (o instanceof Cubehelix) return new Cubehelix(o.h, o.s, o.l, o.opacity);\n if (!(o instanceof Rgb)) o = rgbConvert(o);\n var r = o.r / 255,\n g = o.g / 255,\n b = o.b / 255,\n l = (BC_DA * b + ED * r - EB * g) / (BC_DA + ED - EB),\n bl = b - l,\n k = (E * (g - l) - C * bl) / D,\n s = Math.sqrt(k * k + bl * bl) / (E * l * (1 - l)), // NaN if l=0 or l=1\n h = s ? Math.atan2(k, bl) * degrees - 120 : NaN;\n return new Cubehelix(h < 0 ? h + 360 : h, s, l, o.opacity);\n}\n\nexport default function cubehelix(h, s, l, opacity) {\n return arguments.length === 1 ? cubehelixConvert(h) : new Cubehelix(h, s, l, opacity == null ? 1 : opacity);\n}\n\nexport function Cubehelix(h, s, l, opacity) {\n this.h = +h;\n this.s = +s;\n this.l = +l;\n this.opacity = +opacity;\n}\n\ndefine(Cubehelix, cubehelix, extend(Color, {\n brighter(k) {\n k = k == null ? brighter : Math.pow(brighter, k);\n return new Cubehelix(this.h, this.s, this.l * k, this.opacity);\n },\n darker(k) {\n k = k == null ? darker : Math.pow(darker, k);\n return new Cubehelix(this.h, this.s, this.l * k, this.opacity);\n },\n rgb() {\n var h = isNaN(this.h) ? 0 : (this.h + 120) * radians,\n l = +this.l,\n a = isNaN(this.s) ? 0 : this.s * l * (1 - l),\n cosh = Math.cos(h),\n sinh = Math.sin(h);\n return new Rgb(\n 255 * (l + a * (A * cosh + B * sinh)),\n 255 * (l + a * (C * cosh + D * sinh)),\n 255 * (l + a * (E * cosh)),\n this.opacity\n );\n }\n}));\n","export default x => () => x;\n","import constant from \"./constant.js\";\n\nfunction linear(a, d) {\n return function(t) {\n return a + t * d;\n };\n}\n\nfunction exponential(a, b, y) {\n return a = Math.pow(a, y), b = Math.pow(b, y) - a, y = 1 / y, function(t) {\n return Math.pow(a + t * b, y);\n };\n}\n\nexport function hue(a, b) {\n var d = b - a;\n return d ? linear(a, d > 180 || d < -180 ? d - 360 * Math.round(d / 360) : d) : constant(isNaN(a) ? b : a);\n}\n\nexport function gamma(y) {\n return (y = +y) === 1 ? nogamma : function(a, b) {\n return b - a ? exponential(a, b, y) : constant(isNaN(a) ? b : a);\n };\n}\n\nexport default function nogamma(a, b) {\n var d = b - a;\n return d ? linear(a, d) : constant(isNaN(a) ? b : a);\n}\n","import {cubehelix as colorCubehelix} from \"d3-color\";\nimport color, {hue} from \"./color.js\";\n\nfunction cubehelix(hue) {\n return (function cubehelixGamma(y) {\n y = +y;\n\n function cubehelix(start, end) {\n var h = hue((start = colorCubehelix(start)).h, (end = colorCubehelix(end)).h),\n s = color(start.s, end.s),\n l = color(start.l, end.l),\n opacity = color(start.opacity, end.opacity);\n return function(t) {\n start.h = h(t);\n start.s = s(t);\n start.l = l(Math.pow(t, y));\n start.opacity = opacity(t);\n return start + \"\";\n };\n }\n\n cubehelix.gamma = cubehelixGamma;\n\n return cubehelix;\n })(1);\n}\n\nexport default cubehelix(hue);\nexport var cubehelixLong = cubehelix(color);\n","import {cubehelix} from \"d3-color\";\nimport {interpolateCubehelixLong} from \"d3-interpolate\";\n\nexport var warm = interpolateCubehelixLong(cubehelix(-100, 0.75, 0.35), cubehelix(80, 1.50, 0.8));\n\nexport var cool = interpolateCubehelixLong(cubehelix(260, 0.75, 0.35), cubehelix(80, 1.50, 0.8));\n\nvar c = cubehelix();\n\nexport default function(t) {\n if (t < 0 || t > 1) t -= Math.floor(t);\n var ts = Math.abs(t - 0.5);\n c.h = 360 * t - 100;\n c.s = 1.5 - 1.5 * ts;\n c.l = 0.8 - 0.9 * ts;\n return c + \"\";\n}\n","// TODO: Remove this module from `core-js@4` since it's replaced to module below\nrequire('../modules/es.set.constructor');\n","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CreditUtilization.vue?vue&type=style&index=0&id=f7d5864e&prod&scoped=true&lang=scss&\"","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('v-container',{attrs:{\"fluid\":\"\"}},[_c('v-row',[_c('v-col',{ref:\"sidebar\",attrs:{\"cols\":\"3\"}},[_c('div',{directives:[{name:\"intersect\",rawName:\"v-intersect\",value:(_vm.intersectionObserver),expression:\"intersectionObserver\"}]}),_c('v-card',{class:_vm.isIntersecting ? '' : 'types-fixed',style:({ width: _vm.sidebarWidth })},[_c('v-card-title',[_vm._v(\"Resources\")]),_c('v-card-text',[(_vm.fetchingChartData.credit_by_sublevels)?_c('dashboard-loader'):_vm._e(),[(_vm.availableResourceTypes.length > 0)?_vm._l((_vm.availableResourceTypes),function({ label, value, description, color, icon }){return _c('v-card',{key:value,attrs:{\"flat\":\"\",\"color\":\"grey lighten-3 mb-2\"},on:{\"click\":function($event){return _vm.toggle(value)}}},[_c('v-list',{staticClass:\"py-0\",attrs:{\"two-line\":\"\",\"color\":\"transparent\"}},[_c('v-list-item',[_c('v-list-item-avatar',[(_vm.selectedResourceTypes.indexOf(value) !== -1)?_c('v-icon',{style:(`background-color: ${color}`),attrs:{\"dark\":\"\"}},[_vm._v(\" \"+_vm._s(icon)+\" \")]):_c('v-icon',{staticClass:\"grey lighten-1\",attrs:{\"dark\":\"\"}},[_vm._v(_vm._s(icon))])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(_vm._s(label))]),_c('v-list-item-subtitle',[_vm._v(_vm._s(description))])],1)],1)],1)],1)}):_c('dashboard-empty',{attrs:{\"icon\":\"mdi-format-list-bulleted\"}},[_vm._v(\"No resources\")])]],2)],1)],1),_c('v-col',{attrs:{\"cols\":\"9\"}},[_c('v-row',{attrs:{\"justify\":\"center\"}},[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"6\",\"xl\":\"5\"}},[_c('v-card',{attrs:{\"height\":\"100%\"}},[_c('v-card-title',{staticClass:\"pt-2\"},[_c('v-list-item',{staticClass:\"list-item pa-0\"},[_c('v-list-item-avatar',[_c('v-icon',{attrs:{\"large\":\"\"}},[_vm._v(\"mdi-developer-board\")])],1),_c('v-list-item-content',[_c('v-list-item-title',{staticClass:\"text-h6 secondary--text list-title\"},[_vm._v(\"Credit utilization\")]),_c('v-list-item-subtitle',{staticClass:\"list-subtitle\"},[_vm._v(\"by resources\")])],1)],1)],1),_c('v-card-text',{staticClass:\"flex-grow-1 text-center\"},[(_vm.fetchingChartData.credit_by_sublevels)?_c('dashboard-loader'):[(_vm.hasData('credit_by_sublevels') && !_vm.isError('credit_by_sublevels'))?[_c('div',[_vm._v(\"A total of\")]),_c('div',{staticClass:\"text-h4 secondary--text\"},[_vm._v(_vm._s(_vm.totalCreditsByResources))]),_c('div',{staticClass:\"pb-8\"},[_vm._v(\"AC spent on selected resources\")]),_c('doughnutChart',{attrs:{\"chartData\":_vm.creditByResource,\"aggregateValue\":\"12 NCU\",\"items\":_vm.activeLabels},on:{\"legendClick\":_vm.handleLegendClickResource}})]:_vm._e(),(!_vm.hasData('credit_by_sublevels'))?_c('dashboard-empty'):_vm._e(),(_vm.isError('credit_by_sublevels'))?_c('dashboard-error'):_vm._e()]],2)],1)],1),_c('v-col',{staticClass:\"d-none d-xl-block\",attrs:{\"xl\":\"1\"}}),_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"6\",\"xl\":\"5\"}},[_c('v-card',{attrs:{\"height\":\"100%\"}},[_c('v-card-title',{staticClass:\"pt-2\"},[_c('v-list-item',{staticClass:\"list-item pa-0\"},[_c('v-list-item-avatar',[_c('v-icon',{attrs:{\"large\":\"\"}},[_vm._v(\"mdi-file-tree-outline\")])],1),_c('v-list-item-content',[_c('v-list-item-title',{staticClass:\"text-h6 secondary--text list-title\"},[_vm._v(\"Credit utilization\")]),_c('v-list-item-subtitle',{staticClass:\"list-subtitle\"},[_vm._v(\"by sublevels\")])],1)],1)],1),_c('v-card-text',{staticClass:\"flex-grow-1 text-center\"},[(_vm.fetchingChartData.credit_by_sublevels)?_c('dashboard-loader'):[(_vm.hasData('credit_by_sublevels') && !_vm.isError('credit_by_sublevels'))?[_c('div',[_vm._v(\"A total of\")]),_c('div',{staticClass:\"text-h4 secondary--text\"},[_vm._v(_vm._s(_vm.totalCreditsbySublevels))]),_c('div',{staticClass:\"pb-8\"},[_vm._v(\"AC spent by selected \"+_vm._s(_vm.currentSublevel))]),_c('doughnutChart',{attrs:{\"chartData\":_vm.creditBySublevels,\"rpid\":_vm.rpid},on:{\"legendClick\":_vm.handleLegendClickSublevel}})]:_vm._e(),(!_vm.hasData('credit_by_sublevels'))?_c('dashboard-empty'):_vm._e(),(_vm.isError('credit_by_sublevels'))?_c('dashboard-error'):_vm._e()]],2)],1)],1)],1),_c('v-row',{staticClass:\"mt-10\"},[_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('v-card',{attrs:{\"flat\":\"\",\"height\":\"100%\"}},[_c('v-card-title',{staticClass:\"pt-2\"},[_c('v-list-item',{staticClass:\"list-item pa-0\"},[_c('v-list-item-avatar',[_c('v-icon',{attrs:{\"large\":\"\"}},[_vm._v(\"payment\")])],1),_c('v-list-item-content',[_c('v-list-item-title',{staticClass:\"text-h6 secondary--text list-title\"},[_vm._v(\"Credit utilization timeline\")]),_c('v-list-item-subtitle',{staticClass:\"list-subtitle\"},[_vm._v(\"(\"+_vm._s(_vm.creditUsageTimelineResolution)+\")\")])],1)],1)],1),_c('v-card-text',[(_vm.fetchingChartData.credit_utilization)?_c('dashboard-loader'):[(_vm.hasData('credit_utilization') && !_vm.isError('credit_utilization'))?_c('bar-chart',{attrs:{\"chartData\":_vm.creditUtilizationTimeLine,\"options\":{ stacked: true, yTitle: 'AC' },\"items\":_vm.activeLabels},on:{\"legendClick\":_vm.handleLegendClickResource}}):_vm._e(),(!_vm.hasData('credit_utilization'))?_c('dashboard-empty'):_vm._e(),(_vm.isError('credit_utilization'))?_c('dashboard-error'):_vm._e()]],2)],1)],1)],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n \n \n \n \n \n Resources\n \n \n \n 0\">\n \n \n \n \n \n {{ icon }}\n \n {{ icon }}\n \n \n {{ label }}\n {{ description }}\n \n \n \n \n \n No resources\n \n \n \n \n \n \n \n \n \n \n \n mdi-developer-board\n \n \n Credit utilization\n by resources\n \n \n \n \n \n \n \n A total of\n {{ totalCreditsByResources }}\n AC spent on selected resources\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n mdi-file-tree-outline\n \n \n Credit utilization\n by sublevels\n \n \n \n \n \n \n \n A total of\n {{ totalCreditsbySublevels }}\n AC spent by selected {{ currentSublevel }}\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n payment\n \n \n Credit utilization timeline\n ({{ creditUsageTimelineResolution }})\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n\n\n\n\n","import mod from \"-!../../../../node_modules/@vue/cli-plugin-babel/node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??ref--13-1!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CreditUtilization.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/@vue/cli-plugin-babel/node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??ref--13-1!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CreditUtilization.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./CreditUtilization.vue?vue&type=template&id=f7d5864e&scoped=true&\"\nimport script from \"./CreditUtilization.vue?vue&type=script&lang=js&\"\nexport * from \"./CreditUtilization.vue?vue&type=script&lang=js&\"\nimport style0 from \"./CreditUtilization.vue?vue&type=style&index=0&id=f7d5864e&prod&scoped=true&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 \"f7d5864e\",\n null\n \n)\n\nexport default component.exports","import { areDatesInOrder } from '@/utils'\nimport { round } from 'lodash'\n\nexport const usageAndResources = {\n data() {\n return {\n relationActionTypes: {\n REMOVE: 'Delete',\n MAP: 'Map'\n },\n relationActionLevel: {\n ORGANIZATION: 'Organization',\n SPACE: 'Space'\n },\n contractTypes: [\n { type: 'Mixed', code: 0 },\n { type: 'Education', code: 10 },\n { type: 'Research', code: 20 }\n ],\n nuvolosPackageTypes: {\n EDUCATION: 0,\n MIXED: 1,\n RESEARCH: 2\n },\n metrics: {\n APP_USAGE: 'apps',\n HPC_USAGE: 'hpc',\n USERS_STATISTICS: 'users',\n INVITATION_STATISTICS: 'invitations'\n },\n resourceTypes: [\n { label: 'File system', value: '0', description: 'Credits spent on file system storage', color: '#41a6f6', icon: 'mdi-file-outline' },\n { label: 'Resting storage', value: '5', description: 'Credits spent on resting storage', color: '#403885', icon: 'mdi-sleep' },\n { label: 'Database storage', value: '10', description: 'Credits spent on database storage', color: '#257179', icon: 'mdi-database' },\n { label: 'Database computation', value: '20', description: 'Credits spent on database queries', color: '#b13e53', icon: 'mdi-memory' },\n {\n label: 'Credit-based computation',\n value: '30',\n description: 'Credits spent on compute resources',\n color: '#ef7d57',\n icon: 'mdi-animation-outline'\n },\n { label: 'Batch compute', value: '40', description: 'Credits spent on processing time', color: '#ffcd75' },\n { label: 'Consulting', value: '50', description: 'Credits spent on consulting', color: '#a7f070', icon: 'mdi-handshake-outline' },\n { label: 'Application', value: '60', description: 'Credits spent on applications', color: '#38b764' },\n { label: 'Video', value: '70', description: 'Credits spent on video library', color: '#38b764' },\n { label: 'Account transfer', value: '80', description: 'Credit transfer between accounts', color: '#38b764', icon: 'payments' },\n { label: 'Large File Storage', value: '90', description: 'Credits spent on large file storage', color: '#9857a4', icon: 'mdi-server' }\n ],\n performingOperation: false,\n resourcePoolResources: [],\n dateRangeOptionsRanges: [],\n dataDateRange: [],\n selectedDateRangeOption: 'Current month',\n dateRangeOptions: ['Current month', 'Previous month', 'Custom range'],\n doughnutChartColors: ['#009933', '#ff3300', '#ffcc00', '#3366ff', 'ff66cc', '#990099', '#666699', '#cccccc', '#000000'],\n rules: {\n required: value => !!value || value === 0 || 'Required.',\n isFloat: value => value === null || Number(value) === parseFloat(value) || 'Must be a number',\n isInteger: value => parseInt(value) === Number(value) || 'Must be an integer',\n rangeRequired: value => (value && value.split('to').length === 2) || 'Select start and end date',\n dateOrder: value => (value && value.split('to').length === 2 && areDatesInOrder(value)) || 'Start date should be smaller than end date',\n isNegative: value => value < 0 || 'Must be negative',\n isPositive: value => value >= 0 || 'Must be positive'\n }\n }\n },\n methods: {\n roundNumber(number, precision = 1) {\n return round(number, precision)\n },\n updateDateRange() {\n this.dataDateRange = this.dateRangeOptionsRanges[this.selectedDateRangeOption]\n },\n setDateRanges() {\n const dateRangeOptions = {}\n const end = new Date()\n const endString = end.toISOString().slice(0, 10)\n const currentMonth = new Date(Date.UTC(end.getFullYear(), end.getMonth(), 1))\n dateRangeOptions['Current month'] = [currentMonth.toISOString().slice(0, 10), endString]\n\n const previousMonth = new Date()\n previousMonth.setMonth(previousMonth.getMonth() - 1)\n const previousMonthStart = new Date(previousMonth.getFullYear(), previousMonth.getMonth(), 2)\n const previousMonthEnd = new Date(previousMonth.getFullYear(), previousMonth.getMonth() + 1, 1)\n const previousMonthStartString = previousMonthStart.toISOString().slice(0, 10)\n const previousMonthEndString = previousMonthEnd.toISOString().slice(0, 10)\n dateRangeOptions['Previous month'] = [previousMonthStartString, previousMonthEndString]\n\n const lastThirtyDays = new Date()\n lastThirtyDays.setDate(lastThirtyDays.getDate() - 30)\n dateRangeOptions['Custom range'] = [lastThirtyDays.toISOString().slice(0, 10), endString]\n this.dataDateRange = dateRangeOptions['Current month']\n this.dateRangeOptionsRanges = dateRangeOptions\n },\n getResourceTypeByCode(resourceCode) {\n const resource = this.resourceTypes.find(resourceType => resourceType.value === resourceCode.toString())\n return resource ? resource.label : 'Unknown resource type'\n },\n fetchResourcePoolResources(rpid) {\n this.$store.dispatch('userStore/setResourcePoolResourcesFetching', true)\n this.$axios\n .get(`/resource/${rpid}/resources`)\n .then(response => {\n this.resourcePoolResources = response.data\n })\n .catch(() => {\n this.$store.dispatch('showSnackBar', {\n snackBarText: 'Failed to fetch resource pool resources.',\n snackBarTimeout: 5000,\n snackBarIcon: 'error'\n })\n })\n .finally(() => {\n this.$store.dispatch('userStore/setResourcePoolResourcesFetching', false)\n })\n },\n mapResourcePool(resourcePoolIdentifier, nuvolosIdentifier, relationActionLevel, resourceTypeToMap = null) {\n this.performingOperation = true\n const baseURL = `/resource/${resourcePoolIdentifier}/map`\n const apiURL =\n relationActionLevel === this.relationActionLevel.ORGANIZATION\n ? `${baseURL}/${nuvolosIdentifier}`\n : resourceTypeToMap !== null\n ? `${baseURL}/space/${nuvolosIdentifier}/type/${resourceTypeToMap}`\n : `${baseURL}/space/${nuvolosIdentifier}`\n this.$axios\n .put(apiURL)\n .then(() => {\n this.$store.dispatch('showSnackBar', {\n snackBarText: 'Resource pool relation successfully created!',\n snackBarTimeout: 5000,\n snackBarIcon: 'check_circle'\n })\n })\n .catch(error => {\n if (error.response && error.response.data && error.response.data.code === 'map_exists') {\n this.$store.dispatch('showSnackBar', {\n snackBarText: 'Resource map already exists!',\n snackBarTimeout: 5000,\n snackBarIcon: 'error'\n })\n } else if (error.response && error.response.data && error.response.data.code === 'map_downgrades_current_map') {\n this.$store.dispatch('showSnackBar', {\n snackBarText: 'The map currently exists for entire space - cannot map entire space or just one resource from same space again',\n snackBarTimeout: 5000,\n snackBarIcon: 'error'\n })\n } else {\n this.$store.dispatch('showSnackBar', {\n snackBarText: 'Failed to map resource pool to the selected space.',\n snackBarTimeout: 5000,\n snackBarIcon: 'error'\n })\n }\n })\n .finally(() => {\n this.performingOperation = false\n })\n },\n deleteResourceMapping(resourcePoolIdentifier, nuvolosIdentifier, relationActionLevel, resourceTypeToMap = null) {\n this.performingOperation = true\n const baseURL = `/resource/${resourcePoolIdentifier}/unmap`\n const apiURL =\n relationActionLevel === this.relationActionLevel.ORGANIZATION\n ? `${baseURL}/${nuvolosIdentifier}`\n : resourceTypeToMap !== null\n ? `${baseURL}/space/${nuvolosIdentifier}/type/${resourceTypeToMap}`\n : `${baseURL}/space/${nuvolosIdentifier}`\n this.$axios\n .delete(apiURL)\n .then(() => {\n this.$store.dispatch('showSnackBar', {\n snackBarText: 'Resource pool relation successfully removed!',\n snackBarTimeout: 5000,\n snackBarIcon: 'error'\n })\n })\n .catch(() => {\n this.$store.dispatch('showSnackBar', {\n snackBarText: 'Failed to remove resource pool relation.',\n snackBarTimeout: 5000,\n snackBarIcon: 'error'\n })\n })\n .finally(() => {\n this.performingOperation = false\n })\n }\n }\n}\n"],"sourceRoot":""}