gauge.js 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. (function (global, factory) {
  2. if (typeof define === "function" && define.amd) {
  3. define("/Plugin/gauge", ["exports", "Plugin", "Config"], factory);
  4. } else if (typeof exports !== "undefined") {
  5. factory(exports, require("Plugin"), require("Config"));
  6. } else {
  7. var mod = {
  8. exports: {}
  9. };
  10. factory(mod.exports, global.Plugin, global.Config);
  11. global.PluginGauge = mod.exports;
  12. }
  13. })(this, function (_exports, _Plugin2, _Config) {
  14. "use strict";
  15. Object.defineProperty(_exports, "__esModule", {
  16. value: true
  17. });
  18. _exports.default = void 0;
  19. _Plugin2 = babelHelpers.interopRequireDefault(_Plugin2);
  20. var NAME = 'gauge';
  21. var GaugePlugin =
  22. /*#__PURE__*/
  23. function (_Plugin) {
  24. babelHelpers.inherits(GaugePlugin, _Plugin);
  25. function GaugePlugin() {
  26. babelHelpers.classCallCheck(this, GaugePlugin);
  27. return babelHelpers.possibleConstructorReturn(this, babelHelpers.getPrototypeOf(GaugePlugin).apply(this, arguments));
  28. }
  29. babelHelpers.createClass(GaugePlugin, [{
  30. key: "getName",
  31. value: function getName() {
  32. return NAME;
  33. }
  34. }, {
  35. key: "render",
  36. value: function render() {
  37. if (!Gauge) {
  38. return;
  39. }
  40. var $el = this.$el;
  41. var $canvas = $el.find('canvas');
  42. var $text = $el.find('.gauge-label');
  43. if ($canvas.length === 0) {
  44. return;
  45. }
  46. var gauge = new Gauge($canvas[0]).setOptions(this.options);
  47. $el.data('gauge', gauge);
  48. gauge.animationSpeed = 50;
  49. gauge.maxValue = $el.data('max-value');
  50. gauge.set($el.data('value'));
  51. if ($text.length > 0) {
  52. gauge.setTextField($text[0]);
  53. }
  54. }
  55. }], [{
  56. key: "getDefaults",
  57. value: function getDefaults() {
  58. return {
  59. lines: 12,
  60. angle: 0.2,
  61. lineWidth: 0.4,
  62. pointer: {
  63. length: 0.58,
  64. strokeWidth: 0.03,
  65. color: (0, _Config.colors)('blue-grey', 400)
  66. },
  67. limitMax: true,
  68. colorStart: (0, _Config.colors)('blue-grey', 200),
  69. colorStop: (0, _Config.colors)('blue-grey', 200),
  70. strokeColor: (0, _Config.colors)('primary', 500),
  71. generateGradient: true
  72. };
  73. }
  74. }]);
  75. return GaugePlugin;
  76. }(_Plugin2.default);
  77. _Plugin2.default.register(NAME, GaugePlugin);
  78. var _default = GaugePlugin;
  79. _exports.default = _default;
  80. });