glider-rails 0.1.4.1 → 0.1.4.2

Sign up to get free protection for your applications and to get access to all the features.
@@ -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);