fomantic-ui 2.9.0-beta.2 → 2.9.0-beta.202

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 (243) hide show
  1. package/.all-contributorsrc +197 -3
  2. package/CONTRIBUTING.md +1 -1
  3. package/CONTRIBUTORS.md +74 -37
  4. package/README.md +1 -1
  5. package/dist/components/accordion.css +162 -26
  6. package/dist/components/accordion.js +1 -1
  7. package/dist/components/accordion.min.css +2 -2
  8. package/dist/components/accordion.min.js +2 -2
  9. package/dist/components/ad.css +1 -1
  10. package/dist/components/ad.min.css +1 -1
  11. package/dist/components/api.js +30 -26
  12. package/dist/components/api.min.js +3 -3
  13. package/dist/components/breadcrumb.css +1 -1
  14. package/dist/components/breadcrumb.min.css +1 -1
  15. package/dist/components/button.css +81 -81
  16. package/dist/components/button.min.css +2 -2
  17. package/dist/components/calendar.css +1 -1
  18. package/dist/components/calendar.js +110 -11
  19. package/dist/components/calendar.min.css +1 -1
  20. package/dist/components/calendar.min.js +3 -3
  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 +17 -11
  25. package/dist/components/checkbox.min.css +2 -2
  26. package/dist/components/checkbox.min.js +3 -3
  27. package/dist/components/comment.css +11 -11
  28. package/dist/components/comment.min.css +1 -1
  29. package/dist/components/container.css +77 -1
  30. package/dist/components/container.min.css +2 -2
  31. package/dist/components/dimmer.css +28 -14
  32. package/dist/components/dimmer.js +7 -1
  33. package/dist/components/dimmer.min.css +2 -2
  34. package/dist/components/dimmer.min.js +3 -3
  35. package/dist/components/divider.css +1 -1
  36. package/dist/components/divider.min.css +1 -1
  37. package/dist/components/dropdown.css +30 -7
  38. package/dist/components/dropdown.js +59 -34
  39. package/dist/components/dropdown.min.css +2 -2
  40. package/dist/components/dropdown.min.js +3 -3
  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 +2 -2
  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 +106 -55
  51. package/dist/components/form.js +25 -23
  52. package/dist/components/form.min.css +2 -2
  53. package/dist/components/form.min.js +3 -3
  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 +734 -17
  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 +41 -41
  75. package/dist/components/message.min.css +2 -2
  76. package/dist/components/modal.css +13 -1
  77. package/dist/components/modal.js +121 -46
  78. package/dist/components/modal.min.css +2 -2
  79. package/dist/components/modal.min.js +3 -3
  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 +2 -2
  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 +2 -2
  90. package/dist/components/progress.css +1 -1
  91. package/dist/components/progress.js +6 -3
  92. package/dist/components/progress.min.css +1 -1
  93. package/dist/components/progress.min.js +3 -3
  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 +2 -2
  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 +2 -2
  108. package/dist/components/segment.css +90 -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 +2 -2
  114. package/dist/components/sidebar.css +4 -2
  115. package/dist/components/sidebar.js +1 -1
  116. package/dist/components/sidebar.min.css +2 -2
  117. package/dist/components/sidebar.min.js +2 -2
  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 +2 -2
  122. package/dist/components/slider.js +1 -1
  123. package/dist/components/slider.min.js +2 -2
  124. package/dist/components/state.js +1 -1
  125. package/dist/components/state.min.js +2 -2
  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 +3 -3
  134. package/dist/components/tab.css +1 -1
  135. package/dist/components/tab.js +23 -5
  136. package/dist/components/tab.min.css +1 -1
  137. package/dist/components/tab.min.js +3 -3
  138. package/dist/components/table.css +1168 -26
  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 +45 -1
  143. package/dist/components/toast.js +56 -28
  144. package/dist/components/toast.min.css +2 -2
  145. package/dist/components/toast.min.js +3 -3
  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 +3 -3
  150. package/dist/components/visibility.js +2 -2
  151. package/dist/components/visibility.min.js +2 -2
  152. package/dist/semantic.css +4300 -1394
  153. package/dist/semantic.js +473 -207
  154. package/dist/semantic.min.css +3 -3
  155. package/dist/semantic.min.js +3 -3
  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 +29 -25
  160. package/src/definitions/behaviors/form.js +24 -22
  161. package/src/definitions/behaviors/visibility.js +1 -1
  162. package/src/definitions/collections/form.less +193 -140
  163. package/src/definitions/collections/grid.less +716 -680
  164. package/src/definitions/collections/menu.less +174 -127
  165. package/src/definitions/collections/message.less +48 -46
  166. package/src/definitions/collections/table.less +849 -262
  167. package/src/definitions/elements/button.less +360 -347
  168. package/src/definitions/elements/container.less +126 -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 +42 -35
  172. package/src/definitions/elements/icon.less +38 -31
  173. package/src/definitions/elements/input.less +256 -21
  174. package/src/definitions/elements/label.less +92 -91
  175. package/src/definitions/elements/list.less +55 -45
  176. package/src/definitions/elements/loader.less +30 -29
  177. package/src/definitions/elements/segment.less +146 -27
  178. package/src/definitions/elements/step.less +52 -48
  179. package/src/definitions/elements/text.less +17 -15
  180. package/src/definitions/globals/site.less +23 -2
  181. package/src/definitions/modules/accordion.less +175 -24
  182. package/src/definitions/modules/calendar.js +109 -10
  183. package/src/definitions/modules/checkbox.js +16 -10
  184. package/src/definitions/modules/checkbox.less +34 -178
  185. package/src/definitions/modules/dimmer.js +6 -0
  186. package/src/definitions/modules/dimmer.less +21 -8
  187. package/src/definitions/modules/dropdown.js +58 -33
  188. package/src/definitions/modules/dropdown.less +101 -69
  189. package/src/definitions/modules/modal.js +120 -45
  190. package/src/definitions/modules/modal.less +12 -0
  191. package/src/definitions/modules/nag.less +20 -19
  192. package/src/definitions/modules/popup.less +5 -1
  193. package/src/definitions/modules/progress.js +5 -2
  194. package/src/definitions/modules/progress.less +19 -18
  195. package/src/definitions/modules/rating.less +49 -42
  196. package/src/definitions/modules/search.less +32 -16
  197. package/src/definitions/modules/sidebar.less +33 -19
  198. package/src/definitions/modules/slider.less +39 -38
  199. package/src/definitions/modules/sticky.js +1 -1
  200. package/src/definitions/modules/tab.js +22 -4
  201. package/src/definitions/modules/toast.js +55 -27
  202. package/src/definitions/modules/toast.less +53 -16
  203. package/src/definitions/modules/transition.js +1 -1
  204. package/src/definitions/views/card.less +402 -361
  205. package/src/definitions/views/comment.less +92 -81
  206. package/src/definitions/views/feed.less +164 -144
  207. package/src/definitions/views/item.less +249 -196
  208. package/src/definitions/views/statistic.less +90 -88
  209. package/src/themes/bookish/elements/header.overrides +1 -1
  210. package/src/themes/chubby/elements/button.overrides +1 -1
  211. package/src/themes/chubby/elements/header.overrides +1 -1
  212. package/src/themes/default/collections/menu.variables +6 -0
  213. package/src/themes/default/collections/table.variables +52 -0
  214. package/src/themes/default/elements/button.variables +2 -1
  215. package/src/themes/default/elements/container.variables +8 -0
  216. package/src/themes/default/elements/flag.overrides +1635 -986
  217. package/src/themes/default/elements/flag.variables +7 -5
  218. package/src/themes/default/elements/icon.overrides +35 -28
  219. package/src/themes/default/elements/icon.variables +1 -0
  220. package/src/themes/default/elements/input.variables +15 -0
  221. package/src/themes/default/elements/segment.variables +8 -0
  222. package/src/themes/default/elements/step.overrides +1 -1
  223. package/src/themes/default/globals/site.variables +6 -0
  224. package/src/themes/default/globals/variation.variables +135 -6
  225. package/src/themes/default/modules/accordion.variables +49 -2
  226. package/src/themes/default/modules/checkbox.variables +5 -5
  227. package/src/themes/default/modules/dimmer.variables +1 -1
  228. package/src/themes/default/modules/dropdown.variables +1 -1
  229. package/src/themes/default/modules/modal.variables +13 -0
  230. package/src/themes/default/modules/toast.variables +3 -0
  231. package/src/themes/famfamfam/elements/flag.overrides +1026 -0
  232. package/src/themes/famfamfam/elements/flag.variables +13 -0
  233. package/src/themes/instagram/views/card.overrides +1 -1
  234. package/src/themes/material/collections/menu.overrides +1 -1
  235. package/src/themes/material/elements/button.overrides +1 -1
  236. package/src/themes/material/elements/header.overrides +1 -1
  237. package/src/themes/material/modules/dropdown.overrides +1 -1
  238. package/src/themes/material/modules/modal.overrides +1 -1
  239. package/src/themes/rtl/globals/site.overrides +1 -1
  240. package/tasks/admin/components/init.js +2 -2
  241. package/tasks/admin/distributions/init.js +2 -2
  242. package/tasks/build/css.js +6 -1
  243. package/test/helpers/sinon.js +1 -1
@@ -746,12 +746,12 @@
746
746
  return maxVal;
747
747
  }
748
748
 
749
- function getAllMeasurements(dimention) {
749
+ function getAllMeasurements(dimension) {
750
750
  return [
751
- dimention.bodyOffset(),
752
- dimention.bodyScroll(),
753
- dimention.documentElementOffset(),
754
- dimention.documentElementScroll()
751
+ dimension.bodyOffset(),
752
+ dimension.bodyScroll(),
753
+ dimension.documentElementOffset(),
754
+ dimension.documentElementScroll()
755
755
  ];
756
756
  }
757
757
 
@@ -779,7 +779,7 @@
779
779
  },
780
780
 
781
781
  offset: function() {
782
- return getHeight.bodyOffset(); //Backwards compatability
782
+ return getHeight.bodyOffset(); //Backwards compatibility
783
783
  },
784
784
 
785
785
  bodyScroll: function getBodyScrollHeight() {
@@ -1029,7 +1029,7 @@
1029
1029
  moveToAnchor: function moveToAnchorF() {
1030
1030
  inPageLinks.findTarget(getData());
1031
1031
  },
1032
- inPageLink: function inPageLinkF() {this.moveToAnchor();}, //Backward compatability
1032
+ inPageLink: function inPageLinkF() {this.moveToAnchor();}, //Backward compatibility
1033
1033
 
1034
1034
  pageInfo: function pageInfoFromParent() {
1035
1035
  var msgBody = getData();
@@ -1065,7 +1065,7 @@
1065
1065
 
1066
1066
  function isInitMsg() {
1067
1067
  //Test if this message is from a child below us. This is an ugly test, however, updating
1068
- //the message format would break backwards compatibity.
1068
+ //the message format would break backwards compatibility.
1069
1069
  return event.data.split(':')[2] in {'true':1,'false':1};
1070
1070
  }
1071
1071
 
@@ -231,7 +231,7 @@
231
231
 
232
232
  function isMessageFromMetaParent() {
233
233
  //Test if this message is from a parent above us. This is an ugly test, however, updating
234
- //the message format would break backwards compatibity.
234
+ //the message format would break backwards compatibility.
235
235
  var retCode = messageData.type in {'true':1,'false':1,'undefined':1};
236
236
 
237
237
  if (retCode) {
@@ -659,7 +659,7 @@
659
659
  function warning() {
660
660
  if (settings[id] && !settings[id].loaded && !errorShown) {
661
661
  errorShown = true;
662
- warn(id, 'IFrame has not responded within '+ settings[id].warningTimeout/1000 +' seconds. Check iFrameResizer.contentWindow.js has been loaded in iFrame. This message can be ingored if everything is working, or you can set the warningTimeout option to a higher value or zero to suppress this warning.');
662
+ warn(id, 'IFrame has not responded within '+ settings[id].warningTimeout/1000 +' seconds. Check iFrameResizer.contentWindow.js has been loaded in iFrame. This message can be ignored if everything is working, or you can set the warningTimeout option to a higher value or zero to suppress this warning.');
663
663
  }
664
664
  }
665
665
 
@@ -941,7 +941,7 @@
941
941
  }
942
942
 
943
943
  if('hidden' !== document.visibilityState) {
944
- log('document','Trigger event: Visiblity change');
944
+ log('document','Trigger event: Visibility change');
945
945
  debouce(resize,16);
946
946
  }
947
947
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "fomantic-ui",
3
- "version": "2.9.0-beta.2",
3
+ "version": "2.9.0-beta.202",
4
4
  "description": "Fomantic empowers designers and developers by creating a shared vocabulary for UI.",
5
5
  "keywords": [
6
6
  "fomantic-ui",
@@ -61,7 +61,7 @@
61
61
  "gulp-replace": "^1.0.0",
62
62
  "gulp-rtlcss": "^1.3.0",
63
63
  "gulp-uglify": "^3.0.1",
64
- "inquirer": "^6.2.1",
64
+ "inquirer": "^7.0.5",
65
65
  "map-stream": "^0.1.0",
66
66
  "mkdirp": "^0.5.1",
67
67
  "normalize-path": "^3.0.0",
@@ -74,6 +74,7 @@ $.api = $.fn.api = function(parameters) {
74
74
  url,
75
75
  data,
76
76
  requestStartTime,
77
+ originalData,
77
78
 
78
79
  // standard module
79
80
  element = this,
@@ -86,6 +87,7 @@ $.api = $.fn.api = function(parameters) {
86
87
 
87
88
  initialize: function() {
88
89
  if(!methodInvoked) {
90
+ originalData = settings.data;
89
91
  module.bind.events();
90
92
  }
91
93
  module.instantiate();
@@ -132,7 +134,7 @@ $.api = $.fn.api = function(parameters) {
132
134
  response = JSON.parse(response);
133
135
  }
134
136
  catch(e) {
135
- // isnt json string
137
+ // isn't json string
136
138
  }
137
139
  }
138
140
  return response;
@@ -148,8 +150,8 @@ $.api = $.fn.api = function(parameters) {
148
150
  module.error(error.noStorage);
149
151
  return;
150
152
  }
151
- response = sessionStorage.getItem(url);
152
- module.debug('Using cached response', url, response);
153
+ response = sessionStorage.getItem(url + module.get.normalizedData());
154
+ module.debug('Using cached response', url, settings.data, response);
153
155
  response = module.decode.json(response);
154
156
  return response;
155
157
  }
@@ -167,8 +169,8 @@ $.api = $.fn.api = function(parameters) {
167
169
  if( $.isPlainObject(response) ) {
168
170
  response = JSON.stringify(response);
169
171
  }
170
- sessionStorage.setItem(url, response);
171
- module.verbose('Storing cached response for url', url, response);
172
+ sessionStorage.setItem(url + module.get.normalizedData(), response);
173
+ module.verbose('Storing cached response for url', url, settings.data, response);
172
174
  }
173
175
  },
174
176
 
@@ -197,7 +199,7 @@ $.api = $.fn.api = function(parameters) {
197
199
 
198
200
  // Add form content
199
201
  if(settings.serializeForm) {
200
- settings.data = module.add.formData(settings.data);
202
+ settings.data = module.add.formData(originalData || settings.data);
201
203
  }
202
204
 
203
205
  // call beforesend and get any settings changes
@@ -334,10 +336,6 @@ $.api = $.fn.api = function(parameters) {
334
336
  cancelled: function() {
335
337
  return (module.cancelled || false);
336
338
  },
337
- succesful: function() {
338
- module.verbose('This behavior will be deleted due to typo. Use "was successful" instead.');
339
- return module.was.successful();
340
- },
341
339
  successful: function() {
342
340
  return (module.request && module.request.state() == 'resolved');
343
341
  },
@@ -429,25 +427,29 @@ $.api = $.fn.api = function(parameters) {
429
427
  },
430
428
  formData: function(data) {
431
429
  var
432
- canSerialize = ($.fn.serializeObject !== undefined),
433
- formData = (canSerialize)
434
- ? $form.serializeObject()
435
- : $form.serialize(),
430
+ formData = {},
436
431
  hasOtherData
437
432
  ;
438
- data = data || settings.data;
433
+ data = data || originalData || settings.data;
439
434
  hasOtherData = $.isPlainObject(data);
440
435
 
441
- if(hasOtherData) {
442
- if(canSerialize) {
443
- module.debug('Extending existing data with form data', data, formData);
444
- data = $.extend(true, {}, data, formData);
445
- }
446
- else {
447
- module.error(error.missingSerialize);
448
- module.debug('Cant extend data. Replacing data with form data', data, formData);
449
- data = formData;
436
+ $.each($form.serializeArray(), function (i, element) {
437
+ var node = formData[element.name];
438
+
439
+ if ('undefined' !== typeof node && node !== null) {
440
+ if (Array.isArray(node)) {
441
+ node.push(element.value);
442
+ } else {
443
+ formData[element.name] = [node, element.value];
444
+ }
445
+ } else {
446
+ formData[element.name] = element.value;
450
447
  }
448
+ });
449
+
450
+ if(hasOtherData) {
451
+ module.debug('Extending existing data with form data', data, formData);
452
+ data = $.extend(true, {}, data, formData);
451
453
  }
452
454
  else {
453
455
  module.debug('Adding form data', formData);
@@ -698,6 +700,9 @@ $.api = $.fn.api = function(parameters) {
698
700
  },
699
701
 
700
702
  get: {
703
+ normalizedData: function(){
704
+ return typeof settings.data === "string" ? settings.data : JSON.stringify(settings.data, Object.keys(settings.data).sort());
705
+ },
701
706
  responseFromXHR: function(xhr) {
702
707
  return $.isPlainObject(xhr)
703
708
  ? (module.is.expectingJSON())
@@ -1141,7 +1146,6 @@ $.api.settings = {
1141
1146
  legacyParameters : 'You are using legacy API success callback names',
1142
1147
  method : 'The method you called is not defined',
1143
1148
  missingAction : 'API action used but no url was defined',
1144
- missingSerialize : 'jquery-serialize-object is required to add form data to an existing data object',
1145
1149
  missingURL : 'No URL specified for api event',
1146
1150
  noReturnedValue : 'The beforeSend callback must return a settings object, beforeSend ignored.',
1147
1151
  noStorage : 'Caching responses locally requires session storage',
@@ -419,6 +419,7 @@ $.fn.form = function(parameters) {
419
419
  $field.one('keyup' + eventNamespace, module.event.field.keyup);
420
420
  module.submit();
421
421
  module.debug('Enter pressed on input submitting form');
422
+ event.preventDefault();
422
423
  }
423
424
  keyHeldDown = true;
424
425
  }
@@ -543,7 +544,7 @@ $.fn.form = function(parameters) {
543
544
  parts,
544
545
  suffixPrompt
545
546
  ;
546
- if(ancillary && ancillary.indexOf('..') >= 0) {
547
+ if(ancillary && ['integer', 'decimal', 'number'].indexOf(ruleName) >= 0 && ancillary.indexOf('..') >= 0) {
547
548
  parts = ancillary.split('..', 2);
548
549
  if(!rule.prompt) {
549
550
  suffixPrompt = (
@@ -886,13 +887,13 @@ $.fn.form = function(parameters) {
886
887
  }
887
888
  if(settings.inline) {
888
889
  if(!promptExists) {
889
- $prompt = settings.templates.prompt(errors, className.label);
890
+ $prompt = $('<div/>').addClass(className.label);
890
891
  $prompt
891
892
  .appendTo($fieldGroup)
892
893
  ;
893
894
  }
894
895
  $prompt
895
- .html(errors[0])
896
+ .html(settings.templates.prompt(errors))
896
897
  ;
897
898
  if(!promptExists) {
898
899
  if(settings.transition && module.can.useElement('transition') && $module.transition('is supported')) {
@@ -1085,12 +1086,15 @@ $.fn.form = function(parameters) {
1085
1086
  }
1086
1087
  else if(isCheckbox) {
1087
1088
  module.verbose('Setting checkbox value', value, $element);
1088
- if(value === true || value === 1) {
1089
+ if(value === true || value === 1 || value === 'on') {
1089
1090
  $element.checkbox('check');
1090
1091
  }
1091
1092
  else {
1092
1093
  $element.checkbox('uncheck');
1093
1094
  }
1095
+ if(typeof value === 'string') {
1096
+ $field.val(value);
1097
+ }
1094
1098
  }
1095
1099
  else if(isDropdown) {
1096
1100
  module.verbose('Setting dropdown value', value, $element);
@@ -1203,7 +1207,7 @@ $.fn.form = function(parameters) {
1203
1207
  if(event && $module.data('moduleApi') !== undefined) {
1204
1208
  event.stopImmediatePropagation();
1205
1209
  }
1206
- if(settings.errorFocus) {
1210
+ if(settings.errorFocus && ignoreCallbacks !== true) {
1207
1211
  var focusElement, hasTabIndex = true;
1208
1212
  if (typeof settings.errorFocus === 'string') {
1209
1213
  focusElement = $(settings.errorFocus);
@@ -1526,7 +1530,7 @@ $.fn.form.settings = {
1526
1530
 
1527
1531
  autoCheckRequired : false,
1528
1532
  preventLeaving : false,
1529
- errorFocus : false,
1533
+ errorFocus : true,
1530
1534
  dateHandling : 'date', // 'date', 'input', 'formatter'
1531
1535
 
1532
1536
  onValid : function() {},
@@ -1582,7 +1586,6 @@ $.fn.form.settings = {
1582
1586
  doesntContain : '{name} cannot contain "{ruleValue}"',
1583
1587
  doesntContainExactly : '{name} cannot contain exactly "{ruleValue}"',
1584
1588
  minLength : '{name} must be at least {ruleValue} characters',
1585
- length : '{name} must be at least {ruleValue} characters',
1586
1589
  exactLength : '{name} must be exactly {ruleValue} characters',
1587
1590
  maxLength : '{name} cannot be longer than {ruleValue} characters',
1588
1591
  match : '{name} must match {ruleValue} field',
@@ -1596,7 +1599,7 @@ $.fn.form.settings = {
1596
1599
  selector : {
1597
1600
  checkbox : 'input[type="checkbox"], input[type="radio"]',
1598
1601
  clear : '.clear',
1599
- field : 'input:not(.search):not([type="file"]), textarea, select',
1602
+ field : 'input:not(.search):not([type="file"]):not([type="reset"]):not([type="button"]):not([type="submit"]), textarea, select',
1600
1603
  group : '.field',
1601
1604
  input : 'input:not([type="file"])',
1602
1605
  message : '.error.message',
@@ -1637,15 +1640,22 @@ $.fn.form.settings = {
1637
1640
  html += '<li>' + value + '</li>';
1638
1641
  });
1639
1642
  html += '</ul>';
1640
- return $(html);
1643
+ return html;
1641
1644
  },
1642
1645
 
1643
- // template that produces label
1644
- prompt: function(errors, labelClasses) {
1645
- return $('<div/>')
1646
- .addClass(labelClasses)
1647
- .html(errors[0])
1646
+ // template that produces label content
1647
+ prompt: function(errors) {
1648
+ if(errors.length === 1){
1649
+ return errors[0];
1650
+ }
1651
+ var
1652
+ html = '<ul class="ui list">'
1648
1653
  ;
1654
+ $.each(errors, function(index, value) {
1655
+ html += '<li>' + value + '</li>';
1656
+ });
1657
+ html += '</ul>';
1658
+ return html;
1649
1659
  }
1650
1660
  },
1651
1661
 
@@ -1855,14 +1865,6 @@ $.fn.form.settings = {
1855
1865
  ;
1856
1866
  },
1857
1867
 
1858
- // see rls notes for 2.0.6 (this is a duplicate of minLength)
1859
- length: function(value, requiredLength) {
1860
- return (value !== undefined)
1861
- ? (value.length >= requiredLength)
1862
- : false
1863
- ;
1864
- },
1865
-
1866
1868
  // is exactly length
1867
1869
  exactLength: function(value, requiredLength) {
1868
1870
  return (value !== undefined)
@@ -1237,7 +1237,7 @@ $.fn.visibility.settings = {
1237
1237
  // callback should only occur one time
1238
1238
  once : true,
1239
1239
 
1240
- // callback should fire continuously whe evaluates to true
1240
+ // callback should fire continuously when evaluates to true
1241
1241
  continuous : false,
1242
1242
 
1243
1243
  // offset to use with scroll top