jquery-minicolors-rails 2.1.1.2 → 2.1.4.0

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
- NDRhNmFjMzg5YjJhNzg5MjFiYjNhZDVkZThhMDk4MWExY2M2ZWM5Ng==
4
+ NDcyOTk0YzJlZGE3ZTJjNTIxYTY0NDAxMWU3ZjQ0MTNkZDkzMjU0Yg==
5
5
  data.tar.gz: !binary |-
6
- MTJmOGNkOGY3NWFmZmY2MDMxMDg5ODNhZmRkOTg5NDg3ZDZmMWUzZA==
6
+ YjA2NDU1ZjkxODA2MmI1YjQ0NjZlYTgxYjM4MzY3NDczMGQ3Y2E3MQ==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- MWVkNWJkNzE1MGRmOWNjYjYxNGRmZTA0ZDQ1ZDc3MWQ5YzM4MjZlNGQ1MDU3
10
- M2I1ZWZmN2JlYjcyMTFkYTg1YWNlZTNhMGQ5NzFjZDM4NDIyODkyNmY5YTY0
11
- MDQ0YTZiZTdiNzkwYjI1MmJkNmYzNGNiMThkMjljMDYyYzM0MGI=
9
+ OGMwNDI5NGZjZjk4MzQ3NmU3MTMwYzZiY2YzOWEyMzFiZGY4ZjM2ZjQ5NGUy
10
+ YjNiYTljNTM1ZGZlMWU2YjAzNTdkNjY2ZDg0NmI5OThhYjczZTIzMmM5MjFk
11
+ ZWQ5YjdiMDJmNTZmMWQyMjgzYzBkMzRmOTg1YTZhYWJjNTg3MDQ=
12
12
  data.tar.gz: !binary |-
13
- NmQ5NDEyNTRmNDk5ZGUzMjM2MTJhNWMzMTUyNTQ3Y2RiNDliYzJhNmE0NDAx
14
- YWM3ZTdlZGE3ZDkyMGVjOWY4MWYwYjBlNmE4ZmM4YTFjZmJhZjNiODIwYmEz
15
- NmQ0Nzk2Y2UxNjNmMDRhYmQxNzQwNzk5NTA5MGIzN2VkMDU5ZTA=
13
+ YzQyNGFjNjNmYzgwOTdjYjdmOTFhODkxMTA2OTgxN2MyNTExNzBiODAxOGI5
14
+ ZDkxNjkwODBjNTg0MTQ3NzRmZDVmZGI4ZDI2OGFiZmZmYmE1ZDQzOTJiMzBj
15
+ ZGYyNGExNzAxY2NlYzNmYWQ1MjlkMTI3NTUwYTRjNTA1ZjMzOGU=
@@ -1,3 +1,3 @@
1
1
  module JqueryMinicolorsRails
2
- VERSION = '2.1.1.2'
2
+ VERSION = '2.1.4.0'
3
3
  end
@@ -7,7 +7,7 @@
7
7
  *
8
8
  */
9
9
  if(jQuery) (function($) {
10
-
10
+
11
11
  // Defaults
12
12
  $.minicolors = {
13
13
  defaults: {
@@ -28,25 +28,25 @@ if(jQuery) (function($) {
28
28
  theme: 'default'
29
29
  }
30
30
  };
31
-
31
+
32
32
  // Public methods
33
33
  $.extend($.fn, {
34
34
  minicolors: function(method, data) {
35
-
35
+
36
36
  switch(method) {
37
-
37
+
38
38
  // Destroy the control
39
39
  case 'destroy':
40
40
  $(this).each( function() {
41
41
  destroy($(this));
42
42
  });
43
43
  return $(this);
44
-
44
+
45
45
  // Hide the color picker
46
46
  case 'hide':
47
47
  hide();
48
48
  return $(this);
49
-
49
+
50
50
  // Get/set opacity
51
51
  case 'opacity':
52
52
  // Getter
@@ -60,16 +60,16 @@ if(jQuery) (function($) {
60
60
  });
61
61
  }
62
62
  return $(this);
63
-
63
+
64
64
  // Get an RGB(A) object based on the current color/opacity
65
65
  case 'rgbObject':
66
66
  return rgbObject($(this), method === 'rgbaObject');
67
-
67
+
68
68
  // Get an RGB(A) string based on the current color/opacity
69
69
  case 'rgbString':
70
70
  case 'rgbaString':
71
71
  return rgbString($(this), method === 'rgbaString');
72
-
72
+
73
73
  // Get/set settings on the fly
74
74
  case 'settings':
75
75
  if( data === undefined ) {
@@ -83,12 +83,12 @@ if(jQuery) (function($) {
83
83
  });
84
84
  }
85
85
  return $(this);
86
-
86
+
87
87
  // Show the color picker
88
88
  case 'show':
89
89
  show( $(this).eq(0) );
90
90
  return $(this);
91
-
91
+
92
92
  // Get/set the hex color value
93
93
  case 'value':
94
94
  if( data === undefined ) {
@@ -101,7 +101,7 @@ if(jQuery) (function($) {
101
101
  });
102
102
  }
103
103
  return $(this);
104
-
104
+
105
105
  // Initializes the control
106
106
  default:
107
107
  if( method !== 'create' ) data = method;
@@ -109,36 +109,36 @@ if(jQuery) (function($) {
109
109
  init($(this), data);
110
110
  });
111
111
  return $(this);
112
-
112
+
113
113
  }
114
-
114
+
115
115
  }
116
116
  });
117
-
117
+
118
118
  // Initialize input elements
119
119
  function init(input, settings) {
120
-
120
+
121
121
  var minicolors = $('<div class="minicolors" />'),
122
122
  defaults = $.minicolors.defaults;
123
-
123
+
124
124
  // Do nothing if already initialized
125
125
  if( input.data('minicolors-initialized') ) return;
126
-
126
+
127
127
  // Handle settings
128
128
  settings = $.extend(true, {}, defaults, settings);
129
-
129
+
130
130
  // The wrapper
131
131
  minicolors
132
132
  .addClass('minicolors-theme-' + settings.theme)
133
133
  .toggleClass('minicolors-with-opacity', settings.opacity);
134
-
134
+
135
135
  // Custom positioning
136
136
  if( settings.position !== undefined ) {
137
137
  $.each(settings.position.split(' '), function() {
138
138
  minicolors.addClass('minicolors-position-' + this);
139
139
  });
140
140
  }
141
-
141
+
142
142
  // The input
143
143
  input
144
144
  .addClass('minicolors-input')
@@ -147,11 +147,11 @@ if(jQuery) (function($) {
147
147
  .prop('size', 7)
148
148
  .wrap(minicolors)
149
149
  .after(
150
- '<div class="minicolors-panel minicolors-slider-' + settings.control + '">' +
151
- '<div class="minicolors-slider">' +
150
+ '<div class="minicolors-panel minicolors-slider-' + settings.control + '">' +
151
+ '<div class="minicolors-slider">' +
152
152
  '<div class="minicolors-picker"></div>' +
153
- '</div>' +
154
- '<div class="minicolors-opacity-slider">' +
153
+ '</div>' +
154
+ '<div class="minicolors-opacity-slider">' +
155
155
  '<div class="minicolors-picker"></div>' +
156
156
  '</div>' +
157
157
  '<div class="minicolors-grid">' +
@@ -160,7 +160,7 @@ if(jQuery) (function($) {
160
160
  '</div>' +
161
161
  '</div>'
162
162
  );
163
-
163
+
164
164
  // The swatch
165
165
  if( !settings.inline ) {
166
166
  input.after('<span class="minicolors-swatch"><span class="minicolors-swatch-color"></span></span>');
@@ -169,86 +169,82 @@ if(jQuery) (function($) {
169
169
  input.focus();
170
170
  });
171
171
  }
172
-
172
+
173
173
  // Prevent text selection in IE
174
174
  input.parent().find('.minicolors-panel').on('selectstart', function() { return false; }).end();
175
-
175
+
176
176
  // Inline controls
177
177
  if( settings.inline ) input.parent().addClass('minicolors-inline');
178
-
178
+
179
179
  updateFromInput(input, false);
180
-
180
+
181
181
  input.data('minicolors-initialized', true);
182
-
182
+
183
183
  }
184
-
184
+
185
185
  // Returns the input back to its original state
186
186
  function destroy(input) {
187
-
187
+
188
188
  var minicolors = input.parent();
189
-
189
+
190
190
  // Revert the input element
191
191
  input
192
192
  .removeData('minicolors-initialized')
193
193
  .removeData('minicolors-settings')
194
194
  .removeProp('size')
195
195
  .removeClass('minicolors-input');
196
-
196
+
197
197
  // Remove the wrap and destroy whatever remains
198
198
  minicolors.before(input).remove();
199
-
199
+
200
200
  }
201
-
201
+
202
202
  // Shows the specified dropdown panel
203
203
  function show(input) {
204
-
204
+
205
205
  var minicolors = input.parent(),
206
206
  panel = minicolors.find('.minicolors-panel'),
207
207
  settings = input.data('minicolors-settings');
208
-
208
+
209
209
  // Do nothing if uninitialized, disabled, inline, or already open
210
- if( !input.data('minicolors-initialized') ||
211
- input.prop('disabled') ||
212
- minicolors.hasClass('minicolors-inline') ||
210
+ if( !input.data('minicolors-initialized') ||
211
+ input.prop('disabled') ||
212
+ minicolors.hasClass('minicolors-inline') ||
213
213
  minicolors.hasClass('minicolors-focus')
214
214
  ) return;
215
-
215
+
216
216
  hide();
217
-
217
+
218
218
  minicolors.addClass('minicolors-focus');
219
219
  panel
220
220
  .stop(true, true)
221
221
  .fadeIn(settings.showSpeed, function() {
222
222
  if( settings.show ) settings.show.call(input.get(0));
223
223
  });
224
-
224
+
225
225
  }
226
-
226
+
227
227
  // Hides all dropdown panels
228
228
  function hide() {
229
-
230
- $('.minicolors-input').each( function() {
231
-
232
- var input = $(this),
233
- settings = input.data('minicolors-settings'),
234
- minicolors = input.parent();
235
-
236
- // Don't hide inline controls
237
- if( settings.inline ) return;
238
-
239
- minicolors.find('.minicolors-panel').fadeOut(settings.hideSpeed, function() {
240
- if(minicolors.hasClass('minicolors-focus')) {
241
- if( settings.hide ) settings.hide.call(input.get(0));
242
- }
229
+
230
+ $('.minicolors-focus').each( function() {
231
+
232
+ var minicolors = $(this),
233
+ input = minicolors.find('.minicolors-input'),
234
+ panel = minicolors.find('.minicolors-panel'),
235
+ settings = input.data('minicolors-settings');
236
+
237
+ panel.fadeOut(settings.hideSpeed, function() {
238
+ if( settings.hide ) settings.hide.call(input.get(0));
243
239
  minicolors.removeClass('minicolors-focus');
244
- });
245
-
240
+ });
241
+
246
242
  });
247
243
  }
248
-
244
+
249
245
  // Moves the selected picker
250
246
  function move(target, event, animate) {
251
-
247
+
252
248
  var input = target.parents('.minicolors').find('.minicolors-input'),
253
249
  settings = input.data('minicolors-settings'),
254
250
  picker = target.find('[class$=-picker]'),
@@ -258,20 +254,19 @@ if(jQuery) (function($) {
258
254
  y = Math.round(event.pageY - offsetY),
259
255
  duration = animate ? settings.animationSpeed : 0,
260
256
  wx, wy, r, phi;
261
-
262
-
257
+
263
258
  // Touch support
264
259
  if( event.originalEvent.changedTouches ) {
265
260
  x = event.originalEvent.changedTouches[0].pageX - offsetX;
266
261
  y = event.originalEvent.changedTouches[0].pageY - offsetY;
267
262
  }
268
-
263
+
269
264
  // Constrain picker to its container
270
265
  if( x < 0 ) x = 0;
271
266
  if( y < 0 ) y = 0;
272
267
  if( x > target.width() ) x = target.width();
273
268
  if( y > target.height() ) y = target.height();
274
-
269
+
275
270
  // Constrain color wheel values to the wheel
276
271
  if( target.parent().is('.minicolors-slider-wheel') && picker.parent().is('.minicolors-grid') ) {
277
272
  wx = 75 - x;
@@ -287,7 +282,7 @@ if(jQuery) (function($) {
287
282
  x = Math.round(x);
288
283
  y = Math.round(y);
289
284
  }
290
-
285
+
291
286
  // Move the picker
292
287
  if( target.is('.minicolors-grid') ) {
293
288
  picker
@@ -307,57 +302,57 @@ if(jQuery) (function($) {
307
302
  updateFromControl(input, target);
308
303
  });
309
304
  }
310
-
305
+
311
306
  }
312
-
307
+
313
308
  // Sets the input based on the color picker values
314
309
  function updateFromControl(input, target) {
315
-
310
+
316
311
  function getCoords(picker, container) {
317
-
312
+
318
313
  var left, top;
319
314
  if( !picker.length || !container ) return null;
320
315
  left = picker.offset().left;
321
316
  top = picker.offset().top;
322
-
317
+
323
318
  return {
324
319
  x: left - container.offset().left + (picker.outerWidth() / 2),
325
320
  y: top - container.offset().top + (picker.outerHeight() / 2)
326
321
  };
327
-
322
+
328
323
  }
329
-
324
+
330
325
  var hue, saturation, brightness, x, y, r, phi,
331
-
326
+
332
327
  hex = input.val(),
333
328
  opacity = input.attr('data-opacity'),
334
-
329
+
335
330
  // Helpful references
336
331
  minicolors = input.parent(),
337
332
  settings = input.data('minicolors-settings'),
338
333
  swatch = minicolors.find('.minicolors-swatch'),
339
-
334
+
340
335
  // Panel objects
341
336
  grid = minicolors.find('.minicolors-grid'),
342
337
  slider = minicolors.find('.minicolors-slider'),
343
338
  opacitySlider = minicolors.find('.minicolors-opacity-slider'),
344
-
339
+
345
340
  // Picker objects
346
341
  gridPicker = grid.find('[class$=-picker]'),
347
342
  sliderPicker = slider.find('[class$=-picker]'),
348
343
  opacityPicker = opacitySlider.find('[class$=-picker]'),
349
-
344
+
350
345
  // Picker positions
351
346
  gridPos = getCoords(gridPicker, grid),
352
347
  sliderPos = getCoords(sliderPicker, slider),
353
348
  opacityPos = getCoords(opacityPicker, opacitySlider);
354
-
349
+
355
350
  // Handle colors
356
351
  if( target.is('.minicolors-grid, .minicolors-slider') ) {
357
-
352
+
358
353
  // Determine HSB values
359
354
  switch(settings.control) {
360
-
355
+
361
356
  case 'wheel':
362
357
  // Calculate hue, saturation, and brightness
363
358
  x = (grid.width() / 2) - gridPos.x;
@@ -378,11 +373,11 @@ if(jQuery) (function($) {
378
373
  s: saturation,
379
374
  b: brightness
380
375
  });
381
-
376
+
382
377
  // Update UI
383
378
  slider.css('backgroundColor', hsb2hex({ h: hue, s: saturation, b: 100 }));
384
379
  break;
385
-
380
+
386
381
  case 'saturation':
387
382
  // Calculate hue, saturation, and brightness
388
383
  hue = keepWithin(parseInt(gridPos.x * (360 / grid.width()), 10), 0, 360);
@@ -393,12 +388,12 @@ if(jQuery) (function($) {
393
388
  s: saturation,
394
389
  b: brightness
395
390
  });
396
-
391
+
397
392
  // Update UI
398
393
  slider.css('backgroundColor', hsb2hex({ h: hue, s: 100, b: brightness }));
399
394
  minicolors.find('.minicolors-grid-inner').css('opacity', saturation / 100);
400
395
  break;
401
-
396
+
402
397
  case 'brightness':
403
398
  // Calculate hue, saturation, and brightness
404
399
  hue = keepWithin(parseInt(gridPos.x * (360 / grid.width()), 10), 0, 360);
@@ -409,12 +404,12 @@ if(jQuery) (function($) {
409
404
  s: saturation,
410
405
  b: brightness
411
406
  });
412
-
407
+
413
408
  // Update UI
414
409
  slider.css('backgroundColor', hsb2hex({ h: hue, s: saturation, b: 100 }));
415
410
  minicolors.find('.minicolors-grid-inner').css('opacity', 1 - (brightness / 100));
416
411
  break;
417
-
412
+
418
413
  default:
419
414
  // Calculate hue, saturation, and brightness
420
415
  hue = keepWithin(360 - parseInt(sliderPos.y * (360 / slider.height()), 10), 0, 360);
@@ -425,18 +420,18 @@ if(jQuery) (function($) {
425
420
  s: saturation,
426
421
  b: brightness
427
422
  });
428
-
423
+
429
424
  // Update UI
430
425
  grid.css('backgroundColor', hsb2hex({ h: hue, s: 100, b: 100 }));
431
426
  break;
432
-
427
+
433
428
  }
434
-
429
+
435
430
  // Adjust case
436
431
  input.val( convertCase(hex, settings.letterCase) );
437
-
432
+
438
433
  }
439
-
434
+
440
435
  // Handle opacity
441
436
  if( target.is('.minicolors-opacity-slider') ) {
442
437
  if( settings.opacity ) {
@@ -446,51 +441,51 @@ if(jQuery) (function($) {
446
441
  }
447
442
  if( settings.opacity ) input.attr('data-opacity', opacity);
448
443
  }
449
-
444
+
450
445
  // Set swatch color
451
446
  swatch.find('SPAN').css({
452
447
  backgroundColor: hex,
453
448
  opacity: opacity
454
449
  });
455
-
450
+
456
451
  // Handle change event
457
452
  doChange(input, hex, opacity);
458
-
453
+
459
454
  }
460
-
455
+
461
456
  // Sets the color picker values from the input
462
457
  function updateFromInput(input, preserveInputValue) {
463
-
458
+
464
459
  var hex,
465
460
  hsb,
466
461
  opacity,
467
462
  x, y, r, phi,
468
-
463
+
469
464
  // Helpful references
470
465
  minicolors = input.parent(),
471
466
  settings = input.data('minicolors-settings'),
472
467
  swatch = minicolors.find('.minicolors-swatch'),
473
-
468
+
474
469
  // Panel objects
475
470
  grid = minicolors.find('.minicolors-grid'),
476
471
  slider = minicolors.find('.minicolors-slider'),
477
472
  opacitySlider = minicolors.find('.minicolors-opacity-slider'),
478
-
473
+
479
474
  // Picker objects
480
475
  gridPicker = grid.find('[class$=-picker]'),
481
476
  sliderPicker = slider.find('[class$=-picker]'),
482
477
  opacityPicker = opacitySlider.find('[class$=-picker]');
483
-
478
+
484
479
  // Determine hex/HSB values
485
480
  hex = convertCase(parseHex(input.val(), true), settings.letterCase);
486
481
  if( !hex ){
487
482
  hex = convertCase(parseHex(settings.defaultValue, true), settings.letterCase);
488
483
  }
489
484
  hsb = hex2hsb(hex);
490
-
485
+
491
486
  // Update input value
492
487
  if( !preserveInputValue ) input.val(hex);
493
-
488
+
494
489
  // Determine opacity value
495
490
  if( settings.opacity ) {
496
491
  // Get from data-opacity attribute and keep within 0-1 range
@@ -498,18 +493,18 @@ if(jQuery) (function($) {
498
493
  if( isNaN(opacity) ) opacity = 1;
499
494
  input.attr('data-opacity', opacity);
500
495
  swatch.find('SPAN').css('opacity', opacity);
501
-
496
+
502
497
  // Set opacity picker position
503
498
  y = keepWithin(opacitySlider.height() - (opacitySlider.height() * opacity), 0, opacitySlider.height());
504
499
  opacityPicker.css('top', y + 'px');
505
500
  }
506
-
501
+
507
502
  // Update swatch
508
503
  swatch.find('SPAN').css('backgroundColor', hex);
509
-
504
+
510
505
  // Determine picker locations
511
506
  switch(settings.control) {
512
-
507
+
513
508
  case 'wheel':
514
509
  // Set grid position
515
510
  r = keepWithin(Math.ceil(hsb.s * 0.75), 0, grid.height() / 2);
@@ -520,16 +515,16 @@ if(jQuery) (function($) {
520
515
  top: y + 'px',
521
516
  left: x + 'px'
522
517
  });
523
-
518
+
524
519
  // Set slider position
525
520
  y = 150 - (hsb.b / (100 / grid.height()));
526
521
  if( hex === '' ) y = 0;
527
522
  sliderPicker.css('top', y + 'px');
528
-
523
+
529
524
  // Update panel color
530
525
  slider.css('backgroundColor', hsb2hex({ h: hsb.h, s: hsb.s, b: 100 }));
531
526
  break;
532
-
527
+
533
528
  case 'saturation':
534
529
  // Set grid position
535
530
  x = keepWithin((5 * hsb.h) / 12, 0, 150);
@@ -537,17 +532,17 @@ if(jQuery) (function($) {
537
532
  gridPicker.css({
538
533
  top: y + 'px',
539
534
  left: x + 'px'
540
- });
541
-
535
+ });
536
+
542
537
  // Set slider position
543
538
  y = keepWithin(slider.height() - (hsb.s * (slider.height() / 100)), 0, slider.height());
544
539
  sliderPicker.css('top', y + 'px');
545
-
540
+
546
541
  // Update UI
547
542
  slider.css('backgroundColor', hsb2hex({ h: hsb.h, s: 100, b: hsb.b }));
548
543
  minicolors.find('.minicolors-grid-inner').css('opacity', hsb.s / 100);
549
544
  break;
550
-
545
+
551
546
  case 'brightness':
552
547
  // Set grid position
553
548
  x = keepWithin((5 * hsb.h) / 12, 0, 150);
@@ -555,17 +550,17 @@ if(jQuery) (function($) {
555
550
  gridPicker.css({
556
551
  top: y + 'px',
557
552
  left: x + 'px'
558
- });
559
-
553
+ });
554
+
560
555
  // Set slider position
561
556
  y = keepWithin(slider.height() - (hsb.b * (slider.height() / 100)), 0, slider.height());
562
557
  sliderPicker.css('top', y + 'px');
563
-
558
+
564
559
  // Update UI
565
560
  slider.css('backgroundColor', hsb2hex({ h: hsb.h, s: hsb.s, b: 100 }));
566
561
  minicolors.find('.minicolors-grid-inner').css('opacity', 1 - (hsb.b / 100));
567
562
  break;
568
-
563
+
569
564
  default:
570
565
  // Set grid position
571
566
  x = keepWithin(Math.ceil(hsb.s / (100 / grid.width())), 0, grid.width());
@@ -574,39 +569,39 @@ if(jQuery) (function($) {
574
569
  top: y + 'px',
575
570
  left: x + 'px'
576
571
  });
577
-
572
+
578
573
  // Set slider position
579
574
  y = keepWithin(slider.height() - (hsb.h / (360 / slider.height())), 0, slider.height());
580
575
  sliderPicker.css('top', y + 'px');
581
-
576
+
582
577
  // Update panel color
583
578
  grid.css('backgroundColor', hsb2hex({ h: hsb.h, s: 100, b: 100 }));
584
579
  break;
585
-
580
+
586
581
  }
587
-
582
+
588
583
  // Fire change event, but only if minicolors is fully initialized
589
584
  if( input.data('minicolors-initialized') ) {
590
585
  doChange(input, hex, opacity);
591
586
  }
592
-
587
+
593
588
  }
594
-
589
+
595
590
  // Runs the change and changeDelay callbacks
596
591
  function doChange(input, hex, opacity) {
597
-
592
+
598
593
  var settings = input.data('minicolors-settings'),
599
594
  lastChange = input.data('minicolors-lastChange');
600
-
595
+
601
596
  // Only run if it actually changed
602
597
  if( !lastChange || lastChange.hex !== hex || lastChange.opacity !== opacity ) {
603
-
598
+
604
599
  // Remember last-changed value
605
600
  input.data('minicolors-lastChange', {
606
601
  hex: hex,
607
602
  opacity: opacity
608
603
  });
609
-
604
+
610
605
  // Fire change event
611
606
  if( settings.change ) {
612
607
  if( settings.changeDelay ) {
@@ -622,9 +617,9 @@ if(jQuery) (function($) {
622
617
  }
623
618
  input.trigger('change').trigger('input');
624
619
  }
625
-
620
+
626
621
  }
627
-
622
+
628
623
  // Generates an RGB(A) object based on the input's value
629
624
  function rgbObject(input) {
630
625
  var hex = parseHex($(input).val(), true),
@@ -634,7 +629,7 @@ if(jQuery) (function($) {
634
629
  if( opacity !== undefined ) $.extend(rgb, { a: parseFloat(opacity) });
635
630
  return rgb;
636
631
  }
637
-
632
+
638
633
  // Genearates an RGB(A) string based on the input's value
639
634
  function rgbString(input, alpha) {
640
635
  var hex = parseHex($(input).val(), true),
@@ -648,12 +643,12 @@ if(jQuery) (function($) {
648
643
  return 'rgb(' + rgb.r + ', ' + rgb.g + ', ' + rgb.b + ')';
649
644
  }
650
645
  }
651
-
646
+
652
647
  // Converts to the letter case specified in settings
653
648
  function convertCase(string, letterCase) {
654
649
  return letterCase === 'uppercase' ? string.toUpperCase() : string.toLowerCase();
655
650
  }
656
-
651
+
657
652
  // Parses a string and returns a valid hex string when possible
658
653
  function parseHex(string, expand) {
659
654
  string = string.replace(/[^A-F0-9]/ig, '');
@@ -663,14 +658,14 @@ if(jQuery) (function($) {
663
658
  }
664
659
  return '#' + string;
665
660
  }
666
-
661
+
667
662
  // Keeps value within min and max
668
663
  function keepWithin(value, min, max) {
669
664
  if( value < min ) value = min;
670
665
  if( value > max ) value = max;
671
666
  return value;
672
667
  }
673
-
668
+
674
669
  // Converts an HSB object to an RGB object
675
670
  function hsb2rgb(hsb) {
676
671
  var rgb = {};
@@ -698,7 +693,7 @@ if(jQuery) (function($) {
698
693
  b: Math.round(rgb.b)
699
694
  };
700
695
  }
701
-
696
+
702
697
  // Converts an RGB object to a hex string
703
698
  function rgb2hex(rgb) {
704
699
  var hex = [
@@ -711,19 +706,19 @@ if(jQuery) (function($) {
711
706
  });
712
707
  return '#' + hex.join('');
713
708
  }
714
-
709
+
715
710
  // Converts an HSB object to a hex string
716
711
  function hsb2hex(hsb) {
717
712
  return rgb2hex(hsb2rgb(hsb));
718
713
  }
719
-
714
+
720
715
  // Converts a hex string to an HSB object
721
716
  function hex2hsb(hex) {
722
717
  var hsb = rgb2hsb(hex2rgb(hex));
723
718
  if( hsb.s === 0 ) hsb.h = 360;
724
719
  return hsb;
725
720
  }
726
-
721
+
727
722
  // Converts an RGB object to an HSB object
728
723
  function rgb2hsb(rgb) {
729
724
  var hsb = { h: 0, s: 0, b: 0 };
@@ -751,7 +746,7 @@ if(jQuery) (function($) {
751
746
  hsb.b *= 100/255;
752
747
  return hsb;
753
748
  }
754
-
749
+
755
750
  // Converts a hex string to an RGB object
756
751
  function hex2rgb(hex) {
757
752
  hex = parseInt(((hex.indexOf('#') > -1) ? hex.substring(1) : hex), 16);
@@ -761,7 +756,7 @@ if(jQuery) (function($) {
761
756
  b: (hex & 0x0000FF)
762
757
  };
763
758
  }
764
-
759
+
765
760
  // Handle events
766
761
  $(document)
767
762
  // Hide on clicks outside of the control
@@ -803,16 +798,16 @@ if(jQuery) (function($) {
803
798
  var input = $(this),
804
799
  settings = input.data('minicolors-settings');
805
800
  if( !input.data('minicolors-initialized') ) return;
806
-
801
+
807
802
  // Parse Hex
808
803
  input.val(parseHex(input.val(), true));
809
-
804
+
810
805
  // Is it blank?
811
806
  if( input.val() === '' ) input.val(parseHex(settings.defaultValue, true));
812
-
807
+
813
808
  // Adjust case
814
809
  input.val( convertCase(input.val(), settings.letterCase) );
815
-
810
+
816
811
  })
817
812
  // Handle keypresses
818
813
  .on('keydown.minicolors', '.minicolors-input', function(event) {
@@ -843,5 +838,5 @@ if(jQuery) (function($) {
843
838
  updateFromInput(input, true);
844
839
  }, 1);
845
840
  });
846
-
841
+
847
842
  })(jQuery);
@@ -266,6 +266,9 @@
266
266
  height: 28px;
267
267
  border-radius: 3px;
268
268
  }
269
+ .minicolors-theme-bootstrap .minicolors-swatch-color {
270
+ border-radius: inherit;
271
+ }
269
272
  .minicolors-theme-bootstrap.minicolors-position-right .minicolors-swatch {
270
273
  left: auto;
271
274
  right: 3px;
@@ -277,3 +280,14 @@
277
280
  padding-right: 44px;
278
281
  padding-left: 12px;
279
282
  }
283
+ .minicolors-theme-bootstrap .minicolors-input.input-lg + .minicolors-swatch {
284
+ top: 4px;
285
+ left: 4px;
286
+ width: 37px;
287
+ height: 37px;
288
+ border-radius: 5px;
289
+ }
290
+ .minicolors-theme-bootstrap .minicolors-input.input-sm + .minicolors-swatch {
291
+ width: 24px;
292
+ height: 24px;
293
+ }
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jquery-minicolors-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.1.1.2
4
+ version: 2.1.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kostiantyn Kahanskyi
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-02-21 00:00:00.000000000 Z
11
+ date: 2014-04-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails