semantic-ui-sass 0.8.2.0 → 0.8.3.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 5b23b21a8fc362e7175983258be1fd66db11628e
4
- data.tar.gz: 7c324ad9aa03c5b716100d52290d9379cc10005d
3
+ metadata.gz: 4ec316c7e4a2d3d5b5add10dd55c077668e00597
4
+ data.tar.gz: d8e85bbde5a89f7053254973345530c06298735d
5
5
  SHA512:
6
- metadata.gz: 5dca4f62ea6fcb91f4946186517554717ddbe0f75247074761bf07fc8ad498c691084e8810c237eb3ff0e03441ba9d82a44034f36bb420c04bc18919bddf20f0
7
- data.tar.gz: a9c5f4c3cbe2ccedcf67b773cc0d67be5c1d621d73dcf255d3b0984a4c0ace25243fe81afc86adbe6f9987df30afbe92ee1915e7f8afe2f784ddac70229da1e2
6
+ metadata.gz: c78da212afb13d9efe088a4b8aa5af3b1eb2cd38a297006123cfb000dfdca2fcd89bad1ba0fa55f8566c69923d93336dbd7b6f988287cfcd000724d5b00fa474
7
+ data.tar.gz: 372bfb459e06db35b768cf5ecedd6640ba347a5eb98eed4e68d5323d41f0480f8b84a78ba0b14d8f7540a8ca16627cb19c0107ba23f7b5f550dfbe2c2145e379
@@ -1,3 +1,9 @@
1
+ ## 0.8.3.0
2
+
3
+ * Update Semantic UI to 0.8.3
4
+
5
+ ## 0.8.0.0
6
+
1
7
  ## 0.8.2.0
2
8
 
3
9
  * Update Semantic UI to 0.8.2
data/README.md CHANGED
@@ -5,7 +5,7 @@
5
5
  ## Installation and Usage
6
6
 
7
7
  ```ruby
8
- gem 'semantic-ui-sass', '~> 0.8.2.0'
8
+ gem 'semantic-ui-sass', '~> 0.8.3.0'
9
9
  ```
10
10
  or
11
11
 
@@ -360,7 +360,7 @@ $.fn.form = function(fields, parameters) {
360
360
  var
361
361
  $field = module.get.field(field.identifier),
362
362
  type = validation.type,
363
- value = $field.val(),
363
+ value = $field.val() + '',
364
364
 
365
365
  bracketRegExp = /\[(.*?)\]/i,
366
366
  bracket = bracketRegExp.exec(type),
@@ -370,7 +370,7 @@ $.fn.form = function(fields, parameters) {
370
370
  ;
371
371
  // if bracket notation is used, pass in extra parameters
372
372
  if(bracket !== undefined && bracket !== null) {
373
- ancillary = bracket[1];
373
+ ancillary = '' + bracket[1];
374
374
  functionType = type.replace(bracket[0], '');
375
375
  isValid = $.proxy(settings.rules[functionType], $module)(value, ancillary);
376
376
  }
@@ -652,6 +652,7 @@ $.fn.form.settings = {
652
652
  return (value != notValue);
653
653
  },
654
654
  contains: function(value, text) {
655
+ text = text.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g, "\\$&");
655
656
  return (value.search(text) !== -1);
656
657
  },
657
658
  is: function(value, text) {
@@ -476,12 +476,12 @@ $.fn.dimmer = function(parameters) {
476
476
  ? value + query[depth + 1].charAt(0).toUpperCase() + query[depth + 1].slice(1)
477
477
  : query
478
478
  ;
479
- if( $.isPlainObject( instance[value] ) && (depth != maxDepth) ) {
480
- instance = instance[value];
481
- }
482
- else if( $.isPlainObject( instance[camelCaseValue] ) && (depth != maxDepth) ) {
479
+ if( $.isPlainObject( instance[camelCaseValue] ) && (depth != maxDepth) ) {
483
480
  instance = instance[camelCaseValue];
484
481
  }
482
+ else if( $.isPlainObject( instance[value] ) && (depth != maxDepth) ) {
483
+ instance = instance[value];
484
+ }
485
485
  else if( instance[value] !== undefined ) {
486
486
  found = instance[value];
487
487
  return false;
@@ -46,9 +46,10 @@ $.fn.modal = function(parameters) {
46
46
 
47
47
  $module = $(this),
48
48
  $context = $(settings.context),
49
- $otherModals = $allModules.not($module),
50
49
  $close = $module.find(selector.close),
51
50
 
51
+ $allModals,
52
+ $otherModals,
52
53
  $focusedElement,
53
54
  $dimmable,
54
55
  $dimmer,
@@ -80,12 +81,15 @@ $.fn.modal = function(parameters) {
80
81
  .dimmer('get dimmer')
81
82
  ;
82
83
 
84
+ $otherModals = $module.siblings(selector.modal);
85
+ $allModals = $otherModals.add($module);
86
+
83
87
  module.verbose('Attaching close events', $close);
84
88
  $close
85
89
  .on('click' + eventNamespace, module.event.close)
86
90
  ;
87
91
  $window
88
- .on('resize', function() {
92
+ .on('resize' + eventNamespace, function() {
89
93
  module.event.debounce(module.refresh, 50);
90
94
  })
91
95
  ;
@@ -165,9 +169,9 @@ $.fn.modal = function(parameters) {
165
169
  }
166
170
  },
167
171
  click: function(event) {
168
- module.verbose('Determining if event occured on dimmer', event);
169
- if( $dimmer.find(event.target).size() === 0 ) {
170
- module.hide();
172
+ if( $(event.target).closest(selector.modal).size() === 0 ) {
173
+ module.debug('Dimmer clicked, hiding all modals');
174
+ module.hideAll();
171
175
  event.stopImmediatePropagation();
172
176
  }
173
177
  },
@@ -207,79 +211,145 @@ $.fn.modal = function(parameters) {
207
211
  }
208
212
  },
209
213
 
210
- show: function() {
214
+ show: function(callback) {
215
+ callback = $.isFunction(callback)
216
+ ? callback
217
+ : function(){}
218
+ ;
211
219
  module.showDimmer();
212
- module.cacheSizes();
213
- module.set.position();
214
- module.hideAll();
215
- if(settings.transition && $.fn.transition !== undefined) {
216
- $module
217
- .transition(settings.transition + ' in', settings.duration, module.set.active)
218
- ;
220
+ module.showModal(callback);
221
+ },
222
+
223
+ showModal: function(callback) {
224
+ callback = $.isFunction(callback)
225
+ ? callback
226
+ : function(){}
227
+ ;
228
+ if( !module.is.active() ) {
229
+ module.debug('Showing modal');
230
+ module.cacheSizes();
231
+ module.set.position();
232
+
233
+ if( $otherModals.filter(':visible').size() > 0 ) {
234
+ module.debug('Other modals visible, queueing show animation');
235
+ module.hideOthers(module.showModal);
236
+ }
237
+ else {
238
+ if(settings.transition && $.fn.transition !== undefined) {
239
+ $module
240
+ .transition(settings.transition + ' in', settings.duration, function() {
241
+ module.set.active();
242
+ callback();
243
+ })
244
+ ;
245
+ }
246
+ else {
247
+ $module
248
+ .fadeIn(settings.duration, settings.easing, function() {
249
+ module.set.active();
250
+ callback();
251
+ })
252
+ ;
253
+ }
254
+ $.proxy(settings.onShow, element)();
255
+ }
219
256
  }
220
257
  else {
221
- $module
222
- .fadeIn(settings.duration, settings.easing, module.set.active)
223
- ;
258
+ module.debug('Modal is already visible');
224
259
  }
225
- module.debug('Triggering dimmer');
226
- $.proxy(settings.onShow, element)();
227
260
  },
228
261
 
229
262
  showDimmer: function() {
230
- module.debug('Showing modal');
231
- $dimmable.dimmer('show');
263
+ if( !$dimmable.dimmer('is active') ) {
264
+ module.debug('Showing dimmer');
265
+ $dimmable.dimmer('show');
266
+ }
267
+ else {
268
+ module.debug('Dimmer already visible');
269
+ }
232
270
  },
233
271
 
234
- hide: function() {
235
- if(settings.closable) {
236
- $dimmer
237
- .off('click' + eventNamespace)
238
- ;
239
- }
272
+ hide: function(callback) {
273
+ callback = $.isFunction(callback)
274
+ ? callback
275
+ : function(){}
276
+ ;
277
+ module.hideDimmer();
278
+ module.hideModal(callback);
279
+ },
280
+
281
+ hideDimmer: function() {
240
282
  if( $dimmable.dimmer('is active') ) {
283
+ module.debug('Hiding dimmer');
284
+ if(settings.closable) {
285
+ $dimmer
286
+ .off('click' + eventNamespace)
287
+ ;
288
+ }
241
289
  $dimmable.dimmer('hide');
242
290
  }
243
- if( module.is.active() ) {
244
- module.hideModal();
245
- $.proxy(settings.onHide, element)();
246
- }
247
291
  else {
248
- module.debug('Cannot hide modal, modal is not visible');
292
+ module.debug('Dimmer is not visible cannot hide');
249
293
  }
250
294
  },
251
295
 
252
- hideDimmer: function() {
253
- module.debug('Hiding dimmer');
254
- $dimmable.dimmer('hide');
296
+ hideModal: function(callback) {
297
+ callback = $.isFunction(callback)
298
+ ? callback
299
+ : function(){}
300
+ ;
301
+ if( module.is.active() ) {
302
+ module.debug('Hiding modal');
303
+ module.remove.keyboardShortcuts();
304
+ if(settings.transition && $.fn.transition !== undefined) {
305
+ $module
306
+ .transition(settings.transition + ' out', settings.duration, function() {
307
+ module.remove.active();
308
+ module.restore.focus();
309
+ callback();
310
+ })
311
+ ;
312
+ }
313
+ else {
314
+ $module
315
+ .fadeOut(settings.duration, settings.easing, function() {
316
+ module.remove.active();
317
+ module.restore.focus();
318
+ callback();
319
+ })
320
+ ;
321
+ }
322
+ $.proxy(settings.onHide, element)();
323
+ }
255
324
  },
256
325
 
257
- hideModal: function() {
258
- module.debug('Hiding modal');
259
- module.remove.keyboardShortcuts();
260
- if(settings.transition && $.fn.transition !== undefined) {
261
- $module
262
- .transition(settings.transition + ' out', settings.duration, function() {
263
- module.remove.active();
264
- module.restore.focus();
265
- })
266
- ;
267
- }
268
- else {
269
- $module
270
- .fadeOut(settings.duration, settings.easing, function() {
271
- module.remove.active();
272
- module.restore.focus();
273
- })
326
+ hideAll: function(callback) {
327
+ callback = $.isFunction(callback)
328
+ ? callback
329
+ : function(){}
330
+ ;
331
+ if( $allModals.is(':visible') ) {
332
+ module.debug('Hiding all visible modals');
333
+ module.hideDimmer();
334
+ $allModals
335
+ .filter(':visible')
336
+ .modal('hide modal', callback)
274
337
  ;
275
338
  }
276
339
  },
277
340
 
278
- hideAll: function() {
279
- $otherModals
280
- .filter(':visible')
281
- .modal('hide')
341
+ hideOthers: function(callback) {
342
+ callback = $.isFunction(callback)
343
+ ? callback
344
+ : function(){}
282
345
  ;
346
+ if( $otherModals.is(':visible') ) {
347
+ module.debug('Hiding other modals');
348
+ $otherModals
349
+ .filter(':visible')
350
+ .modal('hide modal', callback)
351
+ ;
352
+ }
283
353
  },
284
354
 
285
355
  add: {
@@ -357,6 +427,7 @@ $.fn.modal = function(parameters) {
357
427
  ;
358
428
  if(settings.closable) {
359
429
  $dimmer
430
+ .off('click' + eventNamespace)
360
431
  .on('click' + eventNamespace, module.event.click)
361
432
  ;
362
433
  }
@@ -511,20 +582,20 @@ $.fn.modal = function(parameters) {
511
582
  ? value + query[depth + 1].charAt(0).toUpperCase() + query[depth + 1].slice(1)
512
583
  : query
513
584
  ;
514
- if( $.isPlainObject( instance[value] ) && (depth != maxDepth) ) {
515
- instance = instance[value];
516
- }
517
- else if( $.isPlainObject( instance[camelCaseValue] ) && (depth != maxDepth) ) {
585
+ if( $.isPlainObject( instance[camelCaseValue] ) && (depth != maxDepth) ) {
518
586
  instance = instance[camelCaseValue];
519
587
  }
520
- else if( instance[value] !== undefined ) {
521
- found = instance[value];
522
- return false;
523
- }
524
588
  else if( instance[camelCaseValue] !== undefined ) {
525
589
  found = instance[camelCaseValue];
526
590
  return false;
527
591
  }
592
+ else if( $.isPlainObject( instance[value] ) && (depth != maxDepth) ) {
593
+ instance = instance[value];
594
+ }
595
+ else if( instance[value] !== undefined ) {
596
+ found = instance[value];
597
+ return false;
598
+ }
528
599
  else {
529
600
  module.error(error.method);
530
601
  return false;
@@ -595,7 +666,8 @@ $.fn.modal.settings = {
595
666
  selector : {
596
667
  close : '.close, .actions .button',
597
668
  approve : '.actions .positive, .actions .approve',
598
- deny : '.actions .negative, .actions .cancel'
669
+ deny : '.actions .negative, .actions .cancel',
670
+ modal : '.ui.modal'
599
671
  },
600
672
  error : {
601
673
  dimmer : 'UI Dimmer, a required component is not included in this page',
@@ -214,10 +214,18 @@
214
214
  /* On Field(s) */
215
215
 
216
216
  .ui.form .fields.error .field label,
217
- .ui.form .field.error label {
217
+ .ui.form .field.error label,
218
+ .ui.form .fields.error .field .input,
219
+ .ui.form .field.error .input {
218
220
  color: #D95C5C;
219
221
  }
220
222
 
223
+ .ui.form .fields.error .field .corner.label,
224
+ .ui.form .field.error .corner.label {
225
+ border-color: #D95C5C;
226
+ color: #FFFFFF;
227
+ }
228
+
221
229
  .ui.form .fields.error .field textarea,
222
230
  .ui.form .fields.error .field input[type="text"],
223
231
  .ui.form .fields.error .field input[type="email"],
@@ -46,6 +46,20 @@ a.ui.label {
46
46
  cursor: pointer;
47
47
  }
48
48
 
49
+ /* Inside Link */
50
+
51
+ .ui.label a {
52
+ cursor: pointer;
53
+ color: inherit;
54
+ opacity: 0.8;
55
+ -webkit-transition: 0.2s opacity ease;
56
+ transition: 0.2s opacity ease;
57
+ }
58
+
59
+ .ui.label a:hover {
60
+ opacity: 1;
61
+ }
62
+
49
63
  /* Detail */
50
64
 
51
65
  .ui.label .detail {
@@ -1,8 +1,8 @@
1
1
  module Semantic
2
2
  module Ui
3
3
  module Sass
4
- VERSION = "0.8.2.0"
5
- SEMANTIC_UI_SHA = 'd58f65fa9eca42692d9f2aa1234b68f77b1d9812'
4
+ VERSION = "0.8.3.0"
5
+ SEMANTIC_UI_SHA = '26f96b2372f85e723e6c6679409467947806f683'
6
6
  end
7
7
  end
8
8
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: semantic-ui-sass
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.2.0
4
+ version: 0.8.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - doabit
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-10-29 00:00:00.000000000 Z
11
+ date: 2013-10-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler