Sha256: cfe5177e963c23722e2bd4310d9908ff96eb6575f9a926158874fc0c2f6f4806
Contents?: true
Size: 1.76 KB
Versions: 1
Compression:
Stored size: 1.76 KB
Contents
# frozen_string_literal: true module Playbook module PbGauge class Gauge include Playbook::Props partial "pb_gauge/gauge" prop :chart_data, type: Playbook::Props::Array, default: [{ name: "Name", value: 0 }] prop :style, type: Playbook::Props::Enum, values: %w[solidgauge], default: "solidgauge" prop :title, type: Playbook::Props::String, default: "" prop :prefix, type: Playbook::Props::String, default: "" prop :suffix, type: Playbook::Props::String, default: "" prop :height, type: Playbook::Props::String, default: nil prop :tooltip_html, default: '<span style="font-weight: bold; color:{point.color};">●</span> {point.name}: ' + '<b>{point.y} </b>' prop :full_circle, type: Playbook::Props::Boolean, default: false prop :show_labels, type: Playbook::Props::Boolean, default: false prop :min, type: Playbook::Props::Numeric, default: 0 prop :max, type: Playbook::Props::Numeric, default: 100 def chart_data_formatted chart_data.map { |hash| hash[:y] = hash.delete :value } chart_data end def chart_options { id: id, chartData: chart_data_formatted, circumference: full_circle ? [0, 360] : [-100, 100], height: height, min: min, max: max, title: title, suffix: suffix, prefix: prefix, showLabels: show_labels, style: style, tooltipHtml: tooltip_html, type: "gauge", }.to_json.html_safe end def classname generate_classname("pb_gauge_kit") end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
playbook_ui-5.3.0.pre.alpha1 | app/pb_kits/playbook/pb_gauge/gauge.rb |