jquery-cropper 0.3.4 → 0.3.31

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- ZWE3ZjkxZjhlODNlMmE4ZGQ3OWZmMWY4OThkNDg5MmViYWUxZDhiYQ==
4
+ MGRkOWE3NTdjYmVhNzZiYTAxNzJkNGUyMTliNGYzM2IwYTVkNzhjOA==
5
5
  data.tar.gz: !binary |-
6
- NWMwMGRkZDM0MTJkNzhjMTJlMDk3MmYzMmMzYmZjOWQxMzdhMDM3Mw==
6
+ ZjI5NWM4MzRlZmExMzM3NmYyODhlMTcyOWYwY2E0ZDM5MWY5M2IxYw==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- YjM5MTg4N2QzOGY2YThhOWM2ZGQyMWQ1ZGU2ZTk5OTNjM2UxNzNmNTdiZGM1
10
- MWNjNWEyMThiYzNhODY4MzkyNDkxNjFlYTU4ZmMwMmUxYThmODIwYjg1MTY5
11
- NDUxMGNkMGQ4ODYzODhjNDdmNDMwNDBhYjRlNTYwNzRlZjFjZWQ=
9
+ YmVmN2Q2ZGUwODQ4OTUzNmFmZTQwMTJhZDYzMWUyZTgzY2MxMzM1NjMzNGNl
10
+ YmZiNDIzODZlYjliMjBhMDM0Mjk5NGZjZDcwY2Q1Nzg2YzcyYWNhZWVhODdk
11
+ NTAxMjgyMzliNDczZTJlMGM0YTNiY2YzZmMwYTFkNjdjMWI2NGQ=
12
12
  data.tar.gz: !binary |-
13
- MjI3YjhiMzQ1ZjU2YWM3NmZkZDY0M2FhOGYwM2NmMGZhNDAyNDM1MTFjYzk4
14
- ZjcxNWQyNzU2NzkyNTY3MmVjYjEwNWZiY2U1ZmMxOGU4ZjU1YjUyZmM2Njhj
15
- ODRkYmVhNDgxZTNhNmFkNTE1ZDQ2YjFjMDJkNzFlOGMzNTBjZjU=
13
+ OWM1MTE2OWY2ZjdjZmQyOTkzN2Q5MjhkNDcyMTBhYjllYjYzMzIwYzQ0ZGI1
14
+ ZDc3MTYzMDBmNDU3NDg1ZGNkZTM4ZjYwMTI1ZTA3NDlhNTg3OTMzYzFhMDMx
15
+ Y2U2OWY2MDdjNTEzYjMzOGZlNDliMjk5OGEzMTgzYzg2YjMwOWE=
@@ -1,4 +1,4 @@
1
- (function (factory) {
1
+ (function(factory) {
2
2
  if (typeof define === "function" && define.amd) {
3
3
  // AMD. Register as anonymous module.
4
4
  define(["jquery"], factory);
@@ -6,12 +6,12 @@
6
6
  // Browser globals.
7
7
  factory(jQuery);
8
8
  }
9
- })(function ($) {
9
+ }(function($) {
10
10
 
11
11
  "use strict";
12
12
 
13
13
  var $window = $(window),
14
- Cropper = function (element, options) {
14
+ Cropper = function(element, options) {
15
15
  options = $.isPlainObject(options) ? options : {};
16
16
  this.$image = $(element);
17
17
  this.defaults = $.extend({}, Cropper.defaults, this.$image.data(), options);
@@ -21,13 +21,13 @@
21
21
  Cropper.prototype = {
22
22
  construstor: Cropper,
23
23
 
24
- init: function () {
24
+ init: function() {
25
25
  this.setAspectRatio(this.defaults.aspectRatio);
26
26
  this.render();
27
27
  },
28
28
 
29
- render: function (callback) {
30
- var _this = this,
29
+ render: function(callback) {
30
+ var that = this,
31
31
  $image = this.$image,
32
32
  $clone,
33
33
  src;
@@ -43,7 +43,7 @@
43
43
  src = $image.attr("src"); // Don't use "prop"
44
44
  $clone = $('<img src="' + src + '">');
45
45
 
46
- $clone.on("load", function () {
46
+ $clone.on("load", function() {
47
47
  var image;
48
48
 
49
49
  $clone.off("load");
@@ -72,10 +72,10 @@
72
72
  });
73
73
 
74
74
  image.aspectRatio = image.naturalWidth / image.naturalHeight;
75
- _this.src = src;
76
- _this.image = image;
77
- _this.active = true;
78
- _this.createCropper();
75
+ that.src = src;
76
+ that.image = image;
77
+ that.active = true;
78
+ that.createCropper();
79
79
  });
80
80
 
81
81
  if ($.isFunction(callback)) {
@@ -86,7 +86,7 @@
86
86
  $image.after($clone);
87
87
  },
88
88
 
89
- unrender: function () {
89
+ unrender: function() {
90
90
  if (this.active) {
91
91
  this.active = false;
92
92
  this.removeCropper();
@@ -95,27 +95,19 @@
95
95
  this.cropper = null;
96
96
  this.dragger = null;
97
97
  }
98
-
99
- return this;
100
98
  },
101
99
 
102
- rerender: function (reset) {
103
- var _this = this;
104
-
105
- this.unrender().render(function () {
106
- if (!reset) {
107
- _this.setData(_this.data); // Restore
108
- }
109
- });
100
+ rerender: function() {
101
+ this.unrender();
102
+ this.render();
110
103
  },
111
104
 
112
- resize: function () {
113
- this.data = this.getData(); // Record the current data
105
+ resize: function() {
114
106
  clearTimeout(this.resizing);
115
107
  this.resizing = setTimeout($.proxy(this.rerender, this), 200);
116
108
  },
117
109
 
118
- createCropper: function () {
110
+ createCropper: function() {
119
111
  this.$cropper = $(Cropper.template);
120
112
  this.$dragger = this.$cropper.find(".cropper-dragger");
121
113
  Cropper.fn.toggle(this.$image);
@@ -130,7 +122,7 @@
130
122
  this.addListener();
131
123
  },
132
124
 
133
- removeCropper: function () {
125
+ removeCropper: function() {
134
126
  this.removeListener();
135
127
  this.$preview = null;
136
128
  this.$clone.remove();
@@ -141,21 +133,21 @@
141
133
  Cropper.fn.toggle(this.$image);
142
134
  },
143
135
 
144
- addListener: function () {
136
+ addListener: function() {
145
137
  this.$cropper.bind("mousedown touchstart", $.proxy(this.dragstart, this));
146
138
  this.$cropper.bind("mousemove touchmove", $.proxy(this.dragmove, this));
147
139
  this.$cropper.bind("mouseup mouseleave touchend touchleave", $.proxy(this.dragend, this));
148
140
  $window.on("resize", $.proxy(this.resize, this));
149
141
  },
150
142
 
151
- removeListener: function () {
143
+ removeListener: function() {
152
144
  this.$cropper.unbind("mousedown touchstart", this.dragstart);
153
145
  this.$cropper.unbind("mousemove touchmove", this.dragmove);
154
146
  this.$cropper.unbind("mouseup mouseleave touchend touchleave", this.dragend);
155
147
  $window.off("resize", this.resize);
156
148
  },
157
149
 
158
- setPreview: function () {
150
+ setPreview: function() {
159
151
  var preview = this.defaults.preview;
160
152
 
161
153
  this.$preview = this.$cropper.find(".cropper-preview");
@@ -168,7 +160,7 @@
168
160
  this.setCropper();
169
161
  },
170
162
 
171
- setCropper: function () {
163
+ setCropper: function() {
172
164
  var $container = this.$image.parent(),
173
165
  container = Cropper.fn.size($container),
174
166
  image = this.image,
@@ -192,7 +184,7 @@
192
184
  cropper.left = (container.width - cropper.width) / 2;
193
185
  }
194
186
 
195
- $.each(cropper, function (i, n) {
187
+ $.each(cropper, function(i, n) {
196
188
  cropper[i] = Math.round(n);
197
189
  });
198
190
 
@@ -212,7 +204,7 @@
212
204
  this.setDragger();
213
205
  },
214
206
 
215
- setDragger: function () {
207
+ setDragger: function() {
216
208
  var cropper = this.cropper,
217
209
  // If not set, use the original aspect ratio of the image.
218
210
  aspectRatio = this.defaults.aspectRatio || this.image.aspectRatio,
@@ -249,7 +241,7 @@
249
241
  this.$image.trigger("ready.cropper").off("ready.cropper");
250
242
  },
251
243
 
252
- resetDragger: function () {
244
+ resetDragger: function() {
253
245
  var dragger = this.dragger,
254
246
  cropper = this.cropper;
255
247
 
@@ -276,7 +268,7 @@
276
268
  this.output();
277
269
  },
278
270
 
279
- dragging: function () {
271
+ dragging: function() {
280
272
  var direction = this.direction,
281
273
  dragger = this.dragger,
282
274
  aspectRatio = this.defaults.aspectRatio,
@@ -439,16 +431,16 @@
439
431
  this.startY = this.endY;
440
432
  },
441
433
 
442
- output: function () {
434
+ output: function() {
443
435
  this.defaults.done(this.getData());
444
436
  },
445
437
 
446
- preview: function () {
447
- var _this = this,
448
- cropper = _this.cropper,
449
- dragger = _this.dragger;
438
+ preview: function() {
439
+ var that = this,
440
+ cropper = that.cropper,
441
+ dragger = that.dragger;
450
442
 
451
- this.$preview.each(function () {
443
+ this.$preview.each(function() {
452
444
  var $this = $(this),
453
445
  ratio = $this.width() / dragger.width,
454
446
  styles = {
@@ -459,7 +451,7 @@
459
451
  };
460
452
 
461
453
  $this.css({overflow: "hidden"});
462
- $this.find("img").css(Cropper.fn.round(styles, function (n) {
454
+ $this.find("img").css(Cropper.fn.round(styles, function(n) {
463
455
  return n * ratio;
464
456
  }));
465
457
  });
@@ -467,15 +459,15 @@
467
459
 
468
460
  // Public methods
469
461
 
470
- enable: function (callback) {
462
+ enable: function(callback) {
471
463
  this.render(callback);
472
464
  },
473
465
 
474
- disable: function () {
466
+ disable: function() {
475
467
  this.unrender();
476
468
  },
477
469
 
478
- setAspectRatio: function (aspectRatio) {
470
+ setAspectRatio: function(aspectRatio) {
479
471
  if (aspectRatio === "auto" || ($.isNumeric(aspectRatio) && aspectRatio > 0)) {
480
472
  this.defaults.aspectRatio = aspectRatio === "auto" ? NaN : aspectRatio;
481
473
 
@@ -485,11 +477,11 @@
485
477
  }
486
478
  },
487
479
 
488
- setData: function (data) {
480
+ setData: function(data) {
489
481
  var cropper = this.cropper,
490
482
  dragger = this.dragger,
491
483
  aspectRatio = this.defaults.aspectRatio,
492
- isNumber = function (n) {
484
+ isNumber = function(n) {
493
485
  return typeof n === "number";
494
486
  };
495
487
 
@@ -541,7 +533,7 @@
541
533
  this.resetDragger();
542
534
  },
543
535
 
544
- getData: function () {
536
+ getData: function() {
545
537
  var dragger = this.dragger,
546
538
  data = {};
547
539
 
@@ -561,20 +553,20 @@
561
553
  return data;
562
554
  },
563
555
 
564
- setImgSrc: function (src) {
556
+ setImgSrc: function(src) {
565
557
  if (typeof src === "string" && src.length > 0 && src !== this.src) {
566
558
  this.$image.attr("src", src);
567
- this.rerender(true);
559
+ this.rerender();
568
560
  }
569
561
  },
570
562
 
571
- getImgInfo: function () {
563
+ getImgInfo: function() {
572
564
  return this.image || {};
573
565
  },
574
566
 
575
567
  // Public events
576
568
 
577
- dragstart: function (event) {
569
+ dragstart: function(event) {
578
570
  var touches = Cropper.fn.getOriginalEvent(event).touches,
579
571
  e = event,
580
572
  touching,
@@ -597,7 +589,7 @@
597
589
  }
598
590
  },
599
591
 
600
- dragmove: function (event) {
592
+ dragmove: function(event) {
601
593
  var touches = Cropper.fn.getOriginalEvent(event).changedTouches,
602
594
  e = event,
603
595
  touching;
@@ -620,7 +612,7 @@
620
612
  }
621
613
  },
622
614
 
623
- dragend: function (event) {
615
+ dragend: function(event) {
624
616
  var touches = Cropper.fn.getOriginalEvent(event).changedTouches,
625
617
  e = event,
626
618
  touching;
@@ -644,11 +636,11 @@
644
636
 
645
637
  // Common methods
646
638
  Cropper.fn = {
647
- toggle: function ($e) {
639
+ toggle: function($e) {
648
640
  $e.toggleClass("cropper-hidden");
649
641
  },
650
642
 
651
- position: function ($e, option) {
643
+ position: function($e, option) {
652
644
  var position = $e.css("position");
653
645
 
654
646
  if (position === "static") {
@@ -656,7 +648,7 @@
656
648
  }
657
649
  },
658
650
 
659
- size: function ($e, options) {
651
+ size: function($e, options) {
660
652
  if ($.isPlainObject(options)) {
661
653
  $e.css(options);
662
654
  } else {
@@ -667,7 +659,7 @@
667
659
  }
668
660
  },
669
661
 
670
- round: function (data, fn) {
662
+ round: function(data, fn) {
671
663
  var value,
672
664
  i;
673
665
 
@@ -682,12 +674,12 @@
682
674
  return data;
683
675
  },
684
676
 
685
- transformData: function (data, ratio) {
686
- var _this = this,
677
+ transformData: function(data, ratio) {
678
+ var that = this,
687
679
  result = {};
688
680
 
689
- $.each(data, function (i, n) {
690
- if (_this.isDataOption(i) && $.isNumeric(n) && n >= 0) {
681
+ $.each(data, function(i, n) {
682
+ if (that.isDataOption(i) && $.isNumeric(n) && n >= 0) {
691
683
  result[i] = Math.round(n * ratio);
692
684
  }
693
685
  });
@@ -695,7 +687,7 @@
695
687
  return result;
696
688
  },
697
689
 
698
- getOriginalEvent: function (event) {
690
+ getOriginalEvent: function(event) {
699
691
  if (event && typeof event.originalEvent !== "undefined") {
700
692
  event = event.originalEvent;
701
693
  }
@@ -703,11 +695,11 @@
703
695
  return event;
704
696
  },
705
697
 
706
- isDataOption: function (s) {
698
+ isDataOption: function(s) {
707
699
  return /^(x1|y1|x2|y2|width|height)$/i.test(s);
708
700
  },
709
701
 
710
- isDirection: function (s) {
702
+ isDirection: function(s) {
711
703
  return /^(\*|e|n|w|s|ne|nw|sw|se)$/i.test(s);
712
704
  }
713
705
  };
@@ -739,20 +731,20 @@
739
731
  Cropper.defaults = {
740
732
  aspectRatio: "auto",
741
733
  data: {},
742
- done: function (/* data */) {},
734
+ done: function(/* data */) {},
743
735
  modal: true,
744
736
  preview: ""
745
737
  };
746
738
 
747
- Cropper.setDefaults = function (options) {
739
+ Cropper.setDefaults = function(options) {
748
740
  $.extend(Cropper.defaults, options);
749
741
  };
750
742
 
751
743
  // Register as jQuery plugin
752
- $.fn.cropper = function (options, settings) {
744
+ $.fn.cropper = function(options, settings) {
753
745
  var result = this;
754
746
 
755
- this.each(function () {
747
+ this.each(function() {
756
748
  var $this = $(this),
757
749
  data = $this.data("cropper");
758
750
 
@@ -772,7 +764,7 @@
772
764
  $.fn.cropper.Constructor = Cropper;
773
765
  $.fn.cropper.setDefaults = Cropper.setDefaults;
774
766
 
775
- $(function () {
767
+ $(function() {
776
768
  $("img[cropper]").cropper();
777
769
  });
778
- });
770
+ }));
@@ -11,11 +11,6 @@
11
11
  -webkit-touch-callout: none;
12
12
  }
13
13
 
14
- .cropper-container img {
15
- max-width: none !important;
16
- max-height: none !important;
17
- }
18
-
19
14
  .cropper-container .cropper-modal {
20
15
  position: absolute;
21
16
  top: 0;
@@ -43,25 +38,25 @@
43
38
  -moz-box-sizing: border-box;
44
39
  box-sizing: border-box;
45
40
  overflow: hidden;
41
+ border-width: 1px;
46
42
  border-color: #69f;
47
43
  border-color: rgba(51, 102, 255, .75);
48
44
  border-style: solid;
49
- border-width: 1px;
50
45
  }
51
46
 
52
47
  .cropper-container .cropper-dashed {
53
48
  position: absolute;
54
49
  display: block;
55
50
  filter: alpha(opacity=50);
56
- border: 0 dashed #fff;
57
51
  opacity: .5;
52
+ border: 0 dashed #fff;
58
53
  }
59
54
 
60
55
  .cropper-container .dashed-h {
61
56
  top: 33.3%;
62
57
  left: 0;
63
- width: 100%;
64
58
  height: 33.3%;
59
+ width: 100%;
65
60
  border-top-width: 1px;
66
61
  border-bottom-width: 1px;
67
62
  }
@@ -69,8 +64,8 @@
69
64
  .cropper-container .dashed-v {
70
65
  top: 0;
71
66
  left: 33.3%;
72
- width: 33.3%;
73
67
  height: 100%;
68
+ width: 33.3%;
74
69
  border-right-width: 1px;
75
70
  border-left-width: 1px;
76
71
  }
@@ -190,8 +185,8 @@
190
185
  right: -50%;
191
186
  bottom: -50%;
192
187
  display: block;
193
- width: 200%;
194
188
  height: 200%;
189
+ width: 200%;
195
190
  content: " ";
196
191
  background-color: #69f;
197
192
  filter: alpha(opacity=0);
@@ -1,5 +1,5 @@
1
1
  module Jquery
2
2
  module Cropper
3
- VERSION = "0.3.4"
3
+ VERSION = "0.3.31"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jquery-cropper
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.4
4
+ version: 0.3.31
5
5
  platform: ruby
6
6
  authors:
7
7
  - Vitaliy Yanchuk
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-07-02 00:00:00.000000000 Z
11
+ date: 2014-06-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler