fomantic-ui-sass 2.8.2 → 2.8.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (33) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/fonts/semantic-ui/brand-icons.eot +0 -0
  3. data/app/assets/fonts/semantic-ui/brand-icons.svg +836 -636
  4. data/app/assets/fonts/semantic-ui/brand-icons.ttf +0 -0
  5. data/app/assets/fonts/semantic-ui/brand-icons.woff +0 -0
  6. data/app/assets/fonts/semantic-ui/brand-icons.woff2 +0 -0
  7. data/app/assets/fonts/semantic-ui/icons.eot +0 -0
  8. data/app/assets/fonts/semantic-ui/icons.svg +492 -341
  9. data/app/assets/fonts/semantic-ui/icons.ttf +0 -0
  10. data/app/assets/fonts/semantic-ui/icons.woff +0 -0
  11. data/app/assets/fonts/semantic-ui/icons.woff2 +0 -0
  12. data/app/assets/fonts/semantic-ui/outline-icons.eot +0 -0
  13. data/app/assets/fonts/semantic-ui/outline-icons.svg +14 -10
  14. data/app/assets/fonts/semantic-ui/outline-icons.ttf +0 -0
  15. data/app/assets/fonts/semantic-ui/outline-icons.woff +0 -0
  16. data/app/assets/fonts/semantic-ui/outline-icons.woff2 +0 -0
  17. data/app/assets/javascripts/semantic-ui/checkbox.js +1 -1
  18. data/app/assets/javascripts/semantic-ui/dropdown.js +37 -40
  19. data/app/assets/javascripts/semantic-ui/form.js +19 -9
  20. data/app/assets/javascripts/semantic-ui/popup.js +2 -2
  21. data/app/assets/javascripts/semantic-ui/search.js +2 -2
  22. data/app/assets/javascripts/semantic-ui/slider.js +6 -6
  23. data/app/assets/javascripts/semantic-ui/toast.js +2 -2
  24. data/app/assets/stylesheets/semantic-ui/collections/_form.scss +31 -0
  25. data/app/assets/stylesheets/semantic-ui/collections/_table.scss +16 -6
  26. data/app/assets/stylesheets/semantic-ui/elements/_icon.scss +36 -4
  27. data/app/assets/stylesheets/semantic-ui/elements/_input.scss +20 -20
  28. data/app/assets/stylesheets/semantic-ui/modules/_dimmer.scss +9 -9
  29. data/app/assets/stylesheets/semantic-ui/modules/_dropdown.scss +1 -0
  30. data/app/assets/stylesheets/semantic-ui/modules/_modal.scss +3 -0
  31. data/app/assets/stylesheets/semantic-ui/modules/_popup.scss +34 -7
  32. data/lib/fomantic/ui/sass/version.rb +2 -2
  33. metadata +1 -1
@@ -1,8 +1,12 @@
1
1
  <?xml version="1.0" standalone="no"?>
2
+ <!--
3
+ Font Awesome Free 5.11.2 by @fontawesome - https://fontawesome.com
4
+ License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
5
+ -->
2
6
  <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
3
7
  <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1">
4
8
  <metadata>
5
- Created by FontForge 20190112 at Mon Jan 28 12:50:36 2019
9
+ Created by FontForge 20190801 at Mon Sep 23 12:53:49 2019
6
10
  By Robert Madole
7
11
  Copyright (c) Font Awesome
8
12
  </metadata>
@@ -18,7 +22,7 @@ Copyright (c) Font Awesome
18
22
  descent="-64"
19
23
  bbox="-0.0663408 -64.0662 640.01 448.1"
20
24
  underline-thickness="25"
21
- underline-position="-51"
25
+ underline-position="-50"
22
26
  unicode-range="U+0020-F5C8"
23
27
  />
24
28
  <missing-glyph />
@@ -54,7 +58,7 @@ d="M336 448c26.5098 0 48 -21.4902 48 -48v-464l-192 112l-192 -112v464c0 26.5098 2
54
58
  d="M464 384c26.5098 0 48 -21.4902 48 -48v-288c0 -26.5098 -21.4902 -48 -48 -48h-416c-26.5098 0 -48 21.4902 -48 48v288c0 26.5098 21.4902 48 48 48h416zM458 48c3.31152 0 6 2.68848 6 6v276c0 3.31152 -2.68848 6 -6 6h-404c-3.31152 0 -6 -2.68848 -6 -6v-276
55
59
  c0 -3.31152 2.68848 -6 6 -6h404zM128 296c22.0908 0 40 -17.9092 40 -40s-17.9092 -40 -40 -40s-40 17.9092 -40 40s17.9092 40 40 40zM96 96v48l39.5137 39.5146c4.6875 4.68652 12.2852 4.68652 16.9717 0l39.5146 -39.5146l119.514 119.515
56
60
  c4.6875 4.68652 12.2852 4.68652 16.9717 0l87.5146 -87.5146v-80h-320z" />
57
- <glyph glyph-name="edit" unicode="&#xf044;" horiz-adv-x="575"
61
+ <glyph glyph-name="edit" unicode="&#xf044;" horiz-adv-x="576"
58
62
  d="M402.3 103.1l32 32c5 5 13.7002 1.5 13.7002 -5.69922v-145.4c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h273.5c7.09961 0 10.7002 -8.59961 5.7002 -13.7002l-32 -32c-1.5 -1.5 -3.5 -2.2998 -5.7002 -2.2998h-241.5v-352h352
59
63
  v113.5c0 2.09961 0.799805 4.09961 2.2998 5.59961zM558.9 304.9l-262.601 -262.601l-90.3994 -10c-26.2002 -2.89941 -48.5 19.2002 -45.6006 45.6006l10 90.3994l262.601 262.601c22.8994 22.8994 59.8994 22.8994 82.6992 0l43.2002 -43.2002
60
64
  c22.9004 -22.9004 22.9004 -60 0.100586 -82.7998zM460.1 274l-58.0996 58.0996l-185.8 -185.899l-7.2998 -65.2998l65.2998 7.2998zM524.9 353.7l-43.2002 43.2002c-4.10059 4.09961 -10.7998 4.09961 -14.7998 0l-30.9004 -30.9004l58.0996 -58.0996l30.9004 30.8994
@@ -97,7 +101,7 @@ l20.6006 -21.7998l-10.6006 -28.0996c-5.5 -14.5 -12.5996 -28.1006 -19.8994 -40.20
97
101
  <glyph glyph-name="folder" unicode="&#xf07b;"
98
102
  d="M464 320c26.5098 0 48 -21.4902 48 -48v-224c0 -26.5098 -21.4902 -48 -48 -48h-416c-26.5098 0 -48 21.4902 -48 48v288c0 26.5098 21.4902 48 48 48h146.74c8.49023 0 16.6299 -3.37012 22.6299 -9.37012l54.6299 -54.6299h192zM464 48v224h-198.62
99
103
  c-8.49023 0 -16.6299 3.37012 -22.6299 9.37012l-54.6299 54.6299h-140.12v-288h416z" />
100
- <glyph glyph-name="folder-open" unicode="&#xf07c;" horiz-adv-x="575"
104
+ <glyph glyph-name="folder-open" unicode="&#xf07c;" horiz-adv-x="576"
101
105
  d="M527.9 224c37.6992 0 60.6992 -41.5 40.6992 -73.4004l-79.8994 -128c-8.7998 -14.0996 -24.2002 -22.5996 -40.7002 -22.5996h-400c-26.5 0 -48 21.5 -48 48v288c0 26.5 21.5 48 48 48h160l64 -64h160c26.5 0 48 -21.5 48 -48v-48h47.9004zM48 330v-233.4l62.9004 104.2
102
106
  c8.69922 14.4004 24.2998 23.2002 41.0996 23.2002h280v42c0 3.2998 -2.7002 6 -6 6h-173.9l-64 64h-134.1c-3.2998 0 -6 -2.7002 -6 -6zM448 48l80 128h-378.8l-77.2002 -128h376z" />
103
107
  <glyph glyph-name="chart-bar" unicode="&#xf080;"
@@ -113,7 +117,7 @@ c0.400391 0.399414 22.4004 24.1992 37.7002 54.8994c-27.5 27.2002 -44 61.2002 -44
113
117
  l19.7998 -4.5c16 -3.69922 32.5 -5.59961 49 -5.59961c86.7002 0 160 51.2998 160 112s-73.2998 112 -160 112s-160 -51.2998 -160 -112c0 -28.7002 16.2002 -50.5996 29.7002 -64l24.7998 -24.5l-15.5 -31.0996c-2.59961 -5.10059 -5.2998 -10.1006 -8 -14.8008
114
118
  c14.5996 5.10059 29 12.3008 43.0996 21.4004zM498.3 96c13.5 13.4004 29.7002 35.2998 29.7002 64c0 49.2002 -48.2998 91.5 -112.7 106c0.299805 -3.2998 0.700195 -6.59961 0.700195 -10c0 -80.9004 -78 -147.5 -179.3 -158.3
115
119
  c29.0996 -29.6006 77.2998 -49.7002 131.3 -49.7002c16.5 0 33 1.90039 49 5.59961l19.9004 4.60059l17.0996 -11.1006c14.0996 -9.09961 28.5 -16.2998 43.0996 -21.3994c-2.69922 4.7002 -5.39941 9.7002 -8 14.7998l-15.5 31.0996z" />
116
- <glyph glyph-name="star-half" unicode="&#xf089;" horiz-adv-x="308"
120
+ <glyph glyph-name="star-half" unicode="&#xf089;" horiz-adv-x="576"
117
121
  d="M288 62.7002v-54.2998l-130.7 -68.6006c-23.3994 -12.2998 -50.8994 7.60059 -46.3994 33.7002l25 145.5l-105.7 103c-19 18.5 -8.5 50.7998 17.7002 54.5996l146.1 21.2002l65.2998 132.4c5.90039 11.8994 17.2998 17.7998 28.7002 17.7998v-68.0996l-62.2002 -126
118
122
  l-139 -20.2002l100.601 -98l-23.7002 -138.4z" />
119
123
  <glyph glyph-name="lemon" unicode="&#xf094;"
@@ -137,7 +141,7 @@ c8.58398 0 16.373 -3.04785 22.1201 -8h2.67871c6.96387 0 14.8623 6.19336 30.1816
137
141
  v-0.0839844c0 -6.21777 -0.974609 -16.2148 -2.17578 -22.3154h86.1768zM428.8 192c18.9756 0 35.2002 16.2246 35.2002 35.2002c0 18.7002 -16.7754 35.2002 -35.2002 35.2002h-158.399c0 17.3242 26.3994 35.1992 26.3994 70.3994c0 26.4004 -20.625 35.2002 -44 35.2002
138
142
  c-8.79395 0 -20.4443 -32.7119 -34.9258 -56.0996c-9.07422 -14.5752 -19.5244 -27.2256 -30.7988 -39.875c-16.1094 -18.374 -33.8359 -36.6328 -59.0752 -39.5967v-176.753c42.79 -3.7627 74.5088 -39.6758 120 -39.6758h21.2988
139
143
  c40.5244 0 57.124 22.1973 50.6006 61.3252c14.6113 8.00098 24.1514 33.9785 12.9248 53.625c19.3652 18.2246 17.7871 46.3809 4.9502 61.0498h91.0254zM88 64c0 13.2549 -10.7451 24 -24 24s-24 -10.7451 -24 -24s10.7451 -24 24 -24s24 10.7451 24 24z" />
140
- <glyph glyph-name="hand-point-left" unicode="&#xf0a5;" horiz-adv-x="511"
144
+ <glyph glyph-name="hand-point-left" unicode="&#xf0a5;"
141
145
  d="M0 227.2c0 45.0986 38.1006 83.2002 83.2002 83.2002h86.1758c-1.3623 6.91016 -2.17578 14.374 -2.17578 22.3994c0 47.9141 35.0723 83.2002 92 83.2002c45.3135 0 57.002 -48.5371 75.7061 -78.7852c7.73438 -12.4121 16.9951 -23.3154 25.8506 -33.2529
142
146
  l0.130859 -0.145508l0.128906 -0.148438c15.3213 -17.4746 23.2197 -23.668 30.1836 -23.668h2.67871c5.74707 4.95215 13.5361 8 22.1201 8h64c17.6729 0 32 -12.8936 32 -28.7998v-230.4c0 -15.9062 -14.3271 -28.7998 -32 -28.7998h-64
143
147
  c-8.58398 0 -16.373 3.04785 -22.1201 8h-2.67871c-28.6885 0 -67.1367 -40 -127.2 -40h-21.2988c-62.542 0 -98.8008 38.6582 -99.9404 91.1445c-12.4814 17.8135 -18.4922 40.7852 -15.9844 62.791c-2.96094 5.8125 -6.51367 15.6973 -7.92969 22.0645h-35.6465
@@ -261,14 +265,14 @@ h-104c-13.2998 0 -24 10.7002 -24 24v104h-160v-416z" />
261
265
  d="M288 200v-28c0 -6.59961 -5.40039 -12 -12 -12h-168c-6.59961 0 -12 5.40039 -12 12v28c0 6.59961 5.40039 12 12 12h168c6.59961 0 12 -5.40039 12 -12zM276 128c6.59961 0 12 -5.40039 12 -12v-28c0 -6.59961 -5.40039 -12 -12 -12h-168c-6.59961 0 -12 5.40039 -12 12
262
266
  v28c0 6.59961 5.40039 12 12 12h168zM384 316.1v-332.1c0 -26.5 -21.5 -48 -48 -48h-288c-26.5 0 -48 21.5 -48 48v416c0 26.5 21.5 48 48 48h204.1c12.7002 0 24.9004 -5.09961 33.9004 -14.0996l83.9004 -83.9004c9 -8.90039 14.0996 -21.2002 14.0996 -33.9004z
263
267
  M256 396.1v-76.0996h76.0996zM336 -16v288h-104c-13.2998 0 -24 10.7002 -24 24v104h-160v-416h288z" />
264
- <glyph glyph-name="thumbs-up" unicode="&#xf164;" horiz-adv-x="480"
268
+ <glyph glyph-name="thumbs-up" unicode="&#xf164;"
265
269
  d="M466.27 161.31c4.6748 -22.6465 0.864258 -44.5371 -8.98926 -62.9893c2.95898 -23.8682 -4.02148 -48.5654 -17.3398 -66.9902c-0.954102 -55.9072 -35.8232 -95.3301 -112.94 -95.3301c-7 0 -15 0.00976562 -22.2197 0.00976562
266
270
  c-102.742 0 -133.293 38.9395 -177.803 39.9404c-3.56934 -13.7764 -16.085 -23.9502 -30.9775 -23.9502h-64c-17.6729 0 -32 14.3271 -32 32v240c0 17.6729 14.3271 32 32 32h98.7598c19.1455 16.9531 46.0137 60.6533 68.7598 83.4004
267
271
  c13.667 13.667 10.1533 108.6 71.7607 108.6c57.5801 0 95.2695 -31.9355 95.2695 -104.73c0 -18.4092 -3.92969 -33.7295 -8.84961 -46.5391h36.4795c48.6025 0 85.8203 -41.5654 85.8203 -85.5801c0 -19.1504 -4.95996 -34.9902 -13.7305 -49.8408zM404.52 107.48
268
272
  c21.5811 20.3838 18.6992 51.0645 5.21094 65.6191c9.44922 0 22.3594 18.9102 22.2695 37.8105c-0.0898438 18.9102 -16.71 37.8203 -37.8203 37.8203h-103.989c0 37.8193 28.3594 55.3691 28.3594 94.5391c0 23.75 0 56.7305 -47.2695 56.7305
269
273
  c-18.9102 -18.9102 -9.45996 -66.1797 -37.8203 -94.54c-26.5596 -26.5703 -66.1797 -97.46 -94.54 -97.46h-10.9199v-186.17c53.6113 0 100.001 -37.8203 171.64 -37.8203h37.8203c35.5117 0 60.8203 17.1201 53.1201 65.9004
270
274
  c15.2002 8.16016 26.5 36.4395 13.9395 57.5703zM88 16c0 13.2549 -10.7451 24 -24 24s-24 -10.7451 -24 -24s10.7451 -24 24 -24s24 10.7451 24 24z" />
271
- <glyph glyph-name="thumbs-down" unicode="&#xf165;" horiz-adv-x="480"
275
+ <glyph glyph-name="thumbs-down" unicode="&#xf165;"
272
276
  d="M466.27 222.69c8.77051 -14.8506 13.7305 -30.6904 13.7305 -49.8408c0 -44.0146 -37.2178 -85.5801 -85.8203 -85.5801h-36.4795c4.91992 -12.8096 8.84961 -28.1299 8.84961 -46.5391c0 -72.7949 -37.6895 -104.73 -95.2695 -104.73
273
277
  c-61.6074 0 -58.0938 94.9326 -71.7607 108.6c-22.7461 22.7471 -49.6133 66.4473 -68.7598 83.4004h-7.05176c-5.5332 -9.56152 -15.8662 -16 -27.708 -16h-64c-17.6729 0 -32 14.3271 -32 32v240c0 17.6729 14.3271 32 32 32h64c8.11328 0 15.5146 -3.02539 21.1553 -8
274
278
  h10.8447c40.9971 0 73.1953 39.9902 176.78 39.9902c7.21973 0 15.2197 0.00976562 22.2197 0.00976562c77.1172 0 111.986 -39.4229 112.94 -95.3301c13.3184 -18.4248 20.2979 -43.1221 17.3398 -66.9902c9.85352 -18.4521 13.6641 -40.3428 8.98926 -62.9893zM64 152
@@ -282,7 +286,7 @@ c-11.0996 7.5 -17.7998 20 -17.7998 33.5s6.59961 26 17.7998 33.5996l59.7998 40.5l
282
286
  l40.4004 -59.8994l70.8994 13.6992c13 2.60059 26.6006 -1.59961 36.2002 -11.0996c9.5 -9.59961 13.7002 -23.2002 11.0996 -36.4004l-13.6992 -71zM381.3 140.5l76.7998 52.0996l-76.7998 52l17.6006 91.1006l-91 -17.6006l-51.9004 76.9004l-51.7998 -76.7998
283
287
  l-91 17.5996l17.5996 -91.2002l-76.7998 -52l76.7998 -52l-17.5996 -91.1992l90.8994 17.5996l51.9004 -77l51.9004 76.9004l91 -17.6006zM256 296c57.2998 0 104 -46.7002 104 -104s-46.7002 -104 -104 -104s-104 46.7002 -104 104s46.7002 104 104 104zM256 136
284
288
  c30.9004 0 56 25.0996 56 56s-25.0996 56 -56 56s-56 -25.0996 -56 -56s25.0996 -56 56 -56z" />
285
- <glyph glyph-name="moon" unicode="&#xf186;" horiz-adv-x="511"
289
+ <glyph glyph-name="moon" unicode="&#xf186;"
286
290
  d="M279.135 -64c-141.424 0 -256 114.64 -256 256c0 141.425 114.641 256 256 256c13.0068 -0.00195312 33.9443 -1.91797 46.7354 -4.27734c44.0205 -8.13086 53.7666 -66.8691 15.0215 -88.9189c-41.374 -23.5439 -67.4336 -67.4121 -67.4336 -115.836
287
291
  c0 -83.5234 75.9238 -146.475 158.272 -130.792c43.6904 8.32129 74.5186 -42.5693 46.248 -77.4004c-47.8613 -58.9717 -120.088 -94.7754 -198.844 -94.7754zM279.135 400c-114.875 0 -208 -93.125 -208 -208s93.125 -208 208 -208
288
292
  c65.2314 0 123.439 30.0361 161.575 77.0244c-111.611 -21.2568 -215.252 64.0957 -215.252 177.943c0 67.5127 36.9326 126.392 91.6934 157.555c-12.3271 2.27637 -25.0312 3.47754 -38.0166 3.47754z" />
@@ -730,7 +734,7 @@ c-3.69922 0 -7 2.60059 -7.7998 6.2002c-0.899414 3.7998 1.10059 7.7002 4.7002 9.2
730
734
  c12.9004 5.5 20.7002 13.5 20.7002 21.5s-7.7998 16 -20.7998 21.5l-16.9004 7.19922c-3.59961 1.5 -5.59961 5.40039 -4.7002 9.2002c0.799805 3.7998 4.40039 6.60059 8.2002 6.2002c42.7002 -2.5 71.5 -24.7998 71.5 -44zM328 296
731
735
  c23.7998 0 52.7002 -29.2998 55.7998 -71.4004c0.299805 -3.7998 -2 -7.19922 -5.59961 -8.2998c-3.10059 -1 -7.2002 0 -9.2998 3.7002l-9.5 17c-7.7002 13.7002 -19.2002 21.5996 -31.5 21.5996c-12.3008 0 -23.8008 -7.89941 -31.5 -21.5996l-9.5 -17
732
736
  c-1.80078 -3.2002 -5.80078 -4.7002 -9.30078 -3.7002c-3.59961 1.10059 -5.89941 4.60059 -5.59961 8.2998c3.2998 42.1006 32.2002 71.4004 56 71.4004z" />
733
- <glyph glyph-name="kiss-wink-heart" unicode="&#xf598;" horiz-adv-x="503"
737
+ <glyph glyph-name="kiss-wink-heart" unicode="&#xf598;" horiz-adv-x="504"
734
738
  d="M304 139.5c0 -13 -13.4004 -27.2998 -35.0996 -36.4004c21.7998 -8.69922 35.1992 -23 35.1992 -36c0 -19.1992 -28.6992 -41.5 -71.5 -44h-0.5c-3.69922 0 -7 2.60059 -7.7998 6.2002c-0.899414 3.7998 1.10059 7.7002 4.7002 9.2002l17 7.2002
735
739
  c12.9004 5.5 20.7002 13.5 20.7002 21.5s-7.7998 16 -20.7998 21.5l-16.9004 7.2002c-6 2.59961 -5.7002 12.3994 0 14.7998l17 7.2002c12.9004 5.5 20.7002 13.5 20.7002 21.5s-7.7998 16 -20.7998 21.5l-16.9004 7.19922c-3.59961 1.5 -5.59961 5.40039 -4.7002 9.2002
736
740
  c0.799805 3.7998 4.40039 6.60059 8.2002 6.2002c42.7002 -2.5 71.5 -24.7998 71.5 -44zM374.5 223c-14.7998 13.2002 -46.2002 13.2002 -61 0l-9.5 -8.5c-2.5 -2.2998 -7.90039 -4.7002 -13.7002 -1.59961c-4.39941 2.39941 -6.89941 7.39941 -6.09961 12.3994
@@ -175,7 +175,7 @@ $.fn.checkbox = function(parameters) {
175
175
  },
176
176
 
177
177
  preventDefaultOnInputTarget: function() {
178
- if(typeof event !== 'undefined' && $(event.target).is(selector.input)) {
178
+ if(typeof event !== 'undefined' && event !== null && $(event.target).is(selector.input)) {
179
179
  module.verbose('Preventing default check action after manual check action');
180
180
  event.preventDefault();
181
181
  }
@@ -31,6 +31,10 @@ $.fn.dropdown = function(parameters) {
31
31
  moduleSelector = $allModules.selector || '',
32
32
 
33
33
  hasTouch = ('ontouchstart' in document.documentElement),
34
+ clickEvent = hasTouch
35
+ ? 'touchstart'
36
+ : 'click',
37
+
34
38
  time = new Date().getTime(),
35
39
  performance = [],
36
40
 
@@ -565,27 +569,10 @@ $.fn.dropdown = function(parameters) {
565
569
 
566
570
  bind: {
567
571
  events: function() {
568
- if(hasTouch) {
569
- module.bind.touchEvents();
570
- }
571
572
  module.bind.keyboardEvents();
572
573
  module.bind.inputEvents();
573
574
  module.bind.mouseEvents();
574
575
  },
575
- touchEvents: function() {
576
- module.debug('Touch device detected binding additional touch events');
577
- if( module.is.searchSelection() ) {
578
- // do nothing special yet
579
- }
580
- else if( module.is.single() ) {
581
- $module
582
- .on('touchstart' + eventNamespace, module.event.test.toggle)
583
- ;
584
- }
585
- $menu
586
- .on('touchstart' + eventNamespace, selector.item, module.event.item.mouseenter)
587
- ;
588
- },
589
576
  keyboardEvents: function() {
590
577
  module.verbose('Binding keyboard events');
591
578
  $module
@@ -612,8 +599,8 @@ $.fn.dropdown = function(parameters) {
612
599
  module.verbose('Binding mouse events');
613
600
  if(module.is.multiple()) {
614
601
  $module
615
- .on('click' + eventNamespace, selector.label, module.event.label.click)
616
- .on('click' + eventNamespace, selector.remove, module.event.remove.click)
602
+ .on(clickEvent + eventNamespace, selector.label, module.event.label.click)
603
+ .on(clickEvent + eventNamespace, selector.remove, module.event.remove.click)
617
604
  ;
618
605
  }
619
606
  if( module.is.searchSelection() ) {
@@ -622,24 +609,24 @@ $.fn.dropdown = function(parameters) {
622
609
  .on('mouseup' + eventNamespace, module.event.mouseup)
623
610
  .on('mousedown' + eventNamespace, selector.menu, module.event.menu.mousedown)
624
611
  .on('mouseup' + eventNamespace, selector.menu, module.event.menu.mouseup)
625
- .on('click' + eventNamespace, selector.icon, module.event.icon.click)
626
- .on('click' + eventNamespace, selector.clearIcon, module.event.clearIcon.click)
612
+ .on(clickEvent + eventNamespace, selector.icon, module.event.icon.click)
613
+ .on(clickEvent + eventNamespace, selector.clearIcon, module.event.clearIcon.click)
627
614
  .on('focus' + eventNamespace, selector.search, module.event.search.focus)
628
- .on('click' + eventNamespace, selector.search, module.event.search.focus)
615
+ .on(clickEvent + eventNamespace, selector.search, module.event.search.focus)
629
616
  .on('blur' + eventNamespace, selector.search, module.event.search.blur)
630
- .on('click' + eventNamespace, selector.text, module.event.text.focus)
617
+ .on(clickEvent + eventNamespace, selector.text, module.event.text.focus)
631
618
  ;
632
619
  if(module.is.multiple()) {
633
620
  $module
634
- .on('click' + eventNamespace, module.event.click)
621
+ .on(clickEvent + eventNamespace, module.event.click)
635
622
  ;
636
623
  }
637
624
  }
638
625
  else {
639
626
  if(settings.on == 'click') {
640
627
  $module
641
- .on('click' + eventNamespace, selector.icon, module.event.icon.click)
642
- .on('click' + eventNamespace, module.event.test.toggle)
628
+ .on(clickEvent + eventNamespace, selector.icon, module.event.icon.click)
629
+ .on(clickEvent + eventNamespace, module.event.test.toggle)
643
630
  ;
644
631
  }
645
632
  else if(settings.on == 'hover') {
@@ -657,7 +644,7 @@ $.fn.dropdown = function(parameters) {
657
644
  .on('mousedown' + eventNamespace, module.event.mousedown)
658
645
  .on('mouseup' + eventNamespace, module.event.mouseup)
659
646
  .on('focus' + eventNamespace, module.event.focus)
660
- .on('click' + eventNamespace, selector.clearIcon, module.event.clearIcon.click)
647
+ .on(clickEvent + eventNamespace, selector.clearIcon, module.event.clearIcon.click)
661
648
  ;
662
649
  if(module.has.menuSearch() ) {
663
650
  $module
@@ -671,7 +658,7 @@ $.fn.dropdown = function(parameters) {
671
658
  }
672
659
  }
673
660
  $menu
674
- .on('mouseenter' + eventNamespace, selector.item, module.event.item.mouseenter)
661
+ .on((hasTouch ? 'touchstart' : 'mouseenter') + eventNamespace, selector.item, module.event.item.mouseenter)
675
662
  .on('mouseleave' + eventNamespace, selector.item, module.event.item.mouseleave)
676
663
  .on('click' + eventNamespace, selector.item, module.event.item.click)
677
664
  ;
@@ -685,7 +672,7 @@ $.fn.dropdown = function(parameters) {
685
672
  ;
686
673
  }
687
674
  $document
688
- .on('click' + elementNamespace, module.event.test.hide)
675
+ .on(clickEvent + elementNamespace, module.event.test.hide)
689
676
  ;
690
677
  }
691
678
  },
@@ -700,7 +687,7 @@ $.fn.dropdown = function(parameters) {
700
687
  ;
701
688
  }
702
689
  $document
703
- .off('click' + elementNamespace)
690
+ .off(clickEvent + elementNamespace)
704
691
  ;
705
692
  }
706
693
  },
@@ -848,6 +835,10 @@ $.fn.dropdown = function(parameters) {
848
835
  text,
849
836
  value
850
837
  ;
838
+ if($choice.hasClass(className.unfilterable)) {
839
+ results.push(this);
840
+ return true;
841
+ }
851
842
  if(settings.match === 'both' || settings.match === 'text') {
852
843
  text = module.remove.diacritics(String(module.get.choiceText($choice, false)));
853
844
  if(text.search(beginsWithRegExp) !== -1) {
@@ -1017,7 +1008,7 @@ $.fn.dropdown = function(parameters) {
1017
1008
  var
1018
1009
  value = settings.templates.deQuote(item[fields.value]),
1019
1010
  name = settings.templates.escape(
1020
- item[fields.name] || item[fields.value],
1011
+ item[fields.name] || '',
1021
1012
  settings.preserveHTML
1022
1013
  )
1023
1014
  ;
@@ -1975,6 +1966,9 @@ $.fn.dropdown = function(parameters) {
1975
1966
  value = ( $option.attr('value') !== undefined )
1976
1967
  ? $option.attr('value')
1977
1968
  : name,
1969
+ text = ( $option.data(metadata.text) !== undefined )
1970
+ ? $option.data(metadata.text)
1971
+ : name,
1978
1972
  group = $option.parent('optgroup')
1979
1973
  ;
1980
1974
  if(settings.placeholder === 'auto' && value === '') {
@@ -1992,6 +1986,7 @@ $.fn.dropdown = function(parameters) {
1992
1986
  select.values.push({
1993
1987
  name : name,
1994
1988
  value : value,
1989
+ text : text,
1995
1990
  disabled : disabled
1996
1991
  });
1997
1992
  }
@@ -2080,7 +2075,7 @@ $.fn.dropdown = function(parameters) {
2080
2075
  return;
2081
2076
  }
2082
2077
  if(isMultiple) {
2083
- if($.inArray( String(optionValue), value) !== -1) {
2078
+ if($.inArray(module.escape.htmlEntities(String(optionValue)), value) !== -1) {
2084
2079
  $selectedItem = ($selectedItem)
2085
2080
  ? $selectedItem.add($choice)
2086
2081
  : $choice
@@ -2099,7 +2094,7 @@ $.fn.dropdown = function(parameters) {
2099
2094
  optionValue = optionValue.toLowerCase();
2100
2095
  value = value.toLowerCase();
2101
2096
  }
2102
- if( String(optionValue) == String(value)) {
2097
+ if(module.escape.htmlEntities(String(optionValue)) === module.escape.htmlEntities(String(value))) {
2103
2098
  module.verbose('Found select item by value', optionValue, value);
2104
2099
  $selectedItem = $choice;
2105
2100
  return true;
@@ -3072,6 +3067,7 @@ $.fn.dropdown = function(parameters) {
3072
3067
  values = module.get.values(),
3073
3068
  newValue
3074
3069
  ;
3070
+ removedValue = module.escape.htmlEntities(removedValue);
3075
3071
  if( module.has.selectInput() ) {
3076
3072
  module.verbose('Input is <select> removing selected option', removedValue);
3077
3073
  newValue = module.remove.arrayValue(removedValue, values);
@@ -3661,10 +3657,9 @@ $.fn.dropdown = function(parameters) {
3661
3657
  },
3662
3658
  htmlEntities: function(string) {
3663
3659
  var
3664
- badChars = /[&<>"'`]/g,
3660
+ badChars = /[<>"'`]/g,
3665
3661
  shouldEscape = /[&<>"'`]/,
3666
3662
  escape = {
3667
- "&": "&amp;",
3668
3663
  "<": "&lt;",
3669
3664
  ">": "&gt;",
3670
3665
  '"': "&quot;",
@@ -3676,6 +3671,7 @@ $.fn.dropdown = function(parameters) {
3676
3671
  }
3677
3672
  ;
3678
3673
  if(shouldEscape.test(string)) {
3674
+ string = string.replace(/&(?![a-z0-9#]{1,6};)/, "&amp;");
3679
3675
  return string.replace(badChars, escapedChar);
3680
3676
  }
3681
3677
  return string;
@@ -4072,7 +4068,8 @@ $.fn.dropdown.settings = {
4072
4068
  delete : 'delete',
4073
4069
  header : 'header',
4074
4070
  divider : 'divider',
4075
- groupIcon : ''
4071
+ groupIcon : '',
4072
+ unfilterable : 'unfilterable'
4076
4073
  }
4077
4074
 
4078
4075
  };
@@ -4087,10 +4084,9 @@ $.fn.dropdown.settings.templates = {
4087
4084
  return string;
4088
4085
  }
4089
4086
  var
4090
- badChars = /[&<>"'`]/g,
4087
+ badChars = /[<>"'`]/g,
4091
4088
  shouldEscape = /[&<>"'`]/,
4092
4089
  escape = {
4093
- "&": "&amp;",
4094
4090
  "<": "&lt;",
4095
4091
  ">": "&gt;",
4096
4092
  '"': "&quot;",
@@ -4102,6 +4098,7 @@ $.fn.dropdown.settings.templates = {
4102
4098
  }
4103
4099
  ;
4104
4100
  if(shouldEscape.test(string)) {
4101
+ string = string.replace(/&(?![a-z0-9#]{1,6};)/, "&amp;");
4105
4102
  return string.replace(badChars, escapedChar);
4106
4103
  }
4107
4104
  return string;
@@ -4157,10 +4154,10 @@ $.fn.dropdown.settings.templates = {
4157
4154
  if(option[fields.icon]) {
4158
4155
  html += '<i class="'+deQuote(option[fields.icon])+' '+(option[fields.iconClass] ? deQuote(option[fields.iconClass]) : className.icon)+'"></i>';
4159
4156
  }
4160
- html += escape(option[fields.name] || option[fields.value],preserveHTML);
4157
+ html += escape(option[fields.name] || '', preserveHTML);
4161
4158
  html += '</div>';
4162
4159
  } else if (itemType === 'header') {
4163
- var groupName = escape(option[fields.name],preserveHTML),
4160
+ var groupName = escape(option[fields.name] || '', preserveHTML),
4164
4161
  groupIcon = option[fields.icon] ? deQuote(option[fields.icon]) : className.groupIcon
4165
4162
  ;
4166
4163
  if(groupName !== '' || groupIcon !== '') {
@@ -818,26 +818,36 @@ $.fn.form = function(parameters) {
818
818
  module.add.field(name, rules);
819
819
  },
820
820
  field: function(name, rules) {
821
+ // Validation should have at least a standard format
822
+ if(validation[name] === undefined || validation[name].rules === undefined) {
823
+ validation[name] = {
824
+ rules: []
825
+ };
826
+ }
821
827
  var
822
- newValidation = {}
828
+ newValidation = {
829
+ rules: []
830
+ }
823
831
  ;
824
832
  if(module.is.shorthandRules(rules)) {
825
833
  rules = Array.isArray(rules)
826
834
  ? rules
827
835
  : [rules]
828
836
  ;
829
- newValidation[name] = {
830
- rules: []
831
- };
832
- $.each(rules, function(index, rule) {
833
- newValidation[name].rules.push({ type: rule });
837
+ $.each(rules, function(_index, rule) {
838
+ newValidation.rules.push({ type: rule });
834
839
  });
835
840
  }
836
841
  else {
837
- newValidation[name] = rules;
842
+ newValidation.rules = rules.rules;
838
843
  }
839
- validation = $.extend({}, validation, newValidation);
840
- module.debug('Adding rules', newValidation, validation);
844
+ // For each new rule, check if there's not already one with the same type
845
+ $.each(newValidation.rules, function (_index, rule) {
846
+ if ($.grep(validation[name].rules, function(item){ return item.type == rule.type; }).length == 0) {
847
+ validation[name].rules.push(rule);
848
+ }
849
+ });
850
+ module.debug('Adding rules', newValidation.rules, validation);
841
851
  },
842
852
  fields: function(fields) {
843
853
  var
@@ -1496,10 +1496,9 @@ $.fn.popup.settings = {
1496
1496
  templates: {
1497
1497
  escape: function(string) {
1498
1498
  var
1499
- badChars = /[&<>"'`]/g,
1499
+ badChars = /[<>"'`]/g,
1500
1500
  shouldEscape = /[&<>"'`]/,
1501
1501
  escape = {
1502
- "&": "&amp;",
1503
1502
  "<": "&lt;",
1504
1503
  ">": "&gt;",
1505
1504
  '"': "&quot;",
@@ -1511,6 +1510,7 @@ $.fn.popup.settings = {
1511
1510
  }
1512
1511
  ;
1513
1512
  if(shouldEscape.test(string)) {
1513
+ string = string.replace(/&(?![a-z0-9#]{1,6};)/, "&amp;");
1514
1514
  return string.replace(badChars, escapedChar);
1515
1515
  }
1516
1516
  return string;
@@ -1369,10 +1369,9 @@ $.fn.search.settings = {
1369
1369
  return string;
1370
1370
  }
1371
1371
  var
1372
- badChars = /[&<>"'`]/g,
1372
+ badChars = /[<>"'`]/g,
1373
1373
  shouldEscape = /[&<>"'`]/,
1374
1374
  escape = {
1375
- "&": "&amp;",
1376
1375
  "<": "&lt;",
1377
1376
  ">": "&gt;",
1378
1377
  '"': "&quot;",
@@ -1384,6 +1383,7 @@ $.fn.search.settings = {
1384
1383
  }
1385
1384
  ;
1386
1385
  if(shouldEscape.test(string)) {
1386
+ string = string.replace(/&(?![a-z0-9#]{1,6};)/, "&amp;");
1387
1387
  return string.replace(badChars, escapedChar);
1388
1388
  }
1389
1389
  return string;
@@ -325,7 +325,7 @@ $.fn.slider = function(parameters) {
325
325
  newPos = module.determine.pos(eventPos)
326
326
  ;
327
327
  // Special handling if range mode and both thumbs have the same value
328
- if(module.is.range() && settings.preventCrossover && module.thumbVal === module.secondThumbVal) {
328
+ if(settings.preventCrossover && module.is.range() && module.thumbVal === module.secondThumbVal) {
329
329
  initialPosition = newPos;
330
330
  $currThumb = undefined;
331
331
  } else {
@@ -353,13 +353,13 @@ $.fn.slider = function(parameters) {
353
353
  thumbSmoothVal = module.determine.smoothValueFromEvent(event)
354
354
  ;
355
355
  if(!$currThumb.hasClass('second')) {
356
- if(settings.preventCrossover) {
356
+ if(settings.preventCrossover && module.is.range()) {
357
357
  value = Math.min(secondThumbVal, value);
358
358
  thumbSmoothVal = Math.min(secondThumbVal, thumbSmoothVal);
359
359
  }
360
360
  thumbVal = value;
361
361
  } else {
362
- if(settings.preventCrossover) {
362
+ if(settings.preventCrossover && module.is.range()) {
363
363
  value = Math.max(thumbVal, value);
364
364
  thumbSmoothVal = Math.max(thumbVal, thumbSmoothVal);
365
365
  }
@@ -381,7 +381,7 @@ $.fn.slider = function(parameters) {
381
381
  module.unbind.slidingEvents();
382
382
  },
383
383
  keydown: function(event, first) {
384
- if(module.is.range() && settings.preventCrossover && module.thumbVal === module.secondThumbVal) {
384
+ if(settings.preventCrossover && module.is.range() && module.thumbVal === module.secondThumbVal) {
385
385
  $currThumb = undefined;
386
386
  }
387
387
  if(module.is.focused()) {
@@ -926,12 +926,12 @@ $.fn.slider = function(parameters) {
926
926
  $currThumb = newValue <= module.get.currentThumbValue() ? $thumb : $secondThumb;
927
927
  }
928
928
  if(!$currThumb.hasClass('second')) {
929
- if(settings.preventCrossover) {
929
+ if(settings.preventCrossover && module.is.range()) {
930
930
  newValue = Math.min(module.secondThumbVal, newValue);
931
931
  }
932
932
  module.thumbVal = newValue;
933
933
  } else {
934
- if(settings.preventCrossover) {
934
+ if(settings.preventCrossover && module.is.range()) {
935
935
  newValue = Math.max(module.thumbVal, newValue);
936
936
  }
937
937
  module.secondThumbVal = newValue;