forked from sirkjohannsen/grafana-datasource-datadog
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdfunc.js.map
1 lines (1 loc) · 13 KB
/
dfunc.js.map
1
{"version":3,"sources":["../src/dfunc.js"],"names":["addFuncDef","funcDef","params","defaultParams","append","category","push","index","name","FuncInstance","options","def","withDefaultParams","slice","updateText","_","categories","Arithmatic","Interpolation","Timeshift","Rate","Smoothing","Rollup","Rank","Count","Regression","Algorithms","type","optional","each","funcList","catName","sortBy","prototype","render","metricExp","str","parameters","map","value","unshift","funcRender","join","console","log","updateParam","strValue","splice","length","text","createFuncInstance","isString","message","getFuncDef","getCategories","foo"],"mappings":"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","file":"dfunc.js","sourcesContent":["import _ from 'lodash';\n\nvar index = [];\nvar categories = {\n Arithmatic: [],\n Interpolation: [],\n Timeshift: [],\n Rate: [],\n Smoothing: [],\n Rollup: [],\n Rank: [],\n Count: [],\n Regression: [],\n Algorithms: []\n};\n\nfunction addFuncDef(funcDef) {\n funcDef.params = funcDef.params || [];\n funcDef.defaultParams = funcDef.defaultParams || [];\n funcDef.append = funcDef.append || false;\n if (funcDef.category) {\n funcDef.category.push(funcDef);\n }\n index[funcDef.name] = funcDef;\n index[funcDef.name] = funcDef;\n}\n\naddFuncDef({\n name: 'abs',\n category: categories.Arithmatic,\n});\n\naddFuncDef({\n name: 'log2',\n category: categories.Arithmatic,\n});\n\naddFuncDef({\n name: 'cumsum',\n category: categories.Arithmatic,\n});\n\naddFuncDef({\n name: 'integral',\n category: categories.Arithmatic,\n});\n\naddFuncDef({\n name: 'fill',\n category: categories.Interpolation,\n params: [\n { name: \"fill\", type: 'string', options: ['null', 'zero', 'linear', 'last'] },\n { name: \"limit\", type: 'int', optional: true},\n ],\n defaultParams: ['zero'],\n append: true,\n});\n\naddFuncDef({\n name: 'hour_before',\n category: categories.Timeshift,\n});\n\naddFuncDef({\n name: 'day_before',\n category: categories.Timeshift,\n});\n\naddFuncDef({\n name: 'week_before',\n category: categories.Timeshift,\n});\n\naddFuncDef({\n name: 'month_before',\n category: categories.Timeshift,\n});\n\naddFuncDef({\n name: 'per_second',\n category: categories.Rate,\n});\n\naddFuncDef({\n name: 'per_minute',\n category: categories.Rate,\n});\n\naddFuncDef({\n name: 'per_hour',\n category: categories.Rate,\n});\n\naddFuncDef({\n name: 'dt',\n category: categories.Rate,\n});\n\naddFuncDef({\n name: 'diff',\n category: categories.Rate,\n});\n\naddFuncDef({\n name: 'derivative',\n category: categories.Rate,\n});\n\naddFuncDef({\n name: 'ewma_3',\n category: categories.Smoothing,\n});\n\naddFuncDef({\n name: 'ewma_5',\n category: categories.Smoothing,\n});\n\naddFuncDef({\n name: 'ewma_10',\n category: categories.Smoothing,\n});\n\naddFuncDef({\n name: 'ewma_20',\n category: categories.Smoothing,\n});\n\naddFuncDef({\n name: 'median_3',\n category: categories.Smoothing,\n});\n\naddFuncDef({\n name: 'median_5',\n category: categories.Smoothing,\n});\n\naddFuncDef({\n name: 'median_7',\n category: categories.Smoothing,\n});\n\naddFuncDef({\n name: 'median_9',\n category: categories.Smoothing,\n});\n\naddFuncDef({\n name: 'rollup',\n category: categories.Rollup,\n params: [\n { name: \"rollup\", type: 'string', options: ['sum', 'avg', 'min', 'max'] },\n { name: \"period\", type: 'int'},\n ],\n defaultParams: ['sum', 600],\n append: true\n});\n\naddFuncDef({\n name: 'count_nonzero',\n category: categories.Count,\n});\n\naddFuncDef({\n name: 'count_not_null',\n category: categories.Count,\n});\n\naddFuncDef({\n name: 'top',\n category: categories.Rank,\n params: [\n { name: \"top\", type: 'int', options: [5, 10, 15]},\n { name: \"aggr\", type: 'string', options: ['mean', 'min', 'max', 'area', 'l2norm', 'last']},\n { name: \"dir\", type: 'string', options: ['asc', 'desc']},\n ],\n defaultParams: [5, 'mean', 'dir'],\n});\n\naddFuncDef({\n name: 'robust_trend',\n category: categories.Regression,\n});\n\naddFuncDef({\n name: 'piecewise_constant',\n category: categories.Regression,\n});\n\naddFuncDef({\n name: 'anomalies',\n category: categories.Algorithms,\n params: [\n { name: \"anomalies\", type: 'string', options: ['basic', 'agile', 'robust', 'adaptive']},\n { name: \"bonds\", type: 'int', options: [1, 2, 3, 4, 5, 6]},\n ],\n defaultParams: ['basic', 2],\n});\n\naddFuncDef({\n name: 'anomalies',\n category: categories.Algorithms,\n params: [\n { name: \"anomalies\", type: 'string', options: ['basic', 'agile', 'robust', 'adaptive']},\n { name: \"bonds\", type: 'int', options: [1, 2, 3, 4, 5, 6]},\n ],\n defaultParams: ['basic', 2],\n});\n\naddFuncDef({\n name: 'outliers',\n category: categories.Algorithms,\n params: [\n { name: \"outliers\", type: 'string', options: ['DBSCAN', 'MAD', 'scaledDBSCAN', 'scaledMAD']},\n { name: \"tolerance\", type: 'int', options: [\n 0.33,\n 0.5,\n 1,\n 1.5,\n 2.0,\n 2.5,\n 3.0,\n 3.5,\n 4.0,\n 4.5,\n 5.0]},\n ],\n defaultParams: ['basic', 2],\n});\n\n_.each(categories, function(funcList, catName) {\n categories[catName] = _.sortBy(funcList, 'name');\n});\n\nfunction FuncInstance(funcDef, options) {\n this.def = funcDef;\n this.params = [];\n\n if (options && options.withDefaultParams) {\n this.params = funcDef.defaultParams.slice(0);\n }\n\n this.updateText();\n}\n\nFuncInstance.prototype.render = function(metricExp) {\n var str = this.def.name + '(';\n var parameters = _.map(this.params, function(value) {\n return value;\n });\n if (metricExp && !this.def.append) {\n parameters.unshift(metricExp);\n }\n\n var funcRender = str + parameters.join(', ') + ')';\n console.log(funcRender, this.def.append);\n if (this.def.append) {\n return metricExp + '.' + funcRender;\n } else {\n return funcRender;\n }\n};\n\nFuncInstance.prototype.updateParam = function(strValue, index) {\n // handle optional parameters\n // if string contains ',' and next param is optional, split and update both\n\n if (strValue === '' && this.def.params[index].optional) {\n this.params.splice(index, 1);\n }\n else {\n this.params[index] = strValue;\n }\n\n this.updateText();\n};\n\nFuncInstance.prototype.updateText = function () {\n if (this.params.length === 0) {\n this.text = this.def.name + '()';\n return;\n }\n\n var text = this.def.name + '(';\n text += this.params.join(', ');\n text += ')';\n this.text = text;\n};\n\nvar createFuncInstance = function(funcDef, options) {\n if (_.isString(funcDef)) {\n if (!index[funcDef]) {\n throw { message: 'Method not found ' + name };\n }\n funcDef = index[funcDef];\n }\n return new FuncInstance(funcDef, options);\n};\n\nvar getFuncDef = function(name) {\n return index[name];\n};\n\nvar getCategories = function() {\n return categories;\n};\n\nvar foo;\n\nexport default foo = {\n createFuncInstance: createFuncInstance,\n getFuncDef: getFuncDef,\n getCategories: getCategories,\n};\n\n"]}