glider-rails 0.1.4.1 → 0.1.4.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,5 +1,5 @@
1
1
  ###
2
- glider 0.1.4.1 - AngularJS slider
2
+ glider 0.1.4.2 - AngularJS slider
3
3
  https://github.com/evrone/glider
4
4
  Copyright (c) 2013 Valentin Vasilyev, Dmitry Karpunin
5
5
  Licensed under the MIT (http://www.opensource.org/licenses/mit-license.php) license.
@@ -25,28 +25,28 @@ gliderModule = angular.module('glider', [])
25
25
  gliderModule.directive 'slider', ['$document', ($document) ->
26
26
 
27
27
  template: """
28
- <span class="g-slider horizontal">
29
- <span class="slider" ng-click="sliderClick($event)">
30
- <span class="range" style="width: {{xPosition}}%;"></span>
31
- <span class="handle" style="left: {{xPosition}}%;" ng-mousedown="handleMouseDown($event)">
32
- <span class="value" ng-show="showValueInHandle">{{handleValue | intersperse}}</span>
33
- </span>
34
- </span>
35
- <span class="side dec">
36
- <span class="button" ng-click="step(-1)">-</span>
37
- <span class="bound-value">{{min() | intersperse}}</span>
38
- </span>
39
- <span class="side inc">
40
- <span class="button" ng-click="step(+1)">+</span>
41
- <span class="bound-value">{{max() | intersperse}}</span>
42
- </span>
43
- <span class="increments">
44
- <span ng-repeat="i in increments" class="i" style="left: {{i.offset}}%">
45
- {{ i.value | intersperse }}
46
- </span>
47
- </span>
48
- </span>
49
- """
28
+ <span class="g-slider horizontal">
29
+ <span class="slider" ng-click="sliderClick($event)">
30
+ <span class="range" style="width: {{xPosition}}%;"></span>
31
+ <span class="handle" style="left: {{xPosition}}%;" ng-mousedown="handleMouseDown($event)">
32
+ <span class="value" ng-show="showValueInHandle">{{handleValue | intersperse}}</span>
33
+ </span>
34
+ </span>
35
+ <span class="side dec">
36
+ <span class="button" ng-click="step(-1)">-</span>
37
+ <span class="bound-value">{{min() | intersperse}}</span>
38
+ </span>
39
+ <span class="side inc">
40
+ <span class="button" ng-click="step(+1)">+</span>
41
+ <span class="bound-value">{{max() | intersperse}}</span>
42
+ </span>
43
+ <span class="increments">
44
+ <span ng-repeat="i in increments" class="i" style="left: {{i.offset}}%">
45
+ {{ i.value | intersperse }}
46
+ </span>
47
+ </span>
48
+ </span>
49
+ """
50
50
 
51
51
  replace: true
52
52
  restrict: "E"
@@ -58,19 +58,19 @@ gliderModule.directive 'slider', ['$document', ($document) ->
58
58
  link: (scope, element, attrs) ->
59
59
 
60
60
  parseIncrements = ->
61
- if attrs.increments?
62
- min = scope.min()
63
- max = scope.max()
64
- offsetK = 100 / Math.abs(max - min)
65
- scope.increments = []
66
- scope.snapValues = [min, max]
67
- for i in attrs.increments.split(',')
68
- i = parseInt(i)
69
- if min < i < max
70
- scope.increments.push value: i, offset: (i - min) * offsetK
71
- scope.snapValues.push i
72
- scope.snapValues.sort((a, b) -> a - b)
73
- undefined
61
+ return unless attrs.increments?
62
+ min = scope.min()
63
+ max = scope.max()
64
+ return unless isFinite(min) and isFinite(max)
65
+ offsetK = 100 / Math.abs(max - min)
66
+ scope.increments = []
67
+ scope.snapValues = [min, max]
68
+ for i in attrs.increments.split(',')
69
+ i = parseInt(i)
70
+ if min < i < max
71
+ scope.increments.push value: i, offset: (i - min) * offsetK
72
+ scope.snapValues.push i
73
+ scope.snapValues.sort((a, b) -> a - b)
74
74
 
75
75
  sliderElement = element[0].getElementsByClassName('slider')[0]
76
76
  dragging = false
@@ -98,7 +98,7 @@ gliderModule.directive 'slider', ['$document', ($document) ->
98
98
  if diff < minDiff
99
99
  minDiff = diff
100
100
  closestValue = snapValue
101
- scope.value = closestValue
101
+ scope.value = closestValue if isFinite(closestValue)
102
102
  refreshHandle()
103
103
 
104
104
  valueFromPosition = ->
@@ -1,6 +1,6 @@
1
1
  // Generated by CoffeeScript 1.6.3
2
2
  /*
3
- glider 0.1.4.1 - AngularJS slider
3
+ glider 0.1.4.2 - AngularJS slider
4
4
  https://github.com/evrone/glider
5
5
  Copyright (c) 2013 Valentin Vasilyev, Dmitry Karpunin
6
6
  Licensed under the MIT (http://www.opensource.org/licenses/mit-license.php) license.
@@ -30,7 +30,7 @@
30
30
  gliderModule.directive('slider', [
31
31
  '$document', function($document) {
32
32
  return {
33
- template: "<span class=\"g-slider horizontal\">\n <span class=\"slider\" ng-click=\"sliderClick($event)\">\n <span class=\"range\" style=\"width: {{xPosition}}%;\"></span>\n <span class=\"handle\" style=\"left: {{xPosition}}%;\" ng-mousedown=\"handleMouseDown($event)\">\n <span class=\"value\" ng-show=\"showValueInHandle\">{{handleValue | intersperse}}</span>\n </span>\n </span>\n <span class=\"side dec\">\n <span class=\"button\" ng-click=\"step(-1)\">-</span>\n <span class=\"bound-value\">{{min() | intersperse}}</span>\n </span>\n <span class=\"side inc\">\n <span class=\"button\" ng-click=\"step(+1)\">+</span>\n <span class=\"bound-value\">{{max() | intersperse}}</span>\n </span>\n <span class=\"increments\">\n <span ng-repeat=\"i in increments\" class=\"i\" style=\"left: {{i.offset}}%\">\n {{ i.value | intersperse }}\n </span>\n </span>\n</span>",
33
+ template: "<span class=\"g-slider horizontal\">\n<span class=\"slider\" ng-click=\"sliderClick($event)\">\n<span class=\"range\" style=\"width: {{xPosition}}%;\"></span>\n<span class=\"handle\" style=\"left: {{xPosition}}%;\" ng-mousedown=\"handleMouseDown($event)\">\n<span class=\"value\" ng-show=\"showValueInHandle\">{{handleValue | intersperse}}</span>\n</span>\n</span>\n<span class=\"side dec\">\n<span class=\"button\" ng-click=\"step(-1)\">-</span>\n<span class=\"bound-value\">{{min() | intersperse}}</span>\n</span>\n<span class=\"side inc\">\n<span class=\"button\" ng-click=\"step(+1)\">+</span>\n<span class=\"bound-value\">{{max() | intersperse}}</span>\n</span>\n<span class=\"increments\">\n<span ng-repeat=\"i in increments\" class=\"i\" style=\"left: {{i.offset}}%\">\n{{ i.value | intersperse }}\n</span>\n</span>\n</span>",
34
34
  replace: true,
35
35
  restrict: "E",
36
36
  scope: {
@@ -42,29 +42,32 @@
42
42
  var deferUpdate, dragging, parseIncrements, refreshHandle, sliderElement, snap, startPointX, step, valueFromPosition;
43
43
  parseIncrements = function() {
44
44
  var i, max, min, offsetK, _i, _len, _ref;
45
- if (attrs.increments != null) {
46
- min = scope.min();
47
- max = scope.max();
48
- offsetK = 100 / Math.abs(max - min);
49
- scope.increments = [];
50
- scope.snapValues = [min, max];
51
- _ref = attrs.increments.split(',');
52
- for (_i = 0, _len = _ref.length; _i < _len; _i++) {
53
- i = _ref[_i];
54
- i = parseInt(i);
55
- if ((min < i && i < max)) {
56
- scope.increments.push({
57
- value: i,
58
- offset: (i - min) * offsetK
59
- });
60
- scope.snapValues.push(i);
61
- }
45
+ if (attrs.increments == null) {
46
+ return;
47
+ }
48
+ min = scope.min();
49
+ max = scope.max();
50
+ if (!(isFinite(min) && isFinite(max))) {
51
+ return;
52
+ }
53
+ offsetK = 100 / Math.abs(max - min);
54
+ scope.increments = [];
55
+ scope.snapValues = [min, max];
56
+ _ref = attrs.increments.split(',');
57
+ for (_i = 0, _len = _ref.length; _i < _len; _i++) {
58
+ i = _ref[_i];
59
+ i = parseInt(i);
60
+ if ((min < i && i < max)) {
61
+ scope.increments.push({
62
+ value: i,
63
+ offset: (i - min) * offsetK
64
+ });
65
+ scope.snapValues.push(i);
62
66
  }
63
- scope.snapValues.sort(function(a, b) {
64
- return a - b;
65
- });
66
67
  }
67
- return void 0;
68
+ return scope.snapValues.sort(function(a, b) {
69
+ return a - b;
70
+ });
68
71
  };
69
72
  sliderElement = element[0].getElementsByClassName('slider')[0];
70
73
  dragging = false;
@@ -101,7 +104,9 @@
101
104
  closestValue = snapValue;
102
105
  }
103
106
  }
104
- scope.value = closestValue;
107
+ if (isFinite(closestValue)) {
108
+ scope.value = closestValue;
109
+ }
105
110
  }
106
111
  return refreshHandle();
107
112
  };
@@ -250,7 +255,3 @@
250
255
  });
251
256
 
252
257
  }).call(this);
253
-
254
- /*
255
- //@ sourceMappingURL=glider.map
256
- */
data/glider-rails.gemspec CHANGED
@@ -4,7 +4,7 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
4
 
5
5
  Gem::Specification.new do |gem|
6
6
  gem.name = "glider-rails"
7
- gem.version = "0.1.4.1"
7
+ gem.version = "0.1.4.2"
8
8
  gem.authors = ["Valentin Valve Vasilyev", "Dmitry KODer Karpunin"]
9
9
  gem.email = ["iamvalentin@gmail.com", "koderfunk@gmail.com"]
10
10
  gem.description = "Glider, AngularJS UI slider for rails asset pipeline"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: glider-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.4.1
4
+ version: 0.1.4.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -27,8 +27,6 @@ files:
27
27
  - Rakefile
28
28
  - app/assets/javascripts/glider.coffee
29
29
  - app/assets/javascripts/glider.js
30
- - app/assets/javascripts/glider.map
31
- - app/assets/javascripts/glider.min.js
32
30
  - glider-rails.gemspec
33
31
  - lib/glider-rails.rb
34
32
  homepage: http://evrone.github.com/glider-rails
@@ -1,10 +0,0 @@
1
- {
2
- "version": 3,
3
- "file": "glider.js",
4
- "sourceRoot": "",
5
- "sources": [
6
- "src/glider.coffee"
7
- ],
8
- "names": [],
9
- "mappings": "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"
10
- }
@@ -1 +0,0 @@
1
- (function(){"use strict";var n;n=angular.module("glider",[]),n.directive("slider",["$document",function(n){return{template:'<span class="g-slider horizontal">\n <span class="slider" ng-click="sliderClick($event)">\n <span class="range" style="width: {{xPosition}}%;"></span>\n <span class="handle" style="left: {{xPosition}}%;" ng-mousedown="handleMouseDown($event)">\n <span class="value" ng-show="showValueInHandle">{{handleValue | intersperse}}</span>\n </span>\n </span>\n <span class="side dec">\n <span class="button" ng-click="step(-1)">-</span>\n <span class="bound-value">{{min() | intersperse}}</span>\n </span>\n <span class="side inc">\n <span class="button" ng-click="step(+1)">+</span>\n <span class="bound-value">{{max() | intersperse}}</span>\n </span>\n <span class="increments">\n <span ng-repeat="i in increments" class="i" style="left: {{i.offset}}%">\n {{ i.value | intersperse }}\n </span>\n </span>\n</span>',replace:!0,restrict:"E",scope:{value:"=",min:"&",max:"&"},link:function(e,a,s){var t,l,i,u,r,o,c,p,v;return i=function(){var n,a,t,l,i,u,r;if(null!=s.increments){for(t=e.min(),a=e.max(),l=100/Math.abs(a-t),e.increments=[],e.snapValues=[t,a],r=s.increments.split(","),i=0,u=r.length;u>i;i++)n=r[i],n=parseInt(n),n>t&&a>n&&(e.increments.push({value:n,offset:(n-t)*l}),e.snapValues.push(n));e.snapValues.sort(function(n,e){return n-e})}return void 0},r=a[0].getElementsByClassName("slider")[0],l=!1,e.xPosition=0,p=s.step||1,t=null!=s.deferUpdate,e.showValueInHandle=null!=s.showValueInHandle,null==e.value&&(e.value=e.min()),u=function(){var n;return n=e.max()-e.min(),0===n?e.xPosition=0:(e.xPosition=100*((e.value-e.min())/n),e.xPosition=Math.min(Math.max(0,e.xPosition),100)),e.showValueInHandle?e.handleValue=e.value:void 0},o=function(){var n,a,s,t,l,i,r;if(e.increments){for(s=1/0,r=e.snapValues,l=0,i=r.length;i>l;l++)t=r[l],a=Math.abs(t-e.value),s>a&&(s=a,n=t);e.value=n}return u()},v=function(){return Math.round(((e.max()-e.min())*(e.xPosition/100)+e.min())/p)*p},e.$watch("min()",function(n){return i(),e.value<n&&(e.value=n),o()}),e.$watch("max()",function(n){return i(),e.value>n&&(e.value=n),o()}),e.$watch("value",function(n,a){return l?void 0:e.min()<=n&&n<=e.max()?u():n=a}),e.step=function(n){var a,t;return t=function(n){var a;return a=e.value+n*p,e.min()<=a&&a<=e.max()?e.value=a:void 0},a=function(n){var a,s;return a=n>0?function(){var n,a,t,l;for(t=e.snapValues,l=[],n=0,a=t.length;a>n;n++)s=t[n],s>e.value&&l.push(s);return l}()[0]:function(){var n,a,t,l;for(t=e.snapValues,l=[],n=0,a=t.length;a>n;n++)s=t[n],s<e.value&&l.push(s);return l}().reverse()[0],null!=a?e.value=a:void 0},null!=s.increments?a(n):t(n)},e.sliderClick=function(n){var a,s,t;if(!angular.element(n.target).hasClass("handle"))return a=null!=(s=n.layerX)?s:null!=(t=n.originalEvent)?t.layerX:void 0,e.xPosition=100*(a/r.offsetWidth),e.value=v(),o()},c=null,e.handleMouseDown=function(n){return angular.element(n.target).hasClass("handle")?(c=n.pageX,l=!0):void 0},n.on("mousemove",function(n){var a;if(l)return a=n.pageX-c,e.xPosition+=100*(a/r.offsetWidth),e.xPosition<0?e.xPosition=0:e.xPosition>100?e.xPosition=100:c=n.pageX,t||(e.value=v()),e.showValueInHandle&&(e.handleValue=v()),e.$apply()}),n.on("mouseup",function(){return l?(t&&(e.value=v()),o(),e.$apply(),l=!1):void 0})}}}]),n.filter("intersperse",function(){return function(n){var e,a,s;if(null!=n)return n=n.toString(),e=function(n){return n.split("").reverse().join("")},a=e(n),a=a.replace(/(.{3})/g,"$1 "),s=e(a),s.trim()}})}).call(this);