fomantic-ui 2.9.0-beta.8 → 2.9.0-beta.80

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.
Files changed (217) hide show
  1. package/.all-contributorsrc +188 -3
  2. package/CONTRIBUTING.md +1 -1
  3. package/CONTRIBUTORS.md +71 -37
  4. package/README.md +1 -1
  5. package/dist/components/accordion.css +50 -6
  6. package/dist/components/accordion.js +1 -1
  7. package/dist/components/accordion.min.css +2 -2
  8. package/dist/components/accordion.min.js +1 -1
  9. package/dist/components/ad.css +1 -1
  10. package/dist/components/ad.min.css +1 -1
  11. package/dist/components/api.js +26 -24
  12. package/dist/components/api.min.js +2 -2
  13. package/dist/components/breadcrumb.css +1 -1
  14. package/dist/components/breadcrumb.min.css +1 -1
  15. package/dist/components/button.css +6 -6
  16. package/dist/components/button.min.css +2 -2
  17. package/dist/components/calendar.css +1 -1
  18. package/dist/components/calendar.js +106 -10
  19. package/dist/components/calendar.min.css +1 -1
  20. package/dist/components/calendar.min.js +2 -2
  21. package/dist/components/card.css +26 -19
  22. package/dist/components/card.min.css +2 -2
  23. package/dist/components/checkbox.css +2 -1
  24. package/dist/components/checkbox.js +2 -4
  25. package/dist/components/checkbox.min.css +2 -2
  26. package/dist/components/checkbox.min.js +2 -2
  27. package/dist/components/comment.css +11 -11
  28. package/dist/components/comment.min.css +1 -1
  29. package/dist/components/container.css +1 -1
  30. package/dist/components/container.min.css +1 -1
  31. package/dist/components/dimmer.css +28 -14
  32. package/dist/components/dimmer.js +1 -1
  33. package/dist/components/dimmer.min.css +2 -2
  34. package/dist/components/dimmer.min.js +1 -1
  35. package/dist/components/divider.css +1 -1
  36. package/dist/components/divider.min.css +1 -1
  37. package/dist/components/dropdown.css +28 -5
  38. package/dist/components/dropdown.js +15 -19
  39. package/dist/components/dropdown.min.css +2 -2
  40. package/dist/components/dropdown.min.js +2 -2
  41. package/dist/components/embed.css +1 -1
  42. package/dist/components/embed.js +1 -1
  43. package/dist/components/embed.min.css +1 -1
  44. package/dist/components/embed.min.js +1 -1
  45. package/dist/components/emoji.css +2 -2
  46. package/dist/components/feed.css +28 -28
  47. package/dist/components/feed.min.css +2 -2
  48. package/dist/components/flag.css +731 -625
  49. package/dist/components/flag.min.css +2 -2
  50. package/dist/components/form.css +103 -54
  51. package/dist/components/form.js +24 -22
  52. package/dist/components/form.min.css +2 -2
  53. package/dist/components/form.min.js +2 -2
  54. package/dist/components/grid.css +11 -8
  55. package/dist/components/grid.min.css +2 -2
  56. package/dist/components/header.css +1 -1
  57. package/dist/components/header.min.css +1 -1
  58. package/dist/components/icon.css +6 -1
  59. package/dist/components/icon.min.css +2 -2
  60. package/dist/components/image.css +1 -1
  61. package/dist/components/image.min.css +1 -1
  62. package/dist/components/input.css +17 -2
  63. package/dist/components/input.min.css +2 -2
  64. package/dist/components/item.css +13 -13
  65. package/dist/components/item.min.css +1 -1
  66. package/dist/components/label.css +1 -1
  67. package/dist/components/label.min.css +1 -1
  68. package/dist/components/list.css +1 -1
  69. package/dist/components/list.min.css +1 -1
  70. package/dist/components/loader.css +1 -1
  71. package/dist/components/loader.min.css +1 -1
  72. package/dist/components/menu.css +31 -7
  73. package/dist/components/menu.min.css +1 -1
  74. package/dist/components/message.css +1 -1
  75. package/dist/components/message.min.css +1 -1
  76. package/dist/components/modal.css +3 -1
  77. package/dist/components/modal.js +94 -30
  78. package/dist/components/modal.min.css +2 -2
  79. package/dist/components/modal.min.js +2 -2
  80. package/dist/components/nag.css +1 -1
  81. package/dist/components/nag.js +1 -1
  82. package/dist/components/nag.min.css +1 -1
  83. package/dist/components/nag.min.js +1 -1
  84. package/dist/components/placeholder.css +1 -1
  85. package/dist/components/placeholder.min.css +1 -1
  86. package/dist/components/popup.css +5 -3
  87. package/dist/components/popup.js +1 -1
  88. package/dist/components/popup.min.css +2 -2
  89. package/dist/components/popup.min.js +1 -1
  90. package/dist/components/progress.css +1 -1
  91. package/dist/components/progress.js +3 -3
  92. package/dist/components/progress.min.css +1 -1
  93. package/dist/components/progress.min.js +2 -2
  94. package/dist/components/rail.css +1 -1
  95. package/dist/components/rail.min.css +1 -1
  96. package/dist/components/rating.css +7 -46
  97. package/dist/components/rating.js +1 -1
  98. package/dist/components/rating.min.css +2 -2
  99. package/dist/components/rating.min.js +1 -1
  100. package/dist/components/reset.css +1 -1
  101. package/dist/components/reset.min.css +1 -1
  102. package/dist/components/reveal.css +1 -1
  103. package/dist/components/reveal.min.css +1 -1
  104. package/dist/components/search.css +1 -1
  105. package/dist/components/search.js +1 -1
  106. package/dist/components/search.min.css +1 -1
  107. package/dist/components/search.min.js +1 -1
  108. package/dist/components/segment.css +12 -6
  109. package/dist/components/segment.min.css +2 -2
  110. package/dist/components/shape.css +1 -1
  111. package/dist/components/shape.js +1 -1
  112. package/dist/components/shape.min.css +1 -1
  113. package/dist/components/shape.min.js +1 -1
  114. package/dist/components/sidebar.css +1 -1
  115. package/dist/components/sidebar.js +1 -1
  116. package/dist/components/sidebar.min.css +1 -1
  117. package/dist/components/sidebar.min.js +1 -1
  118. package/dist/components/site.css +61 -39
  119. package/dist/components/site.js +1 -1
  120. package/dist/components/site.min.css +2 -2
  121. package/dist/components/site.min.js +1 -1
  122. package/dist/components/slider.js +1 -1
  123. package/dist/components/slider.min.js +1 -1
  124. package/dist/components/state.js +1 -1
  125. package/dist/components/state.min.js +1 -1
  126. package/dist/components/statistic.css +1 -1
  127. package/dist/components/statistic.min.css +1 -1
  128. package/dist/components/step.css +4 -4
  129. package/dist/components/step.min.css +2 -2
  130. package/dist/components/sticky.css +1 -1
  131. package/dist/components/sticky.js +2 -2
  132. package/dist/components/sticky.min.css +1 -1
  133. package/dist/components/sticky.min.js +2 -2
  134. package/dist/components/tab.css +1 -1
  135. package/dist/components/tab.js +1 -1
  136. package/dist/components/tab.min.css +1 -1
  137. package/dist/components/tab.min.js +1 -1
  138. package/dist/components/table.css +5 -3
  139. package/dist/components/table.min.css +2 -2
  140. package/dist/components/text.css +1 -1
  141. package/dist/components/text.min.css +1 -1
  142. package/dist/components/toast.css +7 -1
  143. package/dist/components/toast.js +3 -3
  144. package/dist/components/toast.min.css +2 -2
  145. package/dist/components/toast.min.js +2 -2
  146. package/dist/components/transition.css +1 -1
  147. package/dist/components/transition.js +2 -2
  148. package/dist/components/transition.min.css +1 -1
  149. package/dist/components/transition.min.js +2 -2
  150. package/dist/components/visibility.js +2 -2
  151. package/dist/components/visibility.min.js +1 -1
  152. package/dist/semantic.css +1323 -981
  153. package/dist/semantic.js +293 -135
  154. package/dist/semantic.min.css +2 -2
  155. package/dist/semantic.min.js +2 -2
  156. package/examples/assets/library/iframe-content.js +8 -8
  157. package/examples/assets/library/iframe.js +3 -3
  158. package/package.json +2 -2
  159. package/src/definitions/behaviors/api.js +25 -23
  160. package/src/definitions/behaviors/form.js +23 -21
  161. package/src/definitions/behaviors/visibility.js +1 -1
  162. package/src/definitions/collections/form.less +184 -133
  163. package/src/definitions/collections/grid.less +704 -669
  164. package/src/definitions/collections/menu.less +128 -85
  165. package/src/definitions/collections/message.less +8 -7
  166. package/src/definitions/collections/table.less +186 -174
  167. package/src/definitions/elements/button.less +130 -119
  168. package/src/definitions/elements/container.less +16 -8
  169. package/src/definitions/elements/emoji.less +15 -9
  170. package/src/definitions/elements/flag.less +7 -17
  171. package/src/definitions/elements/header.less +14 -8
  172. package/src/definitions/elements/icon.less +16 -10
  173. package/src/definitions/elements/input.less +17 -1
  174. package/src/definitions/elements/list.less +55 -45
  175. package/src/definitions/elements/segment.less +15 -8
  176. package/src/definitions/elements/step.less +52 -48
  177. package/src/definitions/globals/site.less +23 -2
  178. package/src/definitions/modules/accordion.less +55 -5
  179. package/src/definitions/modules/calendar.js +105 -9
  180. package/src/definitions/modules/checkbox.js +1 -3
  181. package/src/definitions/modules/checkbox.less +1 -146
  182. package/src/definitions/modules/dimmer.less +21 -8
  183. package/src/definitions/modules/dropdown.js +14 -18
  184. package/src/definitions/modules/dropdown.less +96 -64
  185. package/src/definitions/modules/modal.js +93 -29
  186. package/src/definitions/modules/modal.less +2 -0
  187. package/src/definitions/modules/popup.less +5 -1
  188. package/src/definitions/modules/progress.js +2 -2
  189. package/src/definitions/modules/rating.less +18 -12
  190. package/src/definitions/modules/search.less +32 -16
  191. package/src/definitions/modules/sidebar.less +30 -18
  192. package/src/definitions/modules/sticky.js +1 -1
  193. package/src/definitions/modules/toast.js +2 -2
  194. package/src/definitions/modules/toast.less +5 -0
  195. package/src/definitions/modules/transition.js +1 -1
  196. package/src/definitions/views/card.less +373 -333
  197. package/src/definitions/views/comment.less +92 -81
  198. package/src/definitions/views/feed.less +164 -144
  199. package/src/definitions/views/item.less +249 -196
  200. package/src/definitions/views/statistic.less +71 -70
  201. package/src/themes/default/collections/menu.variables +6 -0
  202. package/src/themes/default/elements/button.variables +2 -1
  203. package/src/themes/default/elements/flag.overrides +1635 -986
  204. package/src/themes/default/elements/flag.variables +7 -5
  205. package/src/themes/default/elements/icon.overrides +35 -28
  206. package/src/themes/default/elements/icon.variables +1 -0
  207. package/src/themes/default/elements/step.overrides +1 -1
  208. package/src/themes/default/globals/site.variables +6 -0
  209. package/src/themes/default/globals/variation.variables +74 -1
  210. package/src/themes/default/modules/accordion.variables +15 -0
  211. package/src/themes/default/modules/dimmer.variables +1 -1
  212. package/src/themes/default/modules/dropdown.variables +1 -1
  213. package/src/themes/famfamfam/elements/flag.overrides +1026 -0
  214. package/src/themes/famfamfam/elements/flag.variables +13 -0
  215. package/tasks/admin/components/init.js +2 -2
  216. package/tasks/admin/distributions/init.js +2 -2
  217. package/test/helpers/sinon.js +1 -1
@@ -66,7 +66,8 @@ $.fn.modal = function(parameters) {
66
66
 
67
67
  $module = $(this),
68
68
  $context = $(settings.context),
69
- $close = $module.find(selector.close),
69
+ $closeIcon = $module.find(selector.closeIcon),
70
+ $inputs,
70
71
 
71
72
  $allModals,
72
73
  $otherModals,
@@ -92,6 +93,7 @@ $.fn.modal = function(parameters) {
92
93
  module = {
93
94
 
94
95
  initialize: function() {
96
+ module.create.id();
95
97
  if(!$module.hasClass('modal')) {
96
98
  module.create.modal();
97
99
  if(!$.isFunction(settings.onHidden)) {
@@ -116,15 +118,17 @@ $.fn.modal = function(parameters) {
116
118
  $actions.empty();
117
119
  }
118
120
  settings.actions.forEach(function (el) {
119
- var icon = el[fields.icon] ? '<i class="' + module.helpers.deQuote(el[fields.icon]) + ' icon"></i>' : '',
121
+ var icon = el[fields.icon] ? '<i '+(el[fields.text] ? 'aria-hidden="true"' : '')+' class="' + module.helpers.deQuote(el[fields.icon]) + ' icon"></i>' : '',
120
122
  text = module.helpers.escape(el[fields.text] || '', settings.preserveHTML),
121
123
  cls = module.helpers.deQuote(el[fields.class] || ''),
122
124
  click = el[fields.click] && $.isFunction(el[fields.click]) ? el[fields.click] : function () {};
123
125
  $actions.append($('<button/>', {
124
126
  html: icon + text,
127
+ 'aria-label': $('<div>'+(el[fields.text] || el[fields.icon] || '')+'</div>').text(),
125
128
  class: className.button + ' ' + cls,
126
129
  click: function () {
127
- if (click.call(element, $module) === false) {
130
+ var button = $(this);
131
+ if (button.is(selector.approve) || button.is(selector.deny) || click.call(element, $module) === false) {
128
132
  return;
129
133
  }
130
134
  module.hide();
@@ -135,7 +139,6 @@ $.fn.modal = function(parameters) {
135
139
  module.cache = {};
136
140
  module.verbose('Initializing dimmer', $context);
137
141
 
138
- module.create.id();
139
142
  module.create.dimmer();
140
143
 
141
144
  if ( settings.allowMultiple ) {
@@ -145,11 +148,9 @@ $.fn.modal = function(parameters) {
145
148
  $module.addClass('top aligned');
146
149
  }
147
150
  module.refreshModals();
148
-
151
+ module.refreshInputs();
149
152
  module.bind.events();
150
- if(settings.observeChanges) {
151
- module.observeChanges();
152
- }
153
+ module.observeChanges();
153
154
  module.instantiate();
154
155
  if(settings.autoShow){
155
156
  module.show();
@@ -166,16 +167,20 @@ $.fn.modal = function(parameters) {
166
167
 
167
168
  create: {
168
169
  modal: function() {
169
- $module = $('<div/>', {class: className.modal});
170
+ $module = $('<div/>', {class: className.modal, role: 'dialog', 'aria-modal': true});
170
171
  if (settings.closeIcon) {
171
- $close = $('<i/>', {class: className.close})
172
- $module.append($close);
172
+ $closeIcon = $('<i/>', {class: className.close, role: 'button', tabindex: 0, 'aria-label': settings.text.close})
173
+ $module.append($closeIcon);
173
174
  }
174
175
  if (settings.title !== '') {
175
- $('<div/>', {class: className.title}).appendTo($module);
176
+ var titleId = '_' + module.get.id() + 'title';
177
+ $module.attr('aria-labelledby', titleId);
178
+ $('<div/>', {class: className.title, id: titleId}).appendTo($module);
176
179
  }
177
180
  if (settings.content !== '') {
178
- $('<div/>', {class: className.content}).appendTo($module);
181
+ var descId = '_' + module.get.id() + 'desc';
182
+ $module.attr('aria-describedby', descId);
183
+ $('<div/>', {class: className.content, id: descId}).appendTo($module);
179
184
  }
180
185
  if (module.has.configActions()) {
181
186
  $('<div/>', {class: className.actions}).appendTo($module);
@@ -228,15 +233,21 @@ $.fn.modal = function(parameters) {
228
233
  ;
229
234
  $window.off(elementEventNamespace);
230
235
  $dimmer.off(elementEventNamespace);
231
- $close.off(eventNamespace);
236
+ $closeIcon.off(elementEventNamespace);
237
+ if($inputs) {
238
+ $inputs.off(elementEventNamespace);
239
+ }
232
240
  $context.dimmer('destroy');
233
241
  },
234
242
 
235
243
  observeChanges: function() {
236
244
  if('MutationObserver' in window) {
237
245
  observer = new MutationObserver(function(mutations) {
238
- module.debug('DOM tree modified, refreshing');
239
- module.refresh();
246
+ if(settings.observeChanges) {
247
+ module.debug('DOM tree modified, refreshing');
248
+ module.refresh();
249
+ }
250
+ module.refreshInputs();
240
251
  });
241
252
  observer.observe(element, {
242
253
  childList : true,
@@ -261,6 +272,23 @@ $.fn.modal = function(parameters) {
261
272
  $allModals = $otherModals.add($module);
262
273
  },
263
274
 
275
+ refreshInputs: function(){
276
+ if($inputs){
277
+ $inputs
278
+ .off('keydown' + elementEventNamespace)
279
+ ;
280
+ }
281
+ $inputs = $module.find('[tabindex], :input').filter(':visible').filter(function() {
282
+ return $(this).closest('.disabled').length === 0;
283
+ });
284
+ $inputs.first()
285
+ .on('keydown' + elementEventNamespace, module.event.inputKeyDown.first)
286
+ ;
287
+ $inputs.last()
288
+ .on('keydown' + elementEventNamespace, module.event.inputKeyDown.last)
289
+ ;
290
+ },
291
+
264
292
  attachEvents: function(selector, event) {
265
293
  var
266
294
  $toggle = $(selector)
@@ -289,6 +317,9 @@ $.fn.modal = function(parameters) {
289
317
  .on('click' + eventNamespace, selector.approve, module.event.approve)
290
318
  .on('click' + eventNamespace, selector.deny, module.event.deny)
291
319
  ;
320
+ $closeIcon
321
+ .on('keyup' + elementEventNamespace, module.event.closeKeyUp)
322
+ ;
292
323
  $window
293
324
  .on('resize' + elementEventNamespace, module.event.resize)
294
325
  ;
@@ -307,7 +338,7 @@ $.fn.modal = function(parameters) {
307
338
 
308
339
  get: {
309
340
  id: function() {
310
- return (Math.random().toString(16) + '000000000').substr(2, 8);
341
+ return id;
311
342
  },
312
343
  element: function() {
313
344
  return $module;
@@ -346,10 +377,38 @@ $.fn.modal = function(parameters) {
346
377
  close: function() {
347
378
  module.hide();
348
379
  },
380
+ closeKeyUp: function(event){
381
+ var
382
+ keyCode = event.which
383
+ ;
384
+ if ((keyCode === settings.keys.enter || keyCode === settings.keys.space) && $module.hasClass(className.front)) {
385
+ module.hide();
386
+ }
387
+ },
388
+ inputKeyDown: {
389
+ first: function(event) {
390
+ var
391
+ keyCode = event.which
392
+ ;
393
+ if (keyCode === settings.keys.tab && event.shiftKey) {
394
+ $inputs.last().focus();
395
+ event.preventDefault();
396
+ }
397
+ },
398
+ last: function(event) {
399
+ var
400
+ keyCode = event.which
401
+ ;
402
+ if (keyCode === settings.keys.tab && !event.shiftKey) {
403
+ $inputs.first().focus();
404
+ event.preventDefault();
405
+ }
406
+ }
407
+ },
349
408
  mousedown: function(event) {
350
409
  var
351
410
  $target = $(event.target),
352
- isRtl = module.is.rtl();
411
+ isRtl = module.is.rtl()
353
412
  ;
354
413
  initialMouseDownInModal = ($target.closest(selector.modal).length > 0);
355
414
  if(initialMouseDownInModal) {
@@ -397,10 +456,9 @@ $.fn.modal = function(parameters) {
397
456
  },
398
457
  keyboard: function(event) {
399
458
  var
400
- keyCode = event.which,
401
- escapeKey = 27
459
+ keyCode = event.which
402
460
  ;
403
- if(keyCode == escapeKey) {
461
+ if(keyCode === settings.keys.escape) {
404
462
  if(settings.closable) {
405
463
  module.debug('Escape key pressed hiding modal');
406
464
  if ( $module.hasClass(className.front) ) {
@@ -715,7 +773,7 @@ $.fn.modal = function(parameters) {
715
773
  $module
716
774
  .off('mousedown' + elementEventNamespace)
717
775
  ;
718
- }
776
+ }
719
777
  $dimmer
720
778
  .off('mousedown' + elementEventNamespace)
721
779
  ;
@@ -900,13 +958,10 @@ $.fn.modal = function(parameters) {
900
958
  set: {
901
959
  autofocus: function() {
902
960
  var
903
- $inputs = $module.find('[tabindex], :input').filter(':visible').filter(function() {
904
- return $(this).closest('.disabled').length === 0;
905
- }),
906
961
  $autofocus = $inputs.filter('[autofocus]'),
907
962
  $input = ($autofocus.length > 0)
908
963
  ? $autofocus.first()
909
- : $inputs.first()
964
+ : ($inputs.length > 1 ? $inputs.filter(':not(i.close)') : $inputs).first()
910
965
  ;
911
966
  if($input.length > 0) {
912
967
  $input.focus();
@@ -988,7 +1043,7 @@ $.fn.modal = function(parameters) {
988
1043
  ? $(document).scrollTop() + settings.padding
989
1044
  : $(document).scrollTop() + (module.cache.contextHeight - module.cache.height - settings.padding),
990
1045
  marginLeft: -(module.cache.width / 2)
991
- })
1046
+ })
992
1047
  ;
993
1048
  } else {
994
1049
  $module
@@ -997,7 +1052,7 @@ $.fn.modal = function(parameters) {
997
1052
  ? -(module.cache.height / 2)
998
1053
  : settings.padding / 2,
999
1054
  marginLeft: -(module.cache.width / 2)
1000
- })
1055
+ })
1001
1056
  ;
1002
1057
  }
1003
1058
  module.verbose('Setting modal offset for legacy mode');
@@ -1323,11 +1378,19 @@ $.fn.modal.settings = {
1323
1378
  // called after deny selector match
1324
1379
  onDeny : function(){ return true; },
1325
1380
 
1381
+ keys : {
1382
+ space : 32,
1383
+ enter : 13,
1384
+ escape : 27,
1385
+ tab : 9,
1386
+ },
1387
+
1326
1388
  selector : {
1327
1389
  title : '> .header',
1328
1390
  content : '> .content',
1329
1391
  actions : '> .actions',
1330
1392
  close : '> .close',
1393
+ closeIcon: '> .close',
1331
1394
  approve : '.actions .positive, .actions .approve, .actions .ok',
1332
1395
  deny : '.actions .negative, .actions .deny, .actions .cancel',
1333
1396
  modal : '.ui.modal',
@@ -1363,7 +1426,8 @@ $.fn.modal.settings = {
1363
1426
  },
1364
1427
  text: {
1365
1428
  ok : 'Ok',
1366
- cancel: 'Cancel'
1429
+ cancel: 'Cancel',
1430
+ close : 'Close'
1367
1431
  }
1368
1432
  };
1369
1433
 
@@ -80,8 +80,10 @@
80
80
  height: @closeHitbox;
81
81
  padding: @closePadding;
82
82
  }
83
+ .ui.modal > .close:focus,
83
84
  .ui.modal > .close:hover {
84
85
  opacity: 1;
86
+ outline: none;
85
87
  }
86
88
 
87
89
  /*--------------
@@ -337,7 +337,6 @@
337
337
  left: 50%;
338
338
  margin-left: @tooltipArrowHorizontalOffset;
339
339
  margin-top: -@arrowOffset;
340
- transform-origin: center top;
341
340
  }
342
341
  }
343
342
  & when (@variationPopupLeft) {
@@ -448,6 +447,11 @@
448
447
  }
449
448
  }
450
449
  & when (@variationPopupCenter) {
450
+ & when (@variationPopupBottom) {
451
+ [data-position="bottom center"][data-tooltip]:before {
452
+ transform-origin: center top;
453
+ }
454
+ }
451
455
  & when (@variationPopupLeft) {
452
456
  [data-position="left center"][data-tooltip]:before {
453
457
  transform-origin: top center;
@@ -93,7 +93,7 @@ $.fn.progress = function(parameters) {
93
93
  *
94
94
  * @param min A minimum value within multiple values
95
95
  * @param total A total amount of multiple values
96
- * @returns {number} A precison. Could be 1, 10, 100, ... 1e+10.
96
+ * @returns {number} A precision. Could be 1, 10, 100, ... 1e+10.
97
97
  */
98
98
  derivePrecision: function(min, total) {
99
99
  var precisionPower = 0
@@ -991,7 +991,7 @@ $.fn.progress.settings = {
991
991
  nonNumeric : 'Progress value is non numeric',
992
992
  tooHigh : 'Value specified is above 100%',
993
993
  tooLow : 'Value specified is below 0%',
994
- sumExceedsTotal : 'Sum of multple values exceed total',
994
+ sumExceedsTotal : 'Sum of multiple values exceed total',
995
995
  },
996
996
 
997
997
  regExp: {
@@ -69,13 +69,20 @@
69
69
  color: @activeColor;
70
70
  }
71
71
 
72
- /* Partially Active Icon */
73
- .ui.rating .icon.partial.active {
74
- background: linear-gradient(to right, @activeColor 0% var(--full), @inactiveColor var(--full) 100%);
75
- background-clip: text;
76
- color: transparent;
77
- }
72
+ & when (@variationRatingPartial) {
73
+ /* Partially Active Icon */
74
+ .ui.rating .icon.partial.active {
75
+ background: linear-gradient(to right, @activeColor 0% var(--full), @inactiveColor var(--full) 100%);
76
+ }
78
77
 
78
+ /* central override for colors */
79
+ .ui.ui.rating .icon.partial.active {
80
+ -webkit-background-clip: text;
81
+ background-clip: text;
82
+ color: transparent;
83
+ text-shadow: none;
84
+ }
85
+ }
79
86
  /* Selected Icon */
80
87
  .ui.rating .icon.selected,
81
88
  .ui.rating .icon.selected.active,
@@ -116,12 +123,11 @@ each(@colors, {
116
123
  -webkit-text-stroke: unset;
117
124
  background-clip: unset;
118
125
  }
119
- .ui.@{color}.rating .icon.partial.active {
120
- background: linear-gradient(to right, @l 0% var(--full), @inactiveColor var(--full) 100%);
121
- text-shadow: none;
122
- -webkit-text-stroke: @c 0.78px;
123
- background-clip: text;
124
- color: transparent;
126
+ & when (@variationRatingPartial) {
127
+ .ui.@{color}.rating .icon.partial.active {
128
+ background: linear-gradient(to right, @l 0% var(--full), @inactiveColor var(--full) 100%);
129
+ -webkit-text-stroke: @c 0.78px;
130
+ }
125
131
  }
126
132
  })
127
133
 
@@ -437,16 +437,20 @@
437
437
  .ui.search.short > .results {
438
438
  max-height: @scrollingMobileMaxResultsHeight;
439
439
  }
440
- .ui.search[class*="very short"] > .results {
441
- max-height: @scrollingMobileMaxResultsHeight * 0.75;
440
+ & when (@variationSearchVeryShort) {
441
+ .ui.search[class*="very short"] > .results {
442
+ max-height: @scrollingMobileMaxResultsHeight * 0.75;
443
+ }
442
444
  }
443
445
  }
444
446
  & when (@variationSearchLong) {
445
447
  .ui.search.long > .results {
446
448
  max-height: @scrollingMobileMaxResultsHeight * 2;
447
449
  }
448
- .ui.search[class*="very long"] > .results {
449
- max-height: @scrollingMobileMaxResultsHeight * 3;
450
+ & when (@variationSearchVeryLong) {
451
+ .ui.search[class*="very long"] > .results {
452
+ max-height: @scrollingMobileMaxResultsHeight * 3;
453
+ }
450
454
  }
451
455
  }
452
456
  }
@@ -455,16 +459,20 @@
455
459
  .ui.search.short > .results {
456
460
  max-height: @scrollingTabletMaxResultsHeight;
457
461
  }
458
- .ui.search[class*="very short"] > .results {
459
- max-height: @scrollingTabletMaxResultsHeight * 0.75;
462
+ & when (@variationSearchVeryShort) {
463
+ .ui.search[class*="very short"] > .results {
464
+ max-height: @scrollingTabletMaxResultsHeight * 0.75;
465
+ }
460
466
  }
461
467
  }
462
468
  & when (@variationSearchLong) {
463
469
  .ui.search.long > .results {
464
470
  max-height: @scrollingTabletMaxResultsHeight * 2;
465
471
  }
466
- .ui.search[class*="very long"] > .results {
467
- max-height: @scrollingTabletMaxResultsHeight * 3;
472
+ & when (@variationSearchVeryLong) {
473
+ .ui.search[class*="very long"] > .results {
474
+ max-height: @scrollingTabletMaxResultsHeight * 3;
475
+ }
468
476
  }
469
477
  }
470
478
  }
@@ -473,16 +481,20 @@
473
481
  .ui.search.short > .results {
474
482
  max-height: @scrollingComputerMaxResultsHeight;
475
483
  }
476
- .ui.search[class*="very short"] > .results {
477
- max-height: @scrollingComputerMaxResultsHeight * 0.75;
484
+ & when (@variationSearchVeryShort) {
485
+ .ui.search[class*="very short"] > .results {
486
+ max-height: @scrollingComputerMaxResultsHeight * 0.75;
487
+ }
478
488
  }
479
489
  }
480
490
  & when (@variationSearchLong) {
481
491
  .ui.search.long > .results {
482
492
  max-height: @scrollingComputerMaxResultsHeight * 2;
483
493
  }
484
- .ui.search[class*="very long"] > .results {
485
- max-height: @scrollingComputerMaxResultsHeight * 3;
494
+ & when (@variationSearchVeryLong) {
495
+ .ui.search[class*="very long"] > .results {
496
+ max-height: @scrollingComputerMaxResultsHeight * 3;
497
+ }
486
498
  }
487
499
  }
488
500
  }
@@ -491,16 +503,20 @@
491
503
  .ui.search.short > .results {
492
504
  max-height: @scrollingWidescreenMaxResultsHeight;
493
505
  }
494
- .ui.search[class*="very short"] > .results {
495
- max-height: @scrollingWidescreenMaxResultsHeight * 0.75;
506
+ & when (@variationSearchVeryShort) {
507
+ .ui.search[class*="very short"] > .results {
508
+ max-height: @scrollingWidescreenMaxResultsHeight * 0.75;
509
+ }
496
510
  }
497
511
  }
498
512
  & when (@variationSearchLong) {
499
513
  .ui.search.long > .results {
500
514
  max-height: @scrollingWidescreenMaxResultsHeight * 2;
501
515
  }
502
- .ui.search[class*="very long"] > .results {
503
- max-height: @scrollingWidescreenMaxResultsHeight * 3;
516
+ & when (@variationSearchVeryLong) {
517
+ .ui.search[class*="very long"] > .results {
518
+ max-height: @scrollingWidescreenMaxResultsHeight * 3;
519
+ }
504
520
  }
505
521
  }
506
522
  }
@@ -281,9 +281,11 @@ body.pushable > .pusher {
281
281
  width: @thinWidth;
282
282
  }
283
283
 
284
- .ui[class*="very thin"].left.sidebar,
285
- .ui[class*="very thin"].right.sidebar {
286
- width: @veryThinWidth;
284
+ & when (@variationSidebarVeryThin) {
285
+ .ui[class*="very thin"].left.sidebar,
286
+ .ui[class*="very thin"].right.sidebar {
287
+ width: @veryThinWidth;
288
+ }
287
289
  }
288
290
  }
289
291
 
@@ -298,9 +300,11 @@ body.pushable > .pusher {
298
300
  width: @wideWidth;
299
301
  }
300
302
 
301
- .ui[class*="very wide"].left.sidebar,
302
- .ui[class*="very wide"].right.sidebar {
303
- width: @veryWideWidth;
303
+ & when (@variationSidebarVeryWide) {
304
+ .ui[class*="very wide"].left.sidebar,
305
+ .ui[class*="very wide"].right.sidebar {
306
+ width: @veryWideWidth;
307
+ }
304
308
  }
305
309
  }
306
310
 
@@ -312,9 +316,11 @@ body.pushable > .pusher {
312
316
  transform: translate3d(@thinWidth, 0, 0);
313
317
  }
314
318
 
315
- .ui.visible[class*="very thin"].left.sidebar ~ .fixed,
316
- .ui.visible[class*="very thin"].left.sidebar ~ .pusher {
317
- transform: translate3d(@veryThinWidth, 0, 0);
319
+ & when (@variationSidebarVeryThin) {
320
+ .ui.visible[class*="very thin"].left.sidebar ~ .fixed,
321
+ .ui.visible[class*="very thin"].left.sidebar ~ .pusher {
322
+ transform: translate3d(@veryThinWidth, 0, 0);
323
+ }
318
324
  }
319
325
  }
320
326
 
@@ -324,9 +330,11 @@ body.pushable > .pusher {
324
330
  transform: translate3d(@wideWidth, 0, 0);
325
331
  }
326
332
 
327
- .ui.visible[class*="very wide"].left.sidebar ~ .fixed,
328
- .ui.visible[class*="very wide"].left.sidebar ~ .pusher {
329
- transform: translate3d(@veryWideWidth, 0, 0);
333
+ & when (@variationSidebarVeryWide) {
334
+ .ui.visible[class*="very wide"].left.sidebar ~ .fixed,
335
+ .ui.visible[class*="very wide"].left.sidebar ~ .pusher {
336
+ transform: translate3d(@veryWideWidth, 0, 0);
337
+ }
330
338
  }
331
339
  }
332
340
  }
@@ -339,9 +347,11 @@ body.pushable > .pusher {
339
347
  transform: translate3d(-@thinWidth, 0, 0);
340
348
  }
341
349
 
342
- .ui.visible[class*="very thin"].right.sidebar ~ .fixed,
343
- .ui.visible[class*="very thin"].right.sidebar ~ .pusher {
344
- transform: translate3d(-@veryThinWidth, 0, 0);
350
+ & when (@variationSidebarVeryThin) {
351
+ .ui.visible[class*="very thin"].right.sidebar ~ .fixed,
352
+ .ui.visible[class*="very thin"].right.sidebar ~ .pusher {
353
+ transform: translate3d(-@veryThinWidth, 0, 0);
354
+ }
345
355
  }
346
356
  }
347
357
 
@@ -351,9 +361,11 @@ body.pushable > .pusher {
351
361
  transform: translate3d(-@wideWidth, 0, 0);
352
362
  }
353
363
 
354
- .ui.visible[class*="very wide"].right.sidebar ~ .fixed,
355
- .ui.visible[class*="very wide"].right.sidebar ~ .pusher {
356
- transform: translate3d(-@veryWideWidth, 0, 0);
364
+ & when (@variationSidebarVeryWide) {
365
+ .ui.visible[class*="very wide"].right.sidebar ~ .fixed,
366
+ .ui.visible[class*="very wide"].right.sidebar ~ .pusher {
367
+ transform: translate3d(-@veryWideWidth, 0, 0);
368
+ }
357
369
  }
358
370
  }
359
371
  }
@@ -938,7 +938,7 @@ $.fn.sticky.settings = {
938
938
 
939
939
  error : {
940
940
  container : 'Sticky element must be inside a relative container',
941
- visible : 'Element is hidden, you must call refresh after element becomes visible. Use silent setting to surpress this warning in production.',
941
+ visible : 'Element is hidden, you must call refresh after element becomes visible. Use silent setting to suppress this warning in production.',
942
942
  method : 'The method you called is not defined.',
943
943
  invalidContext : 'Context specified does not exist',
944
944
  elementSize : 'Sticky element is larger than its container, cannot create sticky.'
@@ -443,7 +443,7 @@ $.fn.toast = function(parameters) {
443
443
  has: {
444
444
  container: function() {
445
445
  module.verbose('Determining if there is already a container');
446
- return ($context.find(module.helpers.toClass(settings.position) + selector.container + (settings.horizontal ? module.helpers.toClass(className.horizontal) : '')).length > 0);
446
+ return ($context.find(module.helpers.toClass(settings.position) + selector.container + (settings.horizontal ? module.helpers.toClass(className.horizontal) : ':not('+module.helpers.toClass(className.horizontal)+')')).length > 0);
447
447
  },
448
448
  toast: function(){
449
449
  return !!module.get.toast();
@@ -458,7 +458,7 @@ $.fn.toast = function(parameters) {
458
458
 
459
459
  get: {
460
460
  container: function() {
461
- return ($context.find(module.helpers.toClass(settings.position) + selector.container)[0]);
461
+ return ($context.find(module.helpers.toClass(settings.position) + selector.container + (settings.horizontal ? module.helpers.toClass(className.horizontal) : ':not('+module.helpers.toClass(className.horizontal)+')'))[0]);
462
462
  },
463
463
  toastBox: function() {
464
464
  return $toastBox || null;
@@ -103,6 +103,11 @@
103
103
  bottom: @toastContainerDistance;
104
104
  }
105
105
  }
106
+ &.centered when (@variationToastCentered) {
107
+ transform: translate(-50%, -50%);
108
+ top: 50%;
109
+ left: 50%;
110
+ }
106
111
  & .visible.toast-box,
107
112
  .animating.toast-box,
108
113
  .toast-box {
@@ -1097,7 +1097,7 @@ $.fn.transition.settings = {
1097
1097
 
1098
1098
  // possible errors
1099
1099
  error: {
1100
- noAnimation : 'Element is no longer attached to DOM. Unable to animate. Use silent setting to surpress this warning in production.',
1100
+ noAnimation : 'Element is no longer attached to DOM. Unable to animate. Use silent setting to suppress this warning in production.',
1101
1101
  repeated : 'That animation is already occurring, cancelling repeated animation',
1102
1102
  method : 'The method you called is not defined',
1103
1103
  support : 'This browser does not support CSS animations'