diff options
author | varac <varacanero@zeromail.org> | 2016-07-13 20:07:09 +0200 |
---|---|---|
committer | varac <varacanero@zeromail.org> | 2016-07-13 20:07:09 +0200 |
commit | 5d01197cf893d4a8c9a57f7c963f47393d34e157 (patch) | |
tree | 860e97c0af1ad8c7d4bd1aecb0b7e6658b312846 /widgets/number |
initial commit, import from pixelated_dashboard
Diffstat (limited to 'widgets/number')
-rw-r--r-- | widgets/number/number.coffee | 24 | ||||
-rw-r--r-- | widgets/number/number.html | 11 | ||||
-rw-r--r-- | widgets/number/number.scss | 39 |
3 files changed, 74 insertions, 0 deletions
diff --git a/widgets/number/number.coffee b/widgets/number/number.coffee new file mode 100644 index 0000000..645ee7f --- /dev/null +++ b/widgets/number/number.coffee @@ -0,0 +1,24 @@ +class Dashing.Number extends Dashing.Widget + @accessor 'current', Dashing.AnimatedValue + + @accessor 'difference', -> + if @get('last') + last = parseInt(@get('last')) + current = parseInt(@get('current')) + if last != 0 + diff = Math.abs(Math.round((current - last) / last * 100)) + "#{diff}%" + else + "" + + @accessor 'arrow', -> + if @get('last') + if parseInt(@get('current')) > parseInt(@get('last')) then 'icon-arrow-up' else 'icon-arrow-down' + + onData: (data) -> + if data.status + # clear existing "status-*" classes + $(@get('node')).attr 'class', (i,c) -> + c.replace /\bstatus-\S+/g, '' + # add new class + $(@get('node')).addClass "status-#{data.status}" diff --git a/widgets/number/number.html b/widgets/number/number.html new file mode 100644 index 0000000..c82e5f4 --- /dev/null +++ b/widgets/number/number.html @@ -0,0 +1,11 @@ +<h1 class="title" data-bind="title"></h1> + +<h2 class="value" data-bind="current | shortenedNumber | prepend prefix | append suffix"></h2> + +<p class="change-rate"> + <i data-bind-class="arrow"></i><span data-bind="difference"></span> +</p> + +<p class="more-info" data-bind="moreinfo"></p> + +<p class="updated-at" data-bind="updatedAtMessage"></p> diff --git a/widgets/number/number.scss b/widgets/number/number.scss new file mode 100644 index 0000000..9e36c5a --- /dev/null +++ b/widgets/number/number.scss @@ -0,0 +1,39 @@ +// ---------------------------------------------------------------------------- +// Sass declarations +// ---------------------------------------------------------------------------- +$background-color: #178CA6; +$value-color: #fff; + +$title-color: rgba(255, 255, 255, 0.7); +$moreinfo-color: rgba(255, 255, 255, 0.7); + +// ---------------------------------------------------------------------------- +// Widget-number styles +// ---------------------------------------------------------------------------- +.widget-number { + + background-color: $background-color; + + .title { + color: $title-color; + } + + .value { + color: $value-color; + } + + .change-rate { + font-weight: 500; + font-size: 30px; + color: $value-color; + } + + .more-info { + color: $moreinfo-color; + } + + .updated-at { + color: rgba(0, 0, 0, 0.3); + } + +} |