{"version":3,"sources":["jsdelivr-header.js","/npm/@domoinc/ca-gauge-with-text@1.0.4/dist/bundle.js"],"names":[],"mappings":"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","file":"/npm/@domoinc/ca-gauge-with-text@1.0.4/dist/bundle.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/@domoinc/ca-gauge-with-text@1.0.4/dist/bundle.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","/*! Copyright 2016 Domo Inc. */\n(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"d3\"), require(\"d3.chart\"), require(\"@domoinc/base-widget\"), require(\"@domoinc/da-theme2\"), require(\"@domoinc/summary-number\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"d3\", \"d3.chart\", \"base-widget\", \"theme2\", \"summary-number\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"CAGaugeWithText\"] = factory(require(\"d3\"), require(\"d3.chart\"), require(\"@domoinc/base-widget\"), require(\"@domoinc/da-theme2\"), require(\"@domoinc/summary-number\"));\n\telse\n\t\troot[\"CAGaugeWithText\"] = factory(root[\"d3\"], root[\"d3.chart\"], root[\"BaseWidget\"], root[\"da\"][\"theme2\"], root[\"SummaryNumber\"]);\n})(this, function(__WEBPACK_EXTERNAL_MODULE_1__, __WEBPACK_EXTERNAL_MODULE_2__, __WEBPACK_EXTERNAL_MODULE_3__, __WEBPACK_EXTERNAL_MODULE_4__, __WEBPACK_EXTERNAL_MODULE_5__) {\nreturn /******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\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\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\texports: {},\n/******/ \t\t\tid: moduleId,\n/******/ \t\t\tloaded: false\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.loaded = 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// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"/dist/\";\n\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(0);\n/******/ })\n/************************************************************************/\n/******/ ([\n/* 0 */\n/***/ function(module, exports, __webpack_require__) {\n\n\tvar d3 = __webpack_require__(1);\n\tvar d3Chart = __webpack_require__(2);\n\tvar BaseWidget = __webpack_require__(3);\n\tvar daTheme2 = __webpack_require__(4);\n\tvar SummaryNumber = __webpack_require__(5);\n\n\t//----------------------------------------------------------------------------------\n\t//----------------------------------------------------------------------------------\n\t// CAGaugeWithText:\n\t// This is where you can give some high level documentation of your widget.\n\t//----------------------------------------------------------------------------------\n\t//----------------------------------------------------------------------------------\n\tmodule.exports = BaseWidget.extend('CAGaugeWithText', {\n\t  //**********************************************************************************\n\t  // Initialization\n\t  //**********************************************************************************\n\t  initialize: function () {\n\t    'use strict';\n\n\t    var _Chart = this;\n\n\t    //----------------------------------------------------------------------------------\n\t    // Config\n\t    //----------------------------------------------------------------------------------\n\t    this._newConfig = {\n\t      //Plugin configable configs\n\t      width: {\n\t        // name: 'Widget Width',\n\t        description: 'Width of the widget',\n\t        value: 400,\n\t        type: 'number',\n\t        units: 'px'\n\t      },\n\t      height: {\n\t        // name: 'Widget Height',\n\t        description: 'Height of the widget',\n\t        value: 400,\n\t        type: 'number',\n\t        units: 'px'\n\t      },\n\n\t      strokeWidth: daTheme2.themeElements.primaryStrokeWidth({\n\t        name: 'Outer Circle Thickness',\n\t        description: 'Thickness of the outer circle'\n\t      }),\n\t      gaugeFillColor: {\n\t        name: 'Gauge Fill Color',\n\t        description: 'Color for the gauge and arrow indicator',\n\t        value: '#f68c35',\n\t        type: 'color'\n\t      },\n\t      outerCircleColor: {\n\t        name: 'Outer Circle Color',\n\t        description: 'Color for the dashed outer circle',\n\t        value: '#f68c35',\n\t        type: 'color'\n\t      },\n\t      generalNotFilledColor: daTheme2.themeElements.notFilledColor(),\n\n\t      //Labels\n\t      topLabel: {\n\t        name: 'Top Label Text',\n\t        description: 'Text for the top label',\n\t        type: 'string',\n\t        value: 'METRIC'\n\t      },\n\t      bottomLabel: {\n\t        name: 'Bottom Label Text',\n\t        category: 'General',\n\t        description: 'Text for the bottom label',\n\t        type: 'string',\n\t        value: 'METRIC'\n\t      },\n\t      textFontFamily: daTheme2.themeElements.h1FontFamily(),\n\t      fontWeight: daTheme2.themeElements.h1FontWeight(),\n\t      valueColor: {\n\t        name: 'Value Font Color',\n\t        description: 'Font color for the value',\n\t        value: '#f68c35',\n\t        type: 'color'\n\t      },\n\t      labelColor: {\n\t        name: 'Label Font Color',\n\t        description: 'Font color for the labels',\n\t        value: '#f68c35',\n\t        type: 'color'\n\t      },\n\n\t      min: {\n\t        name: 'Minimum Value',\n\t        description: 'Minimum value for the gauge',\n\t        type: 'number',\n\t        value: 0,\n\t        units: ''\n\t      },\n\t      max: {\n\t        name: 'Maximum Value',\n\t        description: 'Maximum value for the gauge',\n\t        type: 'number',\n\t        value: 100,\n\t        units: ''\n\t      },\n\n\t      //widget default configs\n\t      chartName: {\n\t        description: 'Name of chart for Reporting.',\n\t        type: 'string',\n\t        value: 'CAGaugeWithText'\n\t      },\n\t      animationDuration: {\n\t        description: 'Time it takes for all animations to happen',\n\t        type: 'number',\n\t        units: 'ms',\n\t        value: 2000\n\t      },\n\n\t    };\n\n\t    // Update config object from base chart.\n\t    this.mergeConfig(_Chart._newConfig);\n\n\n\t    //----------------------------------------------------------------------------------\n\t    // Data Definition:\n\t    //----------------------------------------------------------------------------------\n\t    _Chart._newDataDefinition = {\n\t      'Label': {\n\t        type: 'string',\n\t        validate: function (d) { return this.accessor(d) !== undefined; },\n\t        accessor: function (line) { return line[0] === undefined ? undefined : String(line[0]); }\n\t      },\n\t      'Value': {\n\t        type: 'number',\n\t        validate: function (d) { return !isNaN(this.accessor(d)); },\n\t        accessor: function (line) { return parseFloat(line[1]); }\n\t      }\n\t    };\n\n\t    // Update data defs object from base chart.\n\t    this.mergeDataDefinition(_Chart._newDataDefinition);\n\n\t    //----------------------------------------------------------------------------------\n\t    // Interface - This is where you document your events. The chart's .on()' and\n\t    // '.trigger()' methods will go here.\n\t    //----------------------------------------------------------------------------------\n\n\t    //----------------------------------------------------------------------------------\n\t    // Static - Anything that is defined here will never change\n\t    //----------------------------------------------------------------------------------\n\t    var service = new SummaryNumber();\n\n\t    _Chart._arc = d3.svg.arc();\n\n\t    /*----------------------------------------------------------------------------------\n\t     // Data validation function and chart variable setup.\n\t     ----------------------------------------------------------------------------------*/\n\n\t    //**********************************************************************************\n\t    // d3.Chart Demux\n\t    //**********************************************************************************\n\t    _Chart.demux =  function (name, validData) {\n\t      return validData;\n\t    };\n\n\t    //**********************************************************************************\n\t    // d3.Chart Transform\n\t    //**********************************************************************************\n\t    this.transform = function (data) {\n\t      var validData = _Chart.validateData(data);\n\t      \n\t      validData = removeExcessData(validData);\n\t      initChartVariables(validData[0]);\n\t      _Chart._gaugeGroup.attr('transform', 'translate(' + (_Chart.c('width') / 2.0) + ',' + (_Chart.c('height') / 2.0) + ')');\n\t      return validData;\n\t    };\n\n\t    //----------------------------------------------------------------------------------\n\t    // Layers: This is where you'll place your layers.\n\t    //----------------------------------------------------------------------------------\n\t    _Chart._gaugeGroup = _Chart._layerGroup.append('g').attr('class', 'gaugeGroup')\n\t    //**********************************************************************************\n\t    //Place a small description of the layer here.\n\t    //**********************************************************************************\n\t    _Chart.layer('gauge', this._gaugeGroup, {\n\t      //**********************************************************************************\n\t      //**********************************************************************************\n\t      dataBind: function (validData) {\n\t        return this.selectAll('g.gauge').data(validData);\n\t      },\n\n\t      //**********************************************************************************\n\t      //**********************************************************************************\n\t      insert: function () {\n\t        return this.append('g').attr('class', 'gauge');\n\t      },\n\n\t      //----------------------------------------------------------------------------------\n\t      // Element Life Cycle Events\n\t      //----------------------------------------------------------------------------------\n\t      events: {\n\t        //**********************************************************************************\n\t        //**********************************************************************************\n\t        'enter': function () {\n\t          this.append('circle')\n\t            .attr('class', 'outerCircle');\n\n\t          this.append('text')\n\t            .attr('class', 'value');\n\n\t          this.append('text')\n\t            .attr('class', 'topLabel')\n\t            .style('opacity', 0);\n\n\t          this.append('text')\n\t            .attr('class', 'bottomLabel')\n\t            .style('opacity', 0);\n\n\t          this.append('g')\n\t            .attr('class', 'needle')\n\t            .append('path')\n\t            .attr({\n\t              'class': 'indicator',\n\t              'transform': 'rotate(-154)'\n\t            });\n\n\t          this.append('path')\n\t            .attr('class', 'backgroundArc');\n\n\t          this.append('path')\n\t            .attr('class', 'gaugeArc');\n\n\t          return this;\n\t        },\n\n\t        //**********************************************************************************\n\t        //**********************************************************************************\n\t        'merge': function () {\n\n\t          this.select('circle.outerCircle')\n\t            .attr({\n\t              'cx': 0,\n\t              'cy': 0,\n\t              'r': _Chart._chartSize * 0.49\n\t            })\n\t            .style({\n\t              'stroke': _Chart.c('outerCircleColor'),\n\t              'stroke-dasharray': ('2, 2'),\n\t              'stroke-width': _Chart.c('strokeWidth'),\n\t              'fill': 'none'\n\t            });\n\n\t          this.select('text.value')\n\t            .attr({\n\t              'x': 0,\n\t              'y': (_Chart._chartSize * 0.07)\n\t            })\n\t            .style({\n\t              'font-family': _Chart.c('textFontFamily'),\n\t              'font-weight': _Chart.c('fontWeight').value,\n\t              'font-size': _Chart._chartSize * 0.21 + 'px',\n\t              'fill': _Chart.c('valueColor'),\n\t              'text-anchor': 'middle'\n\t            })\n\t            .transition()\n\t            .delay(_Chart.c('animationDuration') * 0.66)\n\t            .duration(_Chart.c('animationDuration') * 0.33)\n\t            .tween('text', function (d) {\n\t              var start = service.reverseSummaryNumber(this.textContent); // jshint ignore:line\n\t              var end = _Chart.a('Value')(d);\n\t              var i = d3.interpolate(start, end);\n\t              return function (t) {\n\t                this.textContent = service.summaryNumber(i(t)); // jshint ignore:line\n\t              };\n\t            });\n\n\t          this.select('text.topLabel')\n\t            .attr({\n\t              'y': -(_Chart._chartSize * 0.16)\n\t            })\n\t            .style({\n\t              'font-family': _Chart.c('textFontFamily'),\n\t              'font-weight': _Chart.c('fontWeight').value,\n\t              'font-size': _Chart._chartSize * 0.045 + 'px',\n\t              'fill': _Chart.c('labelColor'),\n\t              'text-anchor': 'middle',\n\t            })\n\t            .transition()\n\t            .duration(_Chart.c('animationDuration') * 0.33)\n\t            .style('opacity', 1)\n\t            .text(_Chart.c('topLabel'));\n\n\t          this.select('text.bottomLabel')\n\t            .attr({\n\t              'y': (_Chart._chartSize * 0.195)\n\t            })\n\t            .style({\n\t              'font-family': _Chart.c('textFontFamily'),\n\t              'font-weight': _Chart.c('fontWeight').value,\n\t              'font-size': _Chart._chartSize * 0.045 + 'px',\n\t              'fill': _Chart.c('labelColor'),\n\t              'text-anchor': 'middle',\n\t            })\n\t            .transition()\n\t            .duration(_Chart.c('animationDuration') * 0.33)\n\t            .style('opacity', 1)\n\t            .text(_Chart.c('bottomLabel'));\n\n\t          this.select('path.backgroundArc')\n\t            .datum({endAngle: _Chart._oldAngle2 ? _Chart._oldAngle2 : -3 * Math.PI / 3.5})\n\t            .attr({\n\t              'd': _Chart._arc\n\t            })\n\t            .style({\n\t              'fill': _Chart.c('generalNotFilledColor')\n\t            })\n\t            .transition()\n\t            .delay(_Chart.c('animationDuration') * 0.33)\n\t            .duration(_Chart.c('animationDuration') * 0.33)\n\t            .call(backgroundArcTween, 3 * Math.PI / 3.5);\n\n\t          this.select('path.gaugeArc')\n\t            .datum({endAngle: _Chart._oldAngle ? _Chart._oldAngle : -3 * Math.PI / 3.5})\n\t            .attr({\n\t              'd': _Chart._arc\n\t            })\n\t            .style({\n\t              'fill': _Chart.c('gaugeFillColor')\n\t            })\n\t            .transition()\n\t            .delay(_Chart.c('animationDuration') * 0.66)\n\t            .duration(_Chart.c('animationDuration') * 0.33)\n\t            .call(arcTween, _Chart._endAngle);\n\n\t          this.select('path.indicator')\n\t            .attr({\n\t              'd': 'M0,' + (_Chart._chartSize * -0.41) + ' l-' + (_Chart._chartSize * 0.015) + ',-' + (_Chart._chartSize * 0.081666666667) + ' ' + (_Chart._chartSize * 0.03) + ',0 z'\n\t            })\n\t            .style({\n\t              'fill': _Chart.c('gaugeFillColor')\n\t            })\n\n\t          ;\n\n\t          return this;\n\t        },\n\n\t        //**********************************************************************************\n\t        //**********************************************************************************\n\t        'merge:transition': function () {\n\n\t          var trans = d3.transform(_Chart._gaugeGroup.select('path.indicator').attr('transform'));\n\t          var currentAngle = trans.rotate;\n\t          var finalAngle = _Chart._endAngle * 180 / Math.PI;\n\t          var intermediateAngle = (finalAngle + currentAngle) / 2;\n\n\t          this.select('path.indicator')\n\t            .delay(_Chart.c('animationDuration') * 0.66)\n\t            .duration((_Chart.c('animationDuration') * 0.33) / 2)\n\t            .ease('cubic-in')\n\t            .attr('transform', 'rotate(' + intermediateAngle + ')')\n\t            .transition()\n\t            .delay((_Chart.c('animationDuration') * 0.66) + (_Chart.c('animationDuration') * 0.33 / 2))\n\t            .duration((_Chart.c('animationDuration') * 0.33) / 2)\n\t            .ease('cubic-out')\n\t            .attr('transform', 'rotate(' + finalAngle + ')');\n\n\t          return this;\n\t        },\n\n\t        //**********************************************************************************\n\t        //**********************************************************************************\n\t        'exit': function () {\n\t          return this.remove();\n\t        }\n\t      }\n\t    });\n\n\t    //----------------------------------------------------------------------------------\n\t    // Helper Functions\n\t    //----------------------------------------------------------------------------------\n\t    /**\n\t     * remove excess rows of data\n\t     */\n\t    function removeExcessData(validData) {\n\t      if (validData.length > 1) {\n\t        var newData = [validData[0]];\n\t        return newData;\n\t      }\n\t      return validData;\n\t    }\n\n\t    /**\n\t     * intitialize chart variables\n\t     */\n\t    function initChartVariables(validData) {\n\n\t      setChartSize();\n\t      _Chart._arc\n\t        .outerRadius(_Chart._chartSize * 0.37)\n\t        .innerRadius((_Chart._chartSize * 0.37) - (_Chart._chartSize * 0.0333333333334))\n\t        .startAngle(-3 * Math.PI / 3.5);\n\n\t      _Chart._scale = d3.scale.linear().domain([_Chart.c('min'), _Chart.c('max')]).range([-3 * Math.PI / 3.5, 3 * Math.PI / 3.5]).clamp(true);\n\t      _Chart._endAngle = _Chart._scale(_Chart.a('Value')(validData));\n\n\t    }\n\n\t    /**\n\t     * set chart size\n\t     */\n\t    function setChartSize() {\n\t      _Chart._chartSize = d3.min([_Chart.c('height'), _Chart.c('width')])\n\t    }\n\n\t    /**\n\t     * transition the arc animation\n\t     */\n\t    function arcTween(transition, newAngle) {\n\t      transition.attrTween('d', function () {\n\t        var d = {};\n\t        var oldAngle = _Chart._oldAngle ? _Chart._oldAngle : -3 * Math.PI / 3.5;\n\t        var interpolate = d3.interpolate(oldAngle, newAngle);\n\t        _Chart._oldAngle = newAngle;\n\n\t        return function (t) {\n\t          d.endAngle = interpolate(t);\n\t          return _Chart._arc(d);\n\t        };\n\t      });\n\t    }\n\n\t    /**\n\t     * transition the background arc animation\n\t     */\n\t    function backgroundArcTween(transition, newAngle) {\n\t      transition.attrTween('d', function () {\n\t        var d = {};\n\t        var oldAngle = _Chart._oldAngle2 ? _Chart._oldAngle2 : -3 * Math.PI / 3.5;\n\t        var interpolate = d3.interpolate(oldAngle, newAngle);\n\t        _Chart._oldAngle2 = newAngle;\n\n\t        return function (t) {\n\t          d.endAngle = interpolate(t);\n\t          return _Chart._arc(d);\n\t        };\n\t      });\n\t    }\n\n\t  },\n\t});\n\n\n/***/ },\n/* 1 */\n/***/ function(module, exports) {\n\n\tmodule.exports = __WEBPACK_EXTERNAL_MODULE_1__;\n\n/***/ },\n/* 2 */\n/***/ function(module, exports) {\n\n\tmodule.exports = __WEBPACK_EXTERNAL_MODULE_2__;\n\n/***/ },\n/* 3 */\n/***/ function(module, exports) {\n\n\tmodule.exports = __WEBPACK_EXTERNAL_MODULE_3__;\n\n/***/ },\n/* 4 */\n/***/ function(module, exports) {\n\n\tmodule.exports = __WEBPACK_EXTERNAL_MODULE_4__;\n\n/***/ },\n/* 5 */\n/***/ function(module, exports) {\n\n\tmodule.exports = __WEBPACK_EXTERNAL_MODULE_5__;\n\n/***/ }\n/******/ ])\n});\n;"]}