less-rails-semantic_ui 1.1.2.0 → 1.2.0.0
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.
- checksums.yaml +4 -4
- data/assets/javascripts/semantic_ui/definitions/behaviors/form.js +74 -50
- data/assets/javascripts/semantic_ui/definitions/modules/checkbox.js +53 -17
- data/assets/javascripts/semantic_ui/definitions/modules/dropdown.js +2 -12
- data/assets/javascripts/semantic_ui/definitions/modules/modal.js +64 -38
- data/assets/javascripts/semantic_ui/definitions/modules/progress.js +43 -20
- data/assets/javascripts/semantic_ui/definitions/modules/sidebar.js +71 -33
- data/assets/stylesheets/semantic_ui/definitions/collections/form.less +22 -4
- data/assets/stylesheets/semantic_ui/definitions/collections/grid.less +15 -22
- data/assets/stylesheets/semantic_ui/definitions/views/card.less +4 -4
- data/assets/stylesheets/semantic_ui/definitions/views/item.less +2 -2
- data/assets/stylesheets/semantic_ui/themes/default/collections/form.variables +3 -0
- data/assets/stylesheets/semantic_ui/themes/default/collections/grid.variables +0 -1
- data/assets/stylesheets/semantic_ui/themes/default/globals/site.variables +2 -1
- data/assets/stylesheets/semantic_ui/themes/default/modules/modal.variables +1 -1
- data/assets/stylesheets/semantic_ui/themes/default/views/card.variables +4 -2
- data/assets/stylesheets/semantic_ui/themes/default/views/item.variables +4 -3
- data/assets/stylesheets/semantic_ui/themes/fixed-width/collections/grid.variables +1 -3
- data/less-rails-semantic_ui.gemspec +1 -1
- data/tasks/update.rake +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c67e7f81931898989959fe03c57a3bbb3d419456
|
4
|
+
data.tar.gz: ff263f25b36c3b9ecba87e5c0f78427e041d2437
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2b4659771cff917502d5510281ccfed93361a953a354dedfd1bbdcab528fa1e706dc3272ad1727df8d43091305d2b89d5eebd03f4d87b438a503a7b00311ed69
|
7
|
+
data.tar.gz: 848a2a23361e230b1c9cd68d52ad6d1705407baeab00c38305fd9994b5cf0b408cbc8ce43f235448ddbf839096ad5814a6916fa4c4c71cf4a525802f05099a0e
|
@@ -398,7 +398,11 @@ $.fn.form = function(fields, parameters) {
|
|
398
398
|
fieldValid = true,
|
399
399
|
fieldErrors = []
|
400
400
|
;
|
401
|
-
if(field.
|
401
|
+
if(field.optional && $.trim($field.val()) === ''){
|
402
|
+
module.debug('Field is optional and empty. Skipping', field.identifier);
|
403
|
+
fieldValid = true;
|
404
|
+
}
|
405
|
+
else if(field.rules !== undefined) {
|
402
406
|
$.each(field.rules, function(index, rule) {
|
403
407
|
if( module.has.field(field.identifier) && !( module.validate.rule(field, rule) ) ) {
|
404
408
|
module.debug('Field is invalid', field.identifier, rule.type);
|
@@ -643,7 +647,7 @@ $.fn.form.settings = {
|
|
643
647
|
revalidate : true,
|
644
648
|
|
645
649
|
transition : 'scale',
|
646
|
-
duration :
|
650
|
+
duration : 200,
|
647
651
|
|
648
652
|
|
649
653
|
onValid : function() {},
|
@@ -669,15 +673,13 @@ $.fn.form.settings = {
|
|
669
673
|
error : 'error',
|
670
674
|
success : 'success',
|
671
675
|
down : 'down',
|
672
|
-
label : 'ui label
|
676
|
+
label : 'ui prompt label'
|
673
677
|
},
|
674
678
|
|
675
|
-
// errors
|
676
679
|
error: {
|
677
680
|
method : 'The method you called is not defined.'
|
678
681
|
},
|
679
682
|
|
680
|
-
|
681
683
|
templates: {
|
682
684
|
error: function(errors) {
|
683
685
|
var
|
@@ -698,40 +700,77 @@ $.fn.form.settings = {
|
|
698
700
|
},
|
699
701
|
|
700
702
|
rules: {
|
703
|
+
|
704
|
+
// checkbox checked
|
701
705
|
checked: function() {
|
702
706
|
return ($(this).filter(':checked').size() > 0);
|
703
707
|
},
|
704
|
-
|
705
|
-
|
708
|
+
|
709
|
+
// value contains (text)
|
710
|
+
contains: function(value, text) {
|
711
|
+
text = text.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g, "\\$&");
|
712
|
+
return (value.search(text) !== -1);
|
706
713
|
},
|
714
|
+
|
715
|
+
// is most likely an email
|
707
716
|
email: function(value){
|
708
717
|
var
|
709
718
|
emailRegExp = new RegExp("[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?", "i")
|
710
719
|
;
|
711
720
|
return emailRegExp.test(value);
|
712
721
|
},
|
713
|
-
|
714
|
-
|
715
|
-
|
716
|
-
|
717
|
-
;
|
718
|
-
},
|
719
|
-
not: function(value, notValue) {
|
720
|
-
return (value != notValue);
|
722
|
+
|
723
|
+
// is not empty or blank string
|
724
|
+
empty: function(value) {
|
725
|
+
return !(value === undefined || '' === value);
|
721
726
|
},
|
722
|
-
|
723
|
-
|
724
|
-
|
727
|
+
|
728
|
+
// is valid integer
|
729
|
+
integer: function(value, range) {
|
730
|
+
var
|
731
|
+
intRegExp = /^\-?\d+$/,
|
732
|
+
min,
|
733
|
+
max,
|
734
|
+
parts
|
735
|
+
;
|
736
|
+
if (range === undefined || range === '' || range === '..') {
|
737
|
+
// do nothing
|
738
|
+
}
|
739
|
+
else if (range.indexOf('..') == -1) {
|
740
|
+
if (intRegExp.test(range)) {
|
741
|
+
min = max = range - 0;
|
742
|
+
}
|
743
|
+
}
|
744
|
+
else {
|
745
|
+
parts = range.split('..', 2);
|
746
|
+
if (intRegExp.test(parts[0])) {
|
747
|
+
min = parts[0] - 0;
|
748
|
+
}
|
749
|
+
if (intRegExp.test(parts[1])) {
|
750
|
+
max = parts[1] - 0;
|
751
|
+
}
|
752
|
+
}
|
753
|
+
return (
|
754
|
+
intRegExp.test(value) &&
|
755
|
+
(min === undefined || value >= min) &&
|
756
|
+
(max === undefined || value <= max)
|
757
|
+
);
|
725
758
|
},
|
759
|
+
|
760
|
+
// is exactly value
|
726
761
|
is: function(value, text) {
|
727
762
|
return (value == text);
|
728
763
|
},
|
729
|
-
|
764
|
+
|
765
|
+
// is at least string length
|
766
|
+
length: function(value, requiredLength) {
|
730
767
|
return (value !== undefined)
|
731
|
-
? (value.length
|
768
|
+
? (value.length >= requiredLength)
|
732
769
|
: false
|
733
770
|
;
|
734
771
|
},
|
772
|
+
|
773
|
+
// matches another field
|
735
774
|
match: function(value, fieldIdentifier) {
|
736
775
|
// use either id or name of field
|
737
776
|
var
|
@@ -752,41 +791,26 @@ $.fn.form.settings = {
|
|
752
791
|
: false
|
753
792
|
;
|
754
793
|
},
|
794
|
+
|
795
|
+
// string length is less than max length
|
796
|
+
maxLength: function(value, maxLength) {
|
797
|
+
return (value !== undefined)
|
798
|
+
? (value.length <= maxLength)
|
799
|
+
: false
|
800
|
+
;
|
801
|
+
},
|
802
|
+
|
803
|
+
// value is not exactly notValue
|
804
|
+
not: function(value, notValue) {
|
805
|
+
return (value != notValue);
|
806
|
+
},
|
807
|
+
|
808
|
+
// value is most likely url
|
755
809
|
url: function(value) {
|
756
810
|
var
|
757
811
|
urlRegExp = /(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/
|
758
812
|
;
|
759
813
|
return urlRegExp.test(value);
|
760
|
-
},
|
761
|
-
integer: function(value, range) {
|
762
|
-
var
|
763
|
-
intRegExp = /^\-?\d+$/,
|
764
|
-
min,
|
765
|
-
max,
|
766
|
-
parts
|
767
|
-
;
|
768
|
-
if (range === undefined || range === '' || range === '..') {
|
769
|
-
// do nothing
|
770
|
-
}
|
771
|
-
else if (range.indexOf('..') == -1) {
|
772
|
-
if (intRegExp.test(range)) {
|
773
|
-
min = max = range - 0;
|
774
|
-
}
|
775
|
-
}
|
776
|
-
else {
|
777
|
-
parts = range.split('..', 2);
|
778
|
-
if (intRegExp.test(parts[0])) {
|
779
|
-
min = parts[0] - 0;
|
780
|
-
}
|
781
|
-
if (intRegExp.test(parts[1])) {
|
782
|
-
max = parts[1] - 0;
|
783
|
-
}
|
784
|
-
}
|
785
|
-
return (
|
786
|
-
intRegExp.test(value) &&
|
787
|
-
(min === undefined || value >= min) &&
|
788
|
-
(max === undefined || value <= max)
|
789
|
-
);
|
790
814
|
}
|
791
815
|
}
|
792
816
|
|
@@ -41,7 +41,7 @@ $.fn.checkbox = function(parameters) {
|
|
41
41
|
moduleNamespace = 'module-' + namespace,
|
42
42
|
|
43
43
|
$module = $(this),
|
44
|
-
$label = $(this).
|
44
|
+
$label = $(this).find(selector.label).first(),
|
45
45
|
$input = $(this).find(selector.input),
|
46
46
|
|
47
47
|
instance = $module.data(moduleNamespace),
|
@@ -55,10 +55,10 @@ $.fn.checkbox = function(parameters) {
|
|
55
55
|
|
56
56
|
initialize: function() {
|
57
57
|
module.verbose('Initializing checkbox', settings);
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
58
|
+
|
59
|
+
module.create.label();
|
60
|
+
module.add.events();
|
61
|
+
|
62
62
|
if( module.is.checked() ) {
|
63
63
|
module.set.checked();
|
64
64
|
if(settings.fireOnInit) {
|
@@ -85,22 +85,16 @@ $.fn.checkbox = function(parameters) {
|
|
85
85
|
},
|
86
86
|
|
87
87
|
destroy: function() {
|
88
|
-
module.verbose('Destroying
|
88
|
+
module.verbose('Destroying module');
|
89
|
+
module.remove.events();
|
89
90
|
$module
|
90
|
-
.off(eventNamespace)
|
91
91
|
.removeData(moduleNamespace)
|
92
92
|
;
|
93
|
-
$input
|
94
|
-
.off(eventNamespace, module.event.keydown)
|
95
|
-
;
|
96
|
-
$label
|
97
|
-
.off(eventNamespace)
|
98
|
-
;
|
99
93
|
},
|
100
94
|
|
101
95
|
refresh: function() {
|
102
96
|
$module = $(this);
|
103
|
-
$label = $(this).
|
97
|
+
$label = $(this).find(selector.label).first();
|
104
98
|
$input = $(this).find(selector.input);
|
105
99
|
},
|
106
100
|
|
@@ -120,15 +114,15 @@ $.fn.checkbox = function(parameters) {
|
|
120
114
|
|
121
115
|
attachEvents: function(selector, event) {
|
122
116
|
var
|
123
|
-
$
|
117
|
+
$element = $(selector)
|
124
118
|
;
|
125
119
|
event = $.isFunction(module[event])
|
126
120
|
? module[event]
|
127
121
|
: module.toggle
|
128
122
|
;
|
129
|
-
if($
|
123
|
+
if($element.size() > 0) {
|
130
124
|
module.debug('Attaching checkbox events to element', selector, event);
|
131
|
-
$
|
125
|
+
$element
|
132
126
|
.on('click' + eventNamespace, event)
|
133
127
|
;
|
134
128
|
}
|
@@ -197,9 +191,51 @@ $.fn.checkbox = function(parameters) {
|
|
197
191
|
}
|
198
192
|
},
|
199
193
|
|
194
|
+
create: {
|
195
|
+
label: function() {
|
196
|
+
if($input.prevAll(selector.label).size() > 0) {
|
197
|
+
$input.prev(selector.label).detach().insertAfter($input);
|
198
|
+
module.debug('Moving existing label', $label);
|
199
|
+
}
|
200
|
+
else if( !module.has.label() ) {
|
201
|
+
$label = $('<label>').insertAfter($input);
|
202
|
+
module.debug('Creating label', $label);
|
203
|
+
}
|
204
|
+
}
|
205
|
+
},
|
206
|
+
|
207
|
+
has: {
|
208
|
+
label: function() {
|
209
|
+
return ($label.size() > 0);
|
210
|
+
}
|
211
|
+
},
|
212
|
+
|
213
|
+
add: {
|
214
|
+
events: function() {
|
215
|
+
module.verbose('Attaching checkbox events');
|
216
|
+
$module
|
217
|
+
.on('click' + eventNamespace, module.toggle)
|
218
|
+
.on('keydown' + eventNamespace, selector.input, module.event.keydown)
|
219
|
+
;
|
220
|
+
}
|
221
|
+
},
|
222
|
+
|
200
223
|
remove: {
|
201
224
|
checked: function() {
|
202
225
|
$module.removeClass(className.checked);
|
226
|
+
},
|
227
|
+
events: function() {
|
228
|
+
module.debug('Removing events');
|
229
|
+
$module
|
230
|
+
.off(eventNamespace)
|
231
|
+
.removeData(moduleNamespace)
|
232
|
+
;
|
233
|
+
$input
|
234
|
+
.off(eventNamespace, module.event.keydown)
|
235
|
+
;
|
236
|
+
$label
|
237
|
+
.off(eventNamespace)
|
238
|
+
;
|
203
239
|
}
|
204
240
|
},
|
205
241
|
|
@@ -1448,12 +1448,7 @@ $.fn.dropdown.settings.templates = {
|
|
1448
1448
|
html = ''
|
1449
1449
|
;
|
1450
1450
|
$.each(select.values, function(value, name) {
|
1451
|
-
|
1452
|
-
html += '<div class="item">' + name + '</div>';
|
1453
|
-
}
|
1454
|
-
else {
|
1455
|
-
html += '<div class="item" data-value="' + value + '">' + name + '</div>';
|
1456
|
-
}
|
1451
|
+
html += '<div class="item" data-value="' + value + '">' + name + '</div>';
|
1457
1452
|
});
|
1458
1453
|
return html;
|
1459
1454
|
},
|
@@ -1472,12 +1467,7 @@ $.fn.dropdown.settings.templates = {
|
|
1472
1467
|
}
|
1473
1468
|
html += '<div class="menu">';
|
1474
1469
|
$.each(select.values, function(value, name) {
|
1475
|
-
|
1476
|
-
html += '<div class="item">' + name + '</div>';
|
1477
|
-
}
|
1478
|
-
else {
|
1479
|
-
html += '<div class="item" data-value="' + value + '">' + name + '</div>';
|
1480
|
-
}
|
1470
|
+
html += '<div class="item" data-value="' + value + '">' + name + '</div>';
|
1481
1471
|
});
|
1482
1472
|
html += '</div>';
|
1483
1473
|
return html;
|
@@ -53,9 +53,9 @@ $.fn.modal = function(parameters) {
|
|
53
53
|
eventNamespace = '.' + namespace,
|
54
54
|
moduleNamespace = 'module-' + namespace,
|
55
55
|
|
56
|
-
$module
|
57
|
-
$context
|
58
|
-
$close
|
56
|
+
$module = $(this),
|
57
|
+
$context = $(settings.context),
|
58
|
+
$close = $module.find(selector.close),
|
59
59
|
|
60
60
|
$allModals,
|
61
61
|
$otherModals,
|
@@ -63,8 +63,11 @@ $.fn.modal = function(parameters) {
|
|
63
63
|
$dimmable,
|
64
64
|
$dimmer,
|
65
65
|
|
66
|
-
element
|
67
|
-
instance
|
66
|
+
element = this,
|
67
|
+
instance = $module.data(moduleNamespace),
|
68
|
+
|
69
|
+
elementNamespace,
|
70
|
+
id,
|
68
71
|
observer,
|
69
72
|
module
|
70
73
|
;
|
@@ -78,6 +81,9 @@ $.fn.modal = function(parameters) {
|
|
78
81
|
return;
|
79
82
|
}
|
80
83
|
|
84
|
+
id = module.get.uniqueID();
|
85
|
+
elementNamespace = '.' + id;
|
86
|
+
|
81
87
|
$dimmable = $context
|
82
88
|
.dimmer({
|
83
89
|
debug : settings.debug,
|
@@ -95,8 +101,7 @@ $.fn.modal = function(parameters) {
|
|
95
101
|
}
|
96
102
|
|
97
103
|
$dimmer = $dimmable.dimmer('get dimmer');
|
98
|
-
|
99
|
-
$allModals = $otherModals.add($module);
|
104
|
+
module.refreshModals();
|
100
105
|
|
101
106
|
module.verbose('Attaching close events', $close);
|
102
107
|
module.bind.events();
|
@@ -119,6 +124,7 @@ $.fn.modal = function(parameters) {
|
|
119
124
|
.removeData(moduleNamespace)
|
120
125
|
.off(eventNamespace)
|
121
126
|
;
|
127
|
+
$window.off(elementNamespace);
|
122
128
|
$close.off(eventNamespace);
|
123
129
|
$context.dimmer('destroy');
|
124
130
|
},
|
@@ -145,6 +151,11 @@ $.fn.modal = function(parameters) {
|
|
145
151
|
module.set.position();
|
146
152
|
},
|
147
153
|
|
154
|
+
refreshModals: function() {
|
155
|
+
$otherModals = $module.siblings(selector.modal);
|
156
|
+
$allModals = $otherModals.add($module);
|
157
|
+
},
|
158
|
+
|
148
159
|
attachEvents: function(selector, event) {
|
149
160
|
var
|
150
161
|
$toggle = $(selector)
|
@@ -171,11 +182,17 @@ $.fn.modal = function(parameters) {
|
|
171
182
|
.on('click' + eventNamespace, module.event.close)
|
172
183
|
;
|
173
184
|
$window
|
174
|
-
.on('resize' +
|
185
|
+
.on('resize' + elementNamespace, module.event.resize)
|
175
186
|
;
|
176
187
|
}
|
177
188
|
},
|
178
189
|
|
190
|
+
get: {
|
191
|
+
uniqueID: function() {
|
192
|
+
return (Math.random().toString(16) + '000000000').substr(2,8);
|
193
|
+
}
|
194
|
+
},
|
195
|
+
|
179
196
|
event: {
|
180
197
|
close: function() {
|
181
198
|
module.verbose('Closing element pressed');
|
@@ -200,15 +217,17 @@ $.fn.modal = function(parameters) {
|
|
200
217
|
}
|
201
218
|
},
|
202
219
|
click: function(event) {
|
203
|
-
if( $(event.target).closest(
|
220
|
+
if( $(event.target).closest($module).size() === 0 ) {
|
204
221
|
module.debug('Dimmer clicked, hiding all modals');
|
205
|
-
if(
|
206
|
-
module.
|
207
|
-
|
208
|
-
|
209
|
-
|
222
|
+
if( module.is.active() ) {
|
223
|
+
module.remove.clickaway();
|
224
|
+
if(settings.allowMultiple) {
|
225
|
+
module.hide();
|
226
|
+
}
|
227
|
+
else {
|
228
|
+
module.hideAll();
|
229
|
+
}
|
210
230
|
}
|
211
|
-
event.stopImmediatePropagation();
|
212
231
|
}
|
213
232
|
},
|
214
233
|
debounce: function(method, delay) {
|
@@ -252,10 +271,23 @@ $.fn.modal = function(parameters) {
|
|
252
271
|
? callback
|
253
272
|
: function(){}
|
254
273
|
;
|
274
|
+
module.refreshModals();
|
255
275
|
module.showDimmer();
|
256
276
|
module.showModal(callback);
|
257
277
|
},
|
258
278
|
|
279
|
+
hide: function(callback) {
|
280
|
+
callback = $.isFunction(callback)
|
281
|
+
? callback
|
282
|
+
: function(){}
|
283
|
+
;
|
284
|
+
module.refreshModals();
|
285
|
+
if( !module.othersActive() ) {
|
286
|
+
module.hideDimmer();
|
287
|
+
}
|
288
|
+
module.hideModal(callback);
|
289
|
+
},
|
290
|
+
|
259
291
|
showModal: function(callback) {
|
260
292
|
callback = $.isFunction(callback)
|
261
293
|
? callback
|
@@ -263,7 +295,7 @@ $.fn.modal = function(parameters) {
|
|
263
295
|
;
|
264
296
|
if( !module.is.active() ) {
|
265
297
|
|
266
|
-
if( $otherModals.filter(':visible').size() > 0
|
298
|
+
if( !settings.allowMultiple && $otherModals.filter(':visible').size() > 0) {
|
267
299
|
module.debug('Other modals visible, queueing show animation');
|
268
300
|
module.hideOthers(module.showModal);
|
269
301
|
}
|
@@ -275,15 +307,13 @@ $.fn.modal = function(parameters) {
|
|
275
307
|
module.set.position();
|
276
308
|
module.set.screenHeight();
|
277
309
|
module.set.type();
|
310
|
+
module.set.clickaway();
|
278
311
|
$module
|
279
312
|
.transition({
|
280
313
|
debug : settings.debug,
|
281
314
|
animation : settings.transition + ' in',
|
282
315
|
queue : false,
|
283
316
|
duration : settings.duration,
|
284
|
-
onStart : function() {
|
285
|
-
module.set.clickaway();
|
286
|
-
},
|
287
317
|
onComplete : function() {
|
288
318
|
$.proxy(settings.onVisible, element)();
|
289
319
|
module.add.keyboardShortcuts();
|
@@ -324,29 +354,17 @@ $.fn.modal = function(parameters) {
|
|
324
354
|
}
|
325
355
|
},
|
326
356
|
|
327
|
-
hide: function(callback) {
|
328
|
-
callback = $.isFunction(callback)
|
329
|
-
? callback
|
330
|
-
: function(){}
|
331
|
-
;
|
332
|
-
if($allModals.filter(':visible').size() <= 1) {
|
333
|
-
module.hideDimmer();
|
334
|
-
}
|
335
|
-
module.hideModal(callback);
|
336
|
-
},
|
337
|
-
|
338
357
|
hideDimmer: function() {
|
339
358
|
if( !($dimmable.dimmer('is active') || $dimmable.dimmer('is animating')) ) {
|
340
359
|
module.debug('Dimmer is not visible cannot hide');
|
341
360
|
return;
|
342
361
|
}
|
343
362
|
module.debug('Hiding dimmer');
|
344
|
-
module.remove.clickaway();
|
345
363
|
$dimmable.dimmer('hide', function() {
|
346
364
|
if(settings.transition && $.fn.transition !== undefined && $module.transition('is supported')) {
|
365
|
+
module.remove.clickaway();
|
347
366
|
module.remove.screenHeight();
|
348
367
|
}
|
349
|
-
module.remove.active();
|
350
368
|
});
|
351
369
|
},
|
352
370
|
|
@@ -358,6 +376,7 @@ $.fn.modal = function(parameters) {
|
|
358
376
|
module.debug('Hiding modal');
|
359
377
|
$.proxy(settings.onHide, element)();
|
360
378
|
if(settings.transition && $.fn.transition !== undefined && $module.transition('is supported')) {
|
379
|
+
module.remove.active();
|
361
380
|
$module
|
362
381
|
.transition({
|
363
382
|
debug : settings.debug,
|
@@ -369,7 +388,6 @@ $.fn.modal = function(parameters) {
|
|
369
388
|
},
|
370
389
|
onComplete : function() {
|
371
390
|
$.proxy(settings.onHidden, element)();
|
372
|
-
module.remove.active();
|
373
391
|
module.restore.focus();
|
374
392
|
callback();
|
375
393
|
}
|
@@ -377,11 +395,11 @@ $.fn.modal = function(parameters) {
|
|
377
395
|
;
|
378
396
|
}
|
379
397
|
else {
|
398
|
+
module.remove.active();
|
380
399
|
module.remove.keyboardShortcuts();
|
381
400
|
$module
|
382
401
|
.fadeOut(settings.duration, settings.easing, function() {
|
383
402
|
$.proxy(settings.onHidden, element)();
|
384
|
-
module.remove.active();
|
385
403
|
module.restore.focus();
|
386
404
|
callback();
|
387
405
|
})
|
@@ -418,6 +436,10 @@ $.fn.modal = function(parameters) {
|
|
418
436
|
}
|
419
437
|
},
|
420
438
|
|
439
|
+
othersActive: function() {
|
440
|
+
return ($otherModals.filter('.' + className.active).size() > 0);
|
441
|
+
},
|
442
|
+
|
421
443
|
add: {
|
422
444
|
keyboardShortcuts: function() {
|
423
445
|
module.verbose('Adding keyboard shortcuts');
|
@@ -448,7 +470,7 @@ $.fn.modal = function(parameters) {
|
|
448
470
|
clickaway: function() {
|
449
471
|
if(settings.closable) {
|
450
472
|
$dimmer
|
451
|
-
.off('click' +
|
473
|
+
.off('click' + elementNamespace)
|
452
474
|
;
|
453
475
|
}
|
454
476
|
},
|
@@ -504,6 +526,9 @@ $.fn.modal = function(parameters) {
|
|
504
526
|
: $module.is(':visible')
|
505
527
|
;
|
506
528
|
},
|
529
|
+
scrolling: function() {
|
530
|
+
return $dimmable.hasClass(className.scrolling);
|
531
|
+
},
|
507
532
|
modernBrowser: function() {
|
508
533
|
// appName for IE11 reports 'Netscape' can no longer use
|
509
534
|
return !(window.ActiveXObject || "ActiveXObject" in window);
|
@@ -526,8 +551,7 @@ $.fn.modal = function(parameters) {
|
|
526
551
|
clickaway: function() {
|
527
552
|
if(settings.closable) {
|
528
553
|
$dimmer
|
529
|
-
.
|
530
|
-
.on('click' + eventNamespace, module.event.click)
|
554
|
+
.on('click' + elementNamespace, module.event.click)
|
531
555
|
;
|
532
556
|
}
|
533
557
|
},
|
@@ -552,7 +576,9 @@ $.fn.modal = function(parameters) {
|
|
552
576
|
type: function() {
|
553
577
|
if(module.can.fit()) {
|
554
578
|
module.verbose('Modal fits on screen');
|
555
|
-
module.
|
579
|
+
if(!module.othersActive) {
|
580
|
+
module.remove.scrolling();
|
581
|
+
}
|
556
582
|
}
|
557
583
|
else {
|
558
584
|
module.verbose('Modal cannot fit on screen setting to scrolling');
|
@@ -73,10 +73,9 @@ $.fn.progress = function(parameters) {
|
|
73
73
|
},
|
74
74
|
|
75
75
|
destroy: function() {
|
76
|
-
module.verbose('Destroying previous
|
77
|
-
|
78
|
-
|
79
|
-
;
|
76
|
+
module.verbose('Destroying previous progress for', $module);
|
77
|
+
module.remove.state();
|
78
|
+
$module.removeData(moduleNamespace);
|
80
79
|
instance = undefined;
|
81
80
|
},
|
82
81
|
|
@@ -216,6 +215,12 @@ $.fn.progress = function(parameters) {
|
|
216
215
|
},
|
217
216
|
|
218
217
|
remove: {
|
218
|
+
state: function() {
|
219
|
+
module.verbose('Removing stored state');
|
220
|
+
delete module.total;
|
221
|
+
delete module.percent;
|
222
|
+
delete module.value;
|
223
|
+
},
|
219
224
|
active: function() {
|
220
225
|
module.verbose('Removing active state');
|
221
226
|
$module.removeClass(className.active);
|
@@ -239,27 +244,34 @@ $.fn.progress = function(parameters) {
|
|
239
244
|
if(value > 100) {
|
240
245
|
module.error(error.tooHigh, value);
|
241
246
|
}
|
242
|
-
|
243
|
-
.
|
244
|
-
|
247
|
+
else if (value < 0) {
|
248
|
+
module.error(error.tooLow, value);
|
249
|
+
}
|
250
|
+
else {
|
251
|
+
$bar
|
252
|
+
.css('width', value + '%')
|
253
|
+
;
|
254
|
+
}
|
245
255
|
},
|
246
256
|
initials: function() {
|
247
|
-
|
248
|
-
|
249
|
-
module.value = settings.value;
|
250
|
-
}
|
251
|
-
if(settings.total) {
|
257
|
+
|
258
|
+
if(settings.total !== false) {
|
252
259
|
module.verbose('Current total set in settings', settings.total);
|
253
260
|
module.total = settings.total;
|
254
261
|
}
|
255
|
-
if(settings.
|
262
|
+
if(settings.value !== false) {
|
263
|
+
module.verbose('Current value set in settings', settings.value);
|
264
|
+
module.value = settings.value;
|
265
|
+
}
|
266
|
+
if(settings.percent !== false) {
|
256
267
|
module.verbose('Current percent set in settings', settings.percent);
|
257
268
|
module.percent = settings.percent;
|
258
269
|
}
|
259
|
-
|
270
|
+
|
271
|
+
if(module.percent !== undefined) {
|
260
272
|
module.set.percent(module.percent);
|
261
273
|
}
|
262
|
-
else if(module.value) {
|
274
|
+
else if(module.value !== undefined) {
|
263
275
|
module.set.progress(module.value);
|
264
276
|
}
|
265
277
|
},
|
@@ -283,6 +295,14 @@ $.fn.progress = function(parameters) {
|
|
283
295
|
if(module.total) {
|
284
296
|
module.value = Math.round( (percent / 100) * module.total);
|
285
297
|
}
|
298
|
+
if(settings.limitValues) {
|
299
|
+
module.value = (module.value > 100)
|
300
|
+
? 100
|
301
|
+
: (module.value < 0)
|
302
|
+
? 0
|
303
|
+
: module.value
|
304
|
+
;
|
305
|
+
}
|
286
306
|
module.set.barWidth(percent);
|
287
307
|
module.set.barLabel();
|
288
308
|
if(percent === 100) {
|
@@ -294,7 +314,7 @@ $.fn.progress = function(parameters) {
|
|
294
314
|
module.remove.active();
|
295
315
|
}
|
296
316
|
}
|
297
|
-
else {
|
317
|
+
else if(percent > 0) {
|
298
318
|
module.set.active();
|
299
319
|
}
|
300
320
|
$.proxy(settings.onChange, element)(percent, module.value, module.total);
|
@@ -385,8 +405,8 @@ $.fn.progress = function(parameters) {
|
|
385
405
|
: value,
|
386
406
|
percentComplete
|
387
407
|
;
|
388
|
-
if(
|
389
|
-
module.error(error.nonNumeric);
|
408
|
+
if(numericValue === false) {
|
409
|
+
module.error(error.nonNumeric, value);
|
390
410
|
}
|
391
411
|
if(module.total) {
|
392
412
|
module.value = numericValue;
|
@@ -584,7 +604,7 @@ $.fn.progress.settings = {
|
|
584
604
|
name : 'Progress',
|
585
605
|
namespace : 'progress',
|
586
606
|
|
587
|
-
debug :
|
607
|
+
debug : false,
|
588
608
|
verbose : true,
|
589
609
|
performance : true,
|
590
610
|
|
@@ -595,6 +615,7 @@ $.fn.progress.settings = {
|
|
595
615
|
|
596
616
|
autoSuccess : true,
|
597
617
|
showActivity : true,
|
618
|
+
limitValues : true,
|
598
619
|
|
599
620
|
label : 'percent',
|
600
621
|
precision : 1,
|
@@ -611,7 +632,9 @@ $.fn.progress.settings = {
|
|
611
632
|
|
612
633
|
error : {
|
613
634
|
method : 'The method you called is not defined.',
|
614
|
-
nonNumeric : 'Progress value is non numeric'
|
635
|
+
nonNumeric : 'Progress value is non numeric',
|
636
|
+
tooHigh : 'Value specified is above 100%',
|
637
|
+
tooLow : 'Value specified is below 0%'
|
615
638
|
},
|
616
639
|
|
617
640
|
regExp: {
|
@@ -16,6 +16,8 @@
|
|
16
16
|
$.fn.sidebar = function(parameters) {
|
17
17
|
var
|
18
18
|
$allModules = $(this),
|
19
|
+
$window = $(window),
|
20
|
+
$document = $(document),
|
19
21
|
$head = $('head'),
|
20
22
|
|
21
23
|
moduleSelector = $allModules.selector || '',
|
@@ -61,6 +63,8 @@ $.fn.sidebar = function(parameters) {
|
|
61
63
|
element = this,
|
62
64
|
instance = $module.data(moduleNamespace),
|
63
65
|
|
66
|
+
elementNamespace,
|
67
|
+
id,
|
64
68
|
currentScroll,
|
65
69
|
transitionEvent,
|
66
70
|
|
@@ -80,7 +84,10 @@ $.fn.sidebar = function(parameters) {
|
|
80
84
|
settings.useLegacy = true;
|
81
85
|
}
|
82
86
|
|
83
|
-
|
87
|
+
id = module.get.uniqueID();
|
88
|
+
elementNamespace = '.' + id;
|
89
|
+
|
90
|
+
// avoids locking rendering if initialized in onReady
|
84
91
|
requestAnimationFrame(module.setup.layout);
|
85
92
|
|
86
93
|
module.instantiate();
|
@@ -101,6 +108,10 @@ $.fn.sidebar = function(parameters) {
|
|
101
108
|
.off(eventNamespace)
|
102
109
|
.removeData(moduleNamespace)
|
103
110
|
;
|
111
|
+
// bound by uuid
|
112
|
+
$context.off(elementNamespace);
|
113
|
+
$window.off(elementNamespace);
|
114
|
+
$document.off(elementNamespace);
|
104
115
|
},
|
105
116
|
|
106
117
|
event: {
|
@@ -130,31 +141,40 @@ $.fn.sidebar = function(parameters) {
|
|
130
141
|
|
131
142
|
bind: {
|
132
143
|
clickaway: function() {
|
144
|
+
module.verbose('Adding clickaway events to context', $context);
|
145
|
+
if(settings.closable) {
|
146
|
+
$context
|
147
|
+
.on('click' + elementNamespace, module.event.clickaway)
|
148
|
+
.on('touchend' + elementNamespace, module.event.clickaway)
|
149
|
+
;
|
150
|
+
}
|
151
|
+
},
|
152
|
+
scrollLock: function() {
|
133
153
|
if(settings.scrollLock) {
|
134
|
-
|
135
|
-
|
154
|
+
module.debug('Disabling page scroll');
|
155
|
+
$window
|
156
|
+
.on('DOMMouseScroll' + elementNamespace, module.event.scroll)
|
136
157
|
;
|
137
158
|
}
|
138
|
-
|
139
|
-
|
159
|
+
module.verbose('Adding events to contain sidebar scroll');
|
160
|
+
$document
|
161
|
+
.on('touchmove' + elementNamespace, module.event.touch)
|
140
162
|
;
|
141
163
|
$module
|
142
164
|
.on('scroll' + eventNamespace, module.event.containScroll)
|
143
165
|
;
|
144
|
-
if(settings.closable) {
|
145
|
-
$context
|
146
|
-
.on('click' + eventNamespace, module.event.clickaway)
|
147
|
-
.on('touchend' + eventNamespace, module.event.clickaway)
|
148
|
-
;
|
149
|
-
}
|
150
166
|
}
|
151
167
|
},
|
152
168
|
unbind: {
|
153
169
|
clickaway: function() {
|
154
|
-
$context
|
155
|
-
$
|
156
|
-
|
157
|
-
|
170
|
+
module.verbose('Removing clickaway events from context', $context);
|
171
|
+
$context.off(elementNamespace);
|
172
|
+
},
|
173
|
+
scrollLock: function() {
|
174
|
+
module.verbose('Removing scroll lock from page');
|
175
|
+
$document.off(elementNamespace);
|
176
|
+
$window.off(elementNamespace);
|
177
|
+
$module.off('scroll' + eventNamespace);
|
158
178
|
}
|
159
179
|
},
|
160
180
|
|
@@ -239,6 +259,11 @@ $.fn.sidebar = function(parameters) {
|
|
239
259
|
$pusher = $context.children(selector.pusher);
|
240
260
|
},
|
241
261
|
|
262
|
+
refreshSidebars: function() {
|
263
|
+
module.verbose('Refreshing other sidebars');
|
264
|
+
$sidebars = $context.children(selector.sidebar);
|
265
|
+
},
|
266
|
+
|
242
267
|
repaint: function() {
|
243
268
|
module.verbose('Forcing repaint event');
|
244
269
|
element.style.display='none';
|
@@ -261,7 +286,7 @@ $.fn.sidebar = function(parameters) {
|
|
261
286
|
;
|
262
287
|
module.refresh();
|
263
288
|
}
|
264
|
-
if($module.nextAll(selector.pusher).size()
|
289
|
+
if($module.nextAll(selector.pusher).size() === 0 || $module.nextAll(selector.pusher)[0] !== $pusher[0]) {
|
265
290
|
module.debug('Moved sidebar to correct parent element');
|
266
291
|
module.error(error.movedSidebar, element);
|
267
292
|
$module.detach().prependTo($context);
|
@@ -301,7 +326,8 @@ $.fn.sidebar = function(parameters) {
|
|
301
326
|
? callback
|
302
327
|
: function(){}
|
303
328
|
;
|
304
|
-
if(module.is.
|
329
|
+
if(module.is.hidden()) {
|
330
|
+
module.refreshSidebars();
|
305
331
|
if(settings.overlay) {
|
306
332
|
module.error(error.overlay);
|
307
333
|
settings.transition = 'overlay';
|
@@ -337,6 +363,7 @@ $.fn.sidebar = function(parameters) {
|
|
337
363
|
;
|
338
364
|
if(module.is.visible() || module.is.animating()) {
|
339
365
|
module.debug('Hiding sidebar', callback);
|
366
|
+
module.refreshSidebars();
|
340
367
|
animateMethod(function() {
|
341
368
|
$.proxy(callback, element)();
|
342
369
|
$.proxy(settings.onHidden, element)();
|
@@ -349,9 +376,6 @@ $.fn.sidebar = function(parameters) {
|
|
349
376
|
othersVisible: function() {
|
350
377
|
return ($sidebars.not($module).filter('.' + className.visible).size() > 0);
|
351
378
|
},
|
352
|
-
othersActive: function() {
|
353
|
-
return ($sidebars.not($module).filter('.' + className.active).size() > 0);
|
354
|
-
},
|
355
379
|
|
356
380
|
hideOthers: function(callback) {
|
357
381
|
var
|
@@ -372,7 +396,7 @@ $.fn.sidebar = function(parameters) {
|
|
372
396
|
|
373
397
|
toggle: function() {
|
374
398
|
module.verbose('Determining toggled direction');
|
375
|
-
if(module.is.
|
399
|
+
if(module.is.hidden()) {
|
376
400
|
module.show();
|
377
401
|
}
|
378
402
|
else {
|
@@ -401,10 +425,11 @@ $.fn.sidebar = function(parameters) {
|
|
401
425
|
module.set.transition();
|
402
426
|
module.repaint();
|
403
427
|
animate = function() {
|
428
|
+
module.bind.clickaway();
|
404
429
|
module.add.bodyCSS();
|
405
430
|
module.set.animating();
|
406
431
|
module.set.visible();
|
407
|
-
if(!module.
|
432
|
+
if(!module.othersVisible()) {
|
408
433
|
if(settings.dimPage) {
|
409
434
|
$pusher.addClass(className.dimmed);
|
410
435
|
}
|
@@ -412,13 +437,14 @@ $.fn.sidebar = function(parameters) {
|
|
412
437
|
};
|
413
438
|
transitionEnd = function(event) {
|
414
439
|
if( event.target == $transition[0] ) {
|
415
|
-
$transition.off(transitionEvent +
|
440
|
+
$transition.off(transitionEvent + elementNamespace, transitionEnd);
|
416
441
|
module.remove.animating();
|
417
|
-
module.bind.
|
442
|
+
module.bind.scrollLock();
|
418
443
|
$.proxy(callback, element)();
|
419
444
|
}
|
420
445
|
};
|
421
|
-
$transition.
|
446
|
+
$transition.off(transitionEvent + elementNamespace);
|
447
|
+
$transition.on(transitionEvent + elementNamespace, transitionEnd);
|
422
448
|
requestAnimationFrame(animate);
|
423
449
|
},
|
424
450
|
|
@@ -427,7 +453,7 @@ $.fn.sidebar = function(parameters) {
|
|
427
453
|
transition = module.get.transition(),
|
428
454
|
$transition = (transition == 'safe')
|
429
455
|
? $context
|
430
|
-
: (transition == 'overlay' || module.
|
456
|
+
: (transition == 'overlay' || module.othersVisible())
|
431
457
|
? $module
|
432
458
|
: $pusher,
|
433
459
|
animate,
|
@@ -438,19 +464,20 @@ $.fn.sidebar = function(parameters) {
|
|
438
464
|
: function(){}
|
439
465
|
;
|
440
466
|
module.verbose('Removing context push state', module.get.direction());
|
441
|
-
|
442
|
-
|
443
|
-
|
467
|
+
|
468
|
+
module.unbind.clickaway();
|
469
|
+
module.unbind.scrollLock();
|
470
|
+
|
444
471
|
animate = function() {
|
445
472
|
module.set.animating();
|
446
473
|
module.remove.visible();
|
447
|
-
if(settings.dimPage && !module.
|
474
|
+
if(settings.dimPage && !module.othersVisible()) {
|
448
475
|
$pusher.removeClass(className.dimmed);
|
449
476
|
}
|
450
477
|
};
|
451
478
|
transitionEnd = function(event) {
|
452
479
|
if( event.target == $transition[0] ) {
|
453
|
-
$transition.off(transitionEvent +
|
480
|
+
$transition.off(transitionEvent + elementNamespace, transitionEnd);
|
454
481
|
module.remove.animating();
|
455
482
|
module.remove.transition();
|
456
483
|
module.remove.bodyCSS();
|
@@ -460,7 +487,8 @@ $.fn.sidebar = function(parameters) {
|
|
460
487
|
$.proxy(callback, element)();
|
461
488
|
}
|
462
489
|
};
|
463
|
-
$transition.
|
490
|
+
$transition.off(transitionEvent + elementNamespace);
|
491
|
+
$transition.on(transitionEvent + elementNamespace, transitionEnd);
|
464
492
|
requestAnimationFrame(animate);
|
465
493
|
},
|
466
494
|
|
@@ -646,6 +674,9 @@ $.fn.sidebar = function(parameters) {
|
|
646
674
|
return transitions[transition];
|
647
675
|
}
|
648
676
|
}
|
677
|
+
},
|
678
|
+
uniqueID: function() {
|
679
|
+
return (Math.random().toString(16) + '000000000').substr(2,8);
|
649
680
|
}
|
650
681
|
},
|
651
682
|
|
@@ -698,12 +729,19 @@ $.fn.sidebar = function(parameters) {
|
|
698
729
|
return false;
|
699
730
|
}
|
700
731
|
},
|
701
|
-
|
732
|
+
hidden: function() {
|
702
733
|
return !module.is.visible();
|
703
734
|
},
|
704
735
|
visible: function() {
|
705
736
|
return $module.hasClass(className.visible);
|
706
737
|
},
|
738
|
+
// alias
|
739
|
+
open: function() {
|
740
|
+
return module.is.visible();
|
741
|
+
},
|
742
|
+
closed: function() {
|
743
|
+
return module.is.hidden();
|
744
|
+
},
|
707
745
|
vertical: function() {
|
708
746
|
return $module.hasClass(className.top);
|
709
747
|
},
|
@@ -98,6 +98,7 @@
|
|
98
98
|
.ui.form input[type="text"],
|
99
99
|
.ui.form input[type="email"],
|
100
100
|
.ui.form input[type="date"],
|
101
|
+
.ui.form input[type="datetime-local"],
|
101
102
|
.ui.form input[type="password"],
|
102
103
|
.ui.form input[type="number"],
|
103
104
|
.ui.form input[type="url"],
|
@@ -110,6 +111,7 @@
|
|
110
111
|
.ui.form input[type="text"],
|
111
112
|
.ui.form input[type="email"],
|
112
113
|
.ui.form input[type="date"],
|
114
|
+
.ui.form input[type="datetime-local"],
|
113
115
|
.ui.form input[type="password"],
|
114
116
|
.ui.form input[type="number"],
|
115
117
|
.ui.form input[type="url"],
|
@@ -294,6 +296,7 @@
|
|
294
296
|
.ui.form input[type="text"]:focus,
|
295
297
|
.ui.form input[type="email"]:focus,
|
296
298
|
.ui.form input[type="date"]:focus,
|
299
|
+
.ui.form input[type="datetime-local"]:focus,
|
297
300
|
.ui.form input[type="password"]:focus,
|
298
301
|
.ui.form input[type="number"]:focus,
|
299
302
|
.ui.form input[type="url"]:focus,
|
@@ -358,6 +361,7 @@
|
|
358
361
|
.ui.form .fields.error .field input[type="text"],
|
359
362
|
.ui.form .fields.error .field input[type="email"],
|
360
363
|
.ui.form .fields.error .field input[type="date"],
|
364
|
+
.ui.form .fields.error .field input[type="datetime-local"],
|
361
365
|
.ui.form .fields.error .field input[type="password"],
|
362
366
|
.ui.form .fields.error .field input[type="number"],
|
363
367
|
.ui.form .fields.error .field input[type="url"],
|
@@ -366,6 +370,7 @@
|
|
366
370
|
.ui.form .field.error input[type="text"],
|
367
371
|
.ui.form .field.error input[type="email"],
|
368
372
|
.ui.form .field.error input[type="date"],
|
373
|
+
.ui.form .field.error input[type="datetime-local"],
|
369
374
|
.ui.form .field.error input[type="password"],
|
370
375
|
.ui.form .field.error input[type="number"],
|
371
376
|
.ui.form .field.error input[type="url"],
|
@@ -380,6 +385,7 @@
|
|
380
385
|
.ui.form .field.error input[type="text"]:focus,
|
381
386
|
.ui.form .field.error input[type="email"]:focus,
|
382
387
|
.ui.form .field.error input[type="date"]:focus,
|
388
|
+
.ui.form .field.error input[type="datetime-local"]:focus,
|
383
389
|
.ui.form .field.error input[type="password"]:focus,
|
384
390
|
.ui.form .field.error input[type="number"]:focus,
|
385
391
|
.ui.form .field.error input[type="url"]:focus,
|
@@ -533,15 +539,27 @@
|
|
533
539
|
---------------------*/
|
534
540
|
|
535
541
|
.ui.form .required.fields > .field > label:after,
|
536
|
-
.ui.form .required.fields > .field > .checkbox:after,
|
537
542
|
.ui.form .required.field > label:after,
|
543
|
+
.ui.form .required.fields > .field > .checkbox:after,
|
538
544
|
.ui.form .required.field > .checkbox:after {
|
539
|
-
margin:
|
540
|
-
|
541
|
-
content: '*';
|
545
|
+
margin: @requiredMargin;
|
546
|
+
content: @requiredContent;
|
542
547
|
color: @requiredColor;
|
543
548
|
}
|
544
549
|
|
550
|
+
.ui.form .required.fields > .field > label:after,
|
551
|
+
.ui.form .required.field > label:after {
|
552
|
+
display: inline-block;
|
553
|
+
vertical-align: top;
|
554
|
+
}
|
555
|
+
|
556
|
+
.ui.form .required.fields > .field > .checkbox:after,
|
557
|
+
.ui.form .required.field > .checkbox:after {
|
558
|
+
position: absolute;
|
559
|
+
top: 0%;
|
560
|
+
left: 100%;
|
561
|
+
}
|
562
|
+
|
545
563
|
|
546
564
|
/*******************************
|
547
565
|
Variations
|
@@ -1586,52 +1586,45 @@
|
|
1586
1586
|
.ui.stackable.grid {
|
1587
1587
|
display: block !important;
|
1588
1588
|
width: auto;
|
1589
|
+
margin-left: -(@stackableGutter / 2);
|
1590
|
+
margin-right: -(@stackableGutter / 2);
|
1589
1591
|
padding: 0em;
|
1590
|
-
margin-top: 0em;
|
1591
|
-
margin-bottom: 0em;
|
1592
|
-
}
|
1593
|
-
:not(.column) > .ui.stackable.grid {
|
1594
|
-
margin: 0em;
|
1595
1592
|
}
|
1596
1593
|
.ui.stackable.grid > .row > .wide.column,
|
1597
1594
|
.ui.stackable.grid > .wide.column,
|
1598
1595
|
.ui.stackable.grid > .column.grid > .column,
|
1599
1596
|
.ui.stackable.grid > .column.row > .column,
|
1600
1597
|
.ui.stackable.grid > .row > .column,
|
1601
|
-
.ui.stackable.grid > .column {
|
1598
|
+
.ui.stackable.grid > .column:not(.row) {
|
1602
1599
|
display: block !important;
|
1603
1600
|
width: auto !important;
|
1604
1601
|
|
1605
|
-
margin:
|
1606
|
-
padding: (@stackableRowSpacing /
|
1607
|
-
|
1602
|
+
margin: 0em 0em !important;
|
1603
|
+
padding: (@stackableRowSpacing / 2) (@stackableGutter) !important;
|
1608
1604
|
box-shadow: none !important;
|
1609
1605
|
}
|
1606
|
+
.ui.stackable.grid > .row {
|
1607
|
+
margin: 0em;
|
1608
|
+
padding: 0em;
|
1609
|
+
}
|
1610
1610
|
|
1611
|
-
.ui.stackable.celled.grid > .column,
|
1611
|
+
.ui.stackable.celled.grid > .column:not(.row),
|
1612
|
+
.ui.stackable.divided.grid > .column:not(.row),
|
1612
1613
|
.ui.stackable.celled.grid > .row > .column,
|
1613
|
-
.ui.stackable.divided.grid > .column,
|
1614
1614
|
.ui.stackable.divided.grid > .row > .column {
|
1615
1615
|
border-top: @stackableMobileBorder;
|
1616
1616
|
box-shadow: none !important;
|
1617
|
-
margin: (@stackableRowSpacing) 0em !important;
|
1618
|
-
padding: (@stackableRowSpacing) (@stackableGutter / 2) 0em !important;
|
1619
1617
|
}
|
1620
|
-
.ui.inverted.stackable.celled.grid > .column,
|
1618
|
+
.ui.inverted.stackable.celled.grid > .column:not(.row),
|
1619
|
+
.ui.inverted.stackable.divided.grid > .column:not(.row),
|
1621
1620
|
.ui.inverted.stackable.celled.grid > .row > .column,
|
1622
|
-
.ui.inverted.stackable.divided.grid > .column,
|
1623
1621
|
.ui.inverted.stackable.divided.grid > .row > .column {
|
1624
1622
|
border-top: @stackableInvertedMobileBorder;
|
1625
1623
|
}
|
1626
|
-
.ui.stackable.grid > .row:first-child > .column:first-child,
|
1627
|
-
.ui.stackable.grid > .column:first-child {
|
1628
|
-
margin-top: 0em !important;
|
1629
|
-
padding-top: 0em !important;
|
1630
|
-
}
|
1631
1624
|
.ui.stackable.divided.grid > .row:first-child > .column:first-child,
|
1632
1625
|
.ui.stackable.celled.grid > .row:first-child > .column:first-child,
|
1633
|
-
.ui.stackable.divided.grid > .column:first-child,
|
1634
|
-
.ui.stackable.celled.grid > .column:first-child {
|
1626
|
+
.ui.stackable.divided.grid > .column:not(.row):first-child,
|
1627
|
+
.ui.stackable.celled.grid > .column:not(.row):first-child {
|
1635
1628
|
border-top: none !important;
|
1636
1629
|
}
|
1637
1630
|
|
@@ -293,12 +293,12 @@
|
|
293
293
|
}
|
294
294
|
|
295
295
|
/* Meta */
|
296
|
-
.ui.cards > .card .meta a,
|
297
|
-
.ui.card .meta a {
|
296
|
+
.ui.cards > .card .meta > a:not(.ui),
|
297
|
+
.ui.card .meta > a:not(.ui) {
|
298
298
|
color: @metaLinkColor;
|
299
299
|
}
|
300
|
-
.ui.cards > .card .meta a:hover,
|
301
|
-
.ui.card .meta a:hover {
|
300
|
+
.ui.cards > .card .meta > a:not(.ui):hover,
|
301
|
+
.ui.card .meta > a:not(.ui):hover {
|
302
302
|
color: @metaLinkHoverColor;
|
303
303
|
}
|
304
304
|
|
@@ -255,10 +255,10 @@
|
|
255
255
|
}
|
256
256
|
|
257
257
|
/* Meta */
|
258
|
-
.ui.items > .item .meta a {
|
258
|
+
.ui.items > .item .meta > a:not(.ui) {
|
259
259
|
color: @metaLinkColor;
|
260
260
|
}
|
261
|
-
.ui.items > .item .meta a:hover {
|
261
|
+
.ui.items > .item .meta > a:not(.ui):hover {
|
262
262
|
color: @metaLinkHoverColor;
|
263
263
|
}
|
264
264
|
|
@@ -141,8 +141,11 @@
|
|
141
141
|
--------------------*/
|
142
142
|
|
143
143
|
/* Required */
|
144
|
+
@requiredContent: '*';
|
144
145
|
@requiredColor: @negativeColor;
|
145
146
|
@requiredVerticalOffset: -0.2em;
|
147
|
+
@requiredDistance: 0.2em;
|
148
|
+
@requiredMargin: @requiredVerticalOffset 0em 0em @requiredDistance;
|
146
149
|
|
147
150
|
/* Inverted */
|
148
151
|
@invertedLabelColor: @invertedTextColor;
|
@@ -13,9 +13,10 @@
|
|
13
13
|
@importGoogleFonts : true;
|
14
14
|
@googleFontName : 'Lato';
|
15
15
|
@googleFontSizes : '400,700,400italic,700italic';
|
16
|
+
@googleSubset : 'latin';
|
16
17
|
|
17
18
|
@googleProtocol : 'http://';
|
18
|
-
@googleFontRequest : '@{googleFontName}:@{googleFontSizes}';
|
19
|
+
@googleFontRequest : '@{googleFontName}:@{googleFontSizes}&subset=@{googleSubset}';
|
19
20
|
|
20
21
|
/*-------------------
|
21
22
|
Base Sizes
|
@@ -80,11 +80,13 @@
|
|
80
80
|
@likeActiveColor: #EF404A;
|
81
81
|
|
82
82
|
/* Links */
|
83
|
-
@contentLinkColor:
|
83
|
+
@contentLinkColor: '';
|
84
|
+
@contentLinkHoverColor: '';
|
84
85
|
@contentLinkTransition: color @transitionDuration @transitionEasing;
|
85
|
-
|
86
|
+
|
86
87
|
@headerLinkColor: @headerColor;
|
87
88
|
@headerLinkHoverColor: @linkHoverColor;
|
89
|
+
|
88
90
|
@metaLinkColor: @lightTextColor;
|
89
91
|
@metaLinkHoverColor: @textColor;
|
90
92
|
|
@@ -88,13 +88,14 @@
|
|
88
88
|
@likeActiveColor: #FF2733;
|
89
89
|
|
90
90
|
/* Links */
|
91
|
-
@contentLinkTransition: color @transitionDuration @transitionEasing;
|
92
|
-
@contentLinkColor: @linkColor;
|
93
|
-
@contentLinkHoverColor: @linkHoverColor;
|
94
91
|
@headerLinkColor: @headerColor;
|
95
92
|
@headerLinkHoverColor: @linkHoverColor;
|
96
93
|
@metaLinkColor: @lightTextColor;
|
97
94
|
@metaLinkHoverColor: @textColor;
|
95
|
+
@contentLinkColor: '';
|
96
|
+
@contentLinkHoverColor: '';
|
97
|
+
@contentLinkTransition: color @transitionDuration @transitionEasing;
|
98
|
+
|
98
99
|
|
99
100
|
/* Description */
|
100
101
|
@descriptionDistance: 0.6em;
|
@@ -3,7 +3,7 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
|
3
3
|
|
4
4
|
Gem::Specification.new do |spec|
|
5
5
|
spec.name = 'less-rails-semantic_ui'
|
6
|
-
spec.version = '1.
|
6
|
+
spec.version = '1.2.0.0'
|
7
7
|
spec.authors = ['Maxim Dobryakov']
|
8
8
|
spec.email = ['maxim.dobryakov@gmail.com']
|
9
9
|
spec.summary = %q{Semantic UI assets for Rails}
|
data/tasks/update.rake
CHANGED
@@ -99,7 +99,7 @@ namespace :update do
|
|
99
99
|
patch(theme_config_file) do |content|
|
100
100
|
content = must_be_changed(content) { |c| c.sub(%r{\/\*.*?\*\/}m, '') }
|
101
101
|
content = must_be_changed(content) { |c| c.gsub(%q{@themesFolder : 'themes/';}, %q{@themesFolder : 'semantic_ui/themes/';}) }
|
102
|
-
content = must_be_changed(content) { |c| c.gsub(%q{@siteFolder : '
|
102
|
+
content = must_be_changed(content) { |c| c.gsub(%q{@siteFolder : 'site/';}, %q{@siteFolder : 'semantic_ui/config/';}) }
|
103
103
|
must_be_changed(content) { |c| c.gsub(%q{@import "theme.less";}, %q{@import "semantic_ui/theme.less";}) }
|
104
104
|
end
|
105
105
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: less-rails-semantic_ui
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.2.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Maxim Dobryakov
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-12-
|
11
|
+
date: 2014-12-09 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: less-rails
|