fomantic-ui 2.8.8-beta.99 → 2.9.0-beta.100

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 (244) hide show
  1. package/.all-contributorsrc +188 -3
  2. package/.github/dependabot.yml +17 -0
  3. package/.github/workflows/ci.yml +1 -1
  4. package/CHANGELOG.md +139 -0
  5. package/CONTRIBUTING.md +1 -1
  6. package/CONTRIBUTORS.md +71 -37
  7. package/README.md +3 -3
  8. package/dist/components/accordion.css +50 -6
  9. package/dist/components/accordion.js +1 -1
  10. package/dist/components/accordion.min.css +2 -2
  11. package/dist/components/accordion.min.js +3 -3
  12. package/dist/components/ad.css +1 -1
  13. package/dist/components/ad.min.css +1 -1
  14. package/dist/components/api.js +26 -24
  15. package/dist/components/api.min.js +4 -4
  16. package/dist/components/breadcrumb.css +1 -1
  17. package/dist/components/breadcrumb.min.css +1 -1
  18. package/dist/components/button.css +81 -81
  19. package/dist/components/button.min.css +2 -2
  20. package/dist/components/calendar.css +1 -1
  21. package/dist/components/calendar.js +110 -11
  22. package/dist/components/calendar.min.css +1 -1
  23. package/dist/components/calendar.min.js +4 -4
  24. package/dist/components/card.css +26 -19
  25. package/dist/components/card.min.css +2 -2
  26. package/dist/components/checkbox.css +6 -4
  27. package/dist/components/checkbox.js +17 -11
  28. package/dist/components/checkbox.min.css +2 -2
  29. package/dist/components/checkbox.min.js +4 -4
  30. package/dist/components/comment.css +11 -11
  31. package/dist/components/comment.min.css +1 -1
  32. package/dist/components/container.css +3 -4
  33. package/dist/components/container.min.css +2 -2
  34. package/dist/components/dimmer.css +28 -14
  35. package/dist/components/dimmer.js +15 -12
  36. package/dist/components/dimmer.min.css +2 -2
  37. package/dist/components/dimmer.min.js +4 -4
  38. package/dist/components/divider.css +1 -1
  39. package/dist/components/divider.min.css +1 -1
  40. package/dist/components/dropdown.css +54 -7
  41. package/dist/components/dropdown.js +107 -77
  42. package/dist/components/dropdown.min.css +2 -2
  43. package/dist/components/dropdown.min.js +4 -4
  44. package/dist/components/embed.css +1 -1
  45. package/dist/components/embed.js +1 -1
  46. package/dist/components/embed.min.css +1 -1
  47. package/dist/components/embed.min.js +3 -3
  48. package/dist/components/emoji.css +2 -2
  49. package/dist/components/feed.css +28 -28
  50. package/dist/components/feed.min.css +2 -2
  51. package/dist/components/flag.css +731 -625
  52. package/dist/components/flag.min.css +2 -2
  53. package/dist/components/form.css +119 -54
  54. package/dist/components/form.js +51 -70
  55. package/dist/components/form.min.css +2 -2
  56. package/dist/components/form.min.js +4 -4
  57. package/dist/components/grid.css +13 -11
  58. package/dist/components/grid.min.css +2 -2
  59. package/dist/components/header.css +3 -3
  60. package/dist/components/header.min.css +2 -2
  61. package/dist/components/icon.css +86 -5
  62. package/dist/components/icon.min.css +2 -2
  63. package/dist/components/image.css +1 -1
  64. package/dist/components/image.min.css +1 -1
  65. package/dist/components/input.css +17 -2
  66. package/dist/components/input.min.css +2 -2
  67. package/dist/components/item.css +13 -13
  68. package/dist/components/item.min.css +1 -1
  69. package/dist/components/label.css +1 -1
  70. package/dist/components/label.min.css +1 -1
  71. package/dist/components/list.css +1 -1
  72. package/dist/components/list.min.css +1 -1
  73. package/dist/components/loader.css +39 -37
  74. package/dist/components/loader.min.css +2 -2
  75. package/dist/components/menu.css +37 -11
  76. package/dist/components/menu.min.css +1 -1
  77. package/dist/components/message.css +78 -34
  78. package/dist/components/message.min.css +2 -2
  79. package/dist/components/modal.css +7 -5
  80. package/dist/components/modal.js +237 -41
  81. package/dist/components/modal.min.css +2 -2
  82. package/dist/components/modal.min.js +4 -4
  83. package/dist/components/nag.css +168 -16
  84. package/dist/components/nag.js +131 -65
  85. package/dist/components/nag.min.css +2 -2
  86. package/dist/components/nag.min.js +4 -4
  87. package/dist/components/placeholder.css +1 -1
  88. package/dist/components/placeholder.min.css +1 -1
  89. package/dist/components/popup.css +5 -3
  90. package/dist/components/popup.js +5 -5
  91. package/dist/components/popup.min.css +2 -2
  92. package/dist/components/popup.min.js +4 -4
  93. package/dist/components/progress.css +2 -1
  94. package/dist/components/progress.js +3 -3
  95. package/dist/components/progress.min.css +2 -2
  96. package/dist/components/progress.min.js +4 -4
  97. package/dist/components/rail.css +1 -1
  98. package/dist/components/rail.min.css +1 -1
  99. package/dist/components/rating.css +8 -62
  100. package/dist/components/rating.js +1 -1
  101. package/dist/components/rating.min.css +2 -2
  102. package/dist/components/rating.min.js +3 -3
  103. package/dist/components/reset.css +2 -3
  104. package/dist/components/reset.min.css +2 -2
  105. package/dist/components/reveal.css +1 -1
  106. package/dist/components/reveal.min.css +1 -1
  107. package/dist/components/search.css +1 -1
  108. package/dist/components/search.js +15 -13
  109. package/dist/components/search.min.css +1 -1
  110. package/dist/components/search.min.js +4 -4
  111. package/dist/components/segment.css +36 -6
  112. package/dist/components/segment.min.css +2 -2
  113. package/dist/components/shape.css +1 -1
  114. package/dist/components/shape.js +1 -1
  115. package/dist/components/shape.min.css +1 -1
  116. package/dist/components/shape.min.js +3 -3
  117. package/dist/components/sidebar.css +4 -2
  118. package/dist/components/sidebar.js +1 -1
  119. package/dist/components/sidebar.min.css +2 -2
  120. package/dist/components/sidebar.min.js +3 -3
  121. package/dist/components/site.css +61 -39
  122. package/dist/components/site.js +1 -1
  123. package/dist/components/site.min.css +2 -2
  124. package/dist/components/site.min.js +3 -3
  125. package/dist/components/slider.js +1 -1
  126. package/dist/components/slider.min.js +3 -3
  127. package/dist/components/state.js +1 -1
  128. package/dist/components/state.min.js +3 -3
  129. package/dist/components/statistic.css +1 -1
  130. package/dist/components/statistic.min.css +1 -1
  131. package/dist/components/step.css +4 -4
  132. package/dist/components/step.min.css +2 -2
  133. package/dist/components/sticky.css +1 -2
  134. package/dist/components/sticky.js +2 -2
  135. package/dist/components/sticky.min.css +2 -2
  136. package/dist/components/sticky.min.js +4 -4
  137. package/dist/components/tab.css +1 -1
  138. package/dist/components/tab.js +1 -1
  139. package/dist/components/tab.min.css +1 -1
  140. package/dist/components/tab.min.js +3 -3
  141. package/dist/components/table.css +5 -3
  142. package/dist/components/table.min.css +2 -2
  143. package/dist/components/text.css +1 -1
  144. package/dist/components/text.min.css +1 -1
  145. package/dist/components/toast.css +123 -10
  146. package/dist/components/toast.js +54 -27
  147. package/dist/components/toast.min.css +2 -2
  148. package/dist/components/toast.min.js +4 -4
  149. package/dist/components/transition.css +1 -1
  150. package/dist/components/transition.js +2 -2
  151. package/dist/components/transition.min.css +1 -1
  152. package/dist/components/transition.min.js +4 -4
  153. package/dist/components/visibility.js +2 -2
  154. package/dist/components/visibility.min.js +3 -3
  155. package/dist/semantic.css +2004 -1124
  156. package/dist/semantic.js +789 -377
  157. package/dist/semantic.min.css +4 -397
  158. package/dist/semantic.min.js +4 -4
  159. package/examples/assets/library/iframe-content.js +8 -8
  160. package/examples/assets/library/iframe.js +3 -3
  161. package/package.json +5 -5
  162. package/scripts/nightly-version.js +23 -8
  163. package/src/definitions/behaviors/api.js +25 -23
  164. package/src/definitions/behaviors/form.js +50 -69
  165. package/src/definitions/behaviors/visibility.js +1 -1
  166. package/src/definitions/collections/form.less +200 -142
  167. package/src/definitions/collections/grid.less +717 -681
  168. package/src/definitions/collections/menu.less +177 -128
  169. package/src/definitions/collections/message.less +77 -44
  170. package/src/definitions/collections/table.less +255 -242
  171. package/src/definitions/elements/button.less +360 -347
  172. package/src/definitions/elements/container.less +16 -8
  173. package/src/definitions/elements/emoji.less +15 -9
  174. package/src/definitions/elements/flag.less +7 -17
  175. package/src/definitions/elements/header.less +44 -37
  176. package/src/definitions/elements/icon.less +121 -43
  177. package/src/definitions/elements/input.less +23 -7
  178. package/src/definitions/elements/label.less +92 -91
  179. package/src/definitions/elements/list.less +55 -45
  180. package/src/definitions/elements/loader.less +38 -35
  181. package/src/definitions/elements/segment.less +51 -23
  182. package/src/definitions/elements/step.less +52 -48
  183. package/src/definitions/elements/text.less +17 -15
  184. package/src/definitions/globals/site.less +23 -2
  185. package/src/definitions/modules/accordion.less +55 -5
  186. package/src/definitions/modules/calendar.js +109 -10
  187. package/src/definitions/modules/checkbox.js +16 -10
  188. package/src/definitions/modules/checkbox.less +44 -186
  189. package/src/definitions/modules/dimmer.js +14 -11
  190. package/src/definitions/modules/dimmer.less +21 -8
  191. package/src/definitions/modules/dropdown.js +106 -76
  192. package/src/definitions/modules/dropdown.less +148 -89
  193. package/src/definitions/modules/modal.js +236 -40
  194. package/src/definitions/modules/modal.less +6 -4
  195. package/src/definitions/modules/nag.js +130 -64
  196. package/src/definitions/modules/nag.less +105 -40
  197. package/src/definitions/modules/popup.js +4 -4
  198. package/src/definitions/modules/popup.less +5 -1
  199. package/src/definitions/modules/progress.js +2 -2
  200. package/src/definitions/modules/progress.less +20 -18
  201. package/src/definitions/modules/rating.less +50 -42
  202. package/src/definitions/modules/search.js +14 -12
  203. package/src/definitions/modules/search.less +32 -16
  204. package/src/definitions/modules/sidebar.less +33 -19
  205. package/src/definitions/modules/slider.less +43 -42
  206. package/src/definitions/modules/sticky.js +1 -1
  207. package/src/definitions/modules/toast.js +53 -26
  208. package/src/definitions/modules/toast.less +139 -25
  209. package/src/definitions/modules/transition.js +1 -1
  210. package/src/definitions/views/card.less +402 -361
  211. package/src/definitions/views/comment.less +92 -81
  212. package/src/definitions/views/feed.less +164 -144
  213. package/src/definitions/views/item.less +249 -196
  214. package/src/definitions/views/statistic.less +90 -88
  215. package/src/themes/default/collections/grid.variables +8 -8
  216. package/src/themes/default/collections/menu.variables +6 -0
  217. package/src/themes/default/collections/table.variables +1 -1
  218. package/src/themes/default/elements/button.variables +2 -1
  219. package/src/themes/default/elements/flag.overrides +1635 -986
  220. package/src/themes/default/elements/flag.variables +7 -5
  221. package/src/themes/default/elements/header.variables +2 -2
  222. package/src/themes/default/elements/icon.overrides +35 -28
  223. package/src/themes/default/elements/icon.variables +4 -0
  224. package/src/themes/default/elements/list.variables +1 -1
  225. package/src/themes/default/elements/step.overrides +1 -1
  226. package/src/themes/default/globals/colors.less +7 -7
  227. package/src/themes/default/globals/site.variables +19 -9
  228. package/src/themes/default/globals/variation.variables +119 -6
  229. package/src/themes/default/modules/accordion.variables +15 -0
  230. package/src/themes/default/modules/checkbox.variables +16 -16
  231. package/src/themes/default/modules/dimmer.variables +1 -1
  232. package/src/themes/default/modules/dropdown.variables +12 -5
  233. package/src/themes/default/modules/modal.variables +2 -2
  234. package/src/themes/default/modules/nag.variables +3 -1
  235. package/src/themes/default/modules/toast.variables +5 -1
  236. package/src/themes/default/views/card.variables +1 -1
  237. package/src/themes/famfamfam/elements/flag.overrides +1026 -0
  238. package/src/themes/famfamfam/elements/flag.variables +13 -0
  239. package/tasks/admin/components/init.js +2 -2
  240. package/tasks/admin/distributions/init.js +2 -2
  241. package/tasks/build/css.js +6 -1
  242. package/tasks/config/project/release.js +2 -2
  243. package/tasks/config/tasks.js +13 -9
  244. package/test/helpers/sinon.js +1 -1
@@ -55,126 +55,6 @@
55
55
  }
56
56
 
57
57
 
58
- & when (@variationCheckboxBox) {
59
- /*--------------
60
- Box
61
- ---------------*/
62
-
63
- /* .box selector is deprecated and will be removed in v3 */
64
- .ui.checkbox .box {
65
- &:extend(.ui.checkbox label all);
66
- }
67
- .ui.checkbox + .box {
68
- &:extend(.ui.checkbox + label all);
69
- }
70
- .ui.checkbox input:focus ~ .box {
71
- &:extend(.ui.checkbox input:focus ~ label all);
72
- }
73
- .ui.checkbox input:checked ~ .box {
74
- &:extend(.ui.checkbox input:checked ~ label all);
75
- }
76
- & when (@variationCheckboxIndeterminate) {
77
- .ui.checkbox input:not([type=radio]):indeterminate ~ .box {
78
- &:extend(.ui.checkbox input:not([type=radio]):indeterminate ~ label all);
79
- }
80
- .ui.checkbox input:not([type=radio]):indeterminate:focus ~ .box {
81
- &:extend(.ui.checkbox input:not([type=radio]):indeterminate:focus ~ label all);
82
- }
83
- }
84
- .ui.checkbox input:checked:focus ~ .box {
85
- &:extend(.ui.checkbox input:checked:focus ~ label all);
86
- }
87
- & when (@variationCheckboxDisabled) {
88
- .ui.disabled.checkbox .box {
89
- &:extend(.ui.disabled.checkbox label all);
90
- }
91
-
92
- .ui.checkbox input[disabled] ~ .box {
93
- &:extend(.ui.checkbox input[disabled] ~ label all);
94
- }
95
- }
96
- & when (@variationCheckboxRadio) {
97
- .ui.radio.checkbox .box {
98
- &:extend(.ui.radio.checkbox label all);
99
- }
100
- .ui.radio.checkbox input:focus ~ .box {
101
- &:extend(.ui.radio.checkbox input:focus ~ label all);
102
- }
103
- .ui.radio.checkbox input:indeterminate ~ .box {
104
- &:extend(.ui.radio.checkbox input:indeterminate ~ label all);
105
- }
106
- .ui.radio.checkbox input:checked ~ .box {
107
- &:extend(.ui.radio.checkbox input:checked ~ label all);
108
- }
109
- .ui.radio.checkbox input:focus:checked ~ .box {
110
- &:extend(.ui.radio.checkbox input:focus:checked ~ label all);
111
- }
112
- }
113
- & when (@variationCheckboxSlider) {
114
- .ui.slider.checkbox .box {
115
- &:extend(.ui.slider.checkbox label all);
116
- }
117
- .ui.slider.checkbox input:focus ~ .box {
118
- &:extend(.ui.slider.checkbox input:focus ~ label all);
119
- }
120
- .ui.slider.checkbox input:checked ~ .box {
121
- &:extend(.ui.slider.checkbox input:checked ~ label all);
122
- }
123
- .ui.slider.checkbox input:focus:checked ~ .box {
124
- &:extend(.ui.slider.checkbox input:focus:checked ~ label all);
125
- }
126
- }
127
- & when (@variationCheckboxToggle) {
128
- .ui.toggle.checkbox .box {
129
- &:extend(.ui.toggle.checkbox label all);
130
- }
131
- .ui.toggle.checkbox input ~ .box {
132
- &:extend(.ui.toggle.checkbox input ~ label all);
133
- }
134
- .ui.toggle.checkbox input:focus ~ .box {
135
- &:extend(.ui.toggle.checkbox input:focus ~ label all);
136
- }
137
- .ui.toggle.checkbox input:checked ~ .box {
138
- &:extend(.ui.toggle.checkbox input:checked ~ label all);
139
- }
140
- .ui.toggle.checkbox input:focus:checked ~ .box {
141
- &:extend(.ui.toggle.checkbox input:focus:checked ~ label all);
142
- }
143
- }
144
- & when (@variationCheckboxFitted) {
145
- .ui.fitted.checkbox .box {
146
- &:extend(.ui.fitted.checkbox label all);
147
- }
148
- }
149
- & when (@variationCheckboxInverted) {
150
- .ui.inverted.checkbox .box {
151
- &:extend(.ui.inverted.checkbox label all);
152
- }
153
- & when (@variationCheckboxSlider) {
154
- .ui.inverted.slider.checkbox .box {
155
- &:extend(.ui.inverted.slider.checkbox label all);
156
- }
157
- .ui.inverted.slider.checkbox input:checked ~ .box {
158
- &:extend(.ui.inverted.slider.checkbox input:checked ~ label all);
159
- }
160
- .ui.inverted.slider.checkbox input:focus:checked ~ .box {
161
- &:extend(.ui.inverted.slider.checkbox input:focus:checked ~ label all);
162
- }
163
- }
164
- & when (@variationCheckboxToggle) {
165
- .ui.inverted.toggle.checkbox .box {
166
- &:extend(.ui.inverted.toggle.checkbox label all);
167
- }
168
- .ui.inverted.toggle.checkbox input:checked ~ .box {
169
- &:extend(.ui.inverted.toggle.checkbox input:checked ~ label all);
170
- }
171
- .ui.inverted.toggle.checkbox input:focus:checked ~ .box {
172
- &:extend(.ui.inverted.toggle.checkbox input:focus:checked ~ label all);
173
- }
174
- }
175
- }
176
- }
177
-
178
58
  .ui.checkbox label {
179
59
  cursor: auto;
180
60
  position: relative;
@@ -349,14 +229,16 @@
349
229
  color: @checkboxActiveFocusCheckColor;
350
230
  }
351
231
 
232
+ & when (@variationCheckboxReadonly) {
233
+ /*--------------
234
+ Read-Only
235
+ ---------------*/
352
236
 
353
- /*--------------
354
- Read-Only
355
- ---------------*/
356
-
357
- .ui.read-only.checkbox,
358
- .ui.read-only.checkbox label {
359
- cursor: default;
237
+ .ui.read-only.checkbox,
238
+ .ui.read-only.checkbox label {
239
+ cursor: default;
240
+ pointer-events: none;
241
+ }
360
242
  }
361
243
 
362
244
  & when (@variationCheckboxDisabled) {
@@ -366,7 +248,7 @@
366
248
 
367
249
  .ui.disabled.checkbox label,
368
250
  .ui.checkbox input[disabled] ~ label {
369
- cursor: default !important;
251
+ cursor: default;
370
252
  opacity: @disabledCheckboxOpacity;
371
253
  color: @disabledCheckboxLabelColor;
372
254
  pointer-events: none;
@@ -384,6 +266,7 @@
384
266
  }
385
267
 
386
268
  /* Selectable Label */
269
+ .ui.checkbox input + label[for],
387
270
  .ui.checkbox input.hidden + label {
388
271
  cursor: pointer;
389
272
  user-select: none;
@@ -794,69 +677,44 @@
794
677
  /*--------------------
795
678
  Size
796
679
  ---------------------*/
680
+ & when not (@variationCheckboxSizes = false) {
681
+ each(@variationCheckboxSizes, {
682
+ @raw: @{value}Raw;
683
+ @size: @{value}CheckboxSize;
684
+ @circleScale: @{value}CheckboxCircleScale;
685
+ @circleLeft: @{value}CheckboxCircleLeft;
797
686
 
798
- each(@variationCheckboxSizes, {
799
- @raw: @{value}Raw;
800
- @size: @{value}CheckboxSize;
801
- @circleScale: @{value}CheckboxCircleScale;
802
- @circleLeft: @{value}CheckboxCircleLeft;
803
-
804
- .ui.@{value}.checkbox {
805
- font-size: @@size;
806
- }
807
-
808
- & when (@@raw > 1) {
809
- .ui.@{value}.form .checkbox,
810
687
  .ui.@{value}.checkbox {
811
- &:not(.slider):not(.toggle):not(.radio) {
812
- &
813
- label:after,
814
- label:before {
815
- transform: scale(@@raw);
816
- transform-origin:left;
688
+ font-size: @@size;
689
+ }
690
+
691
+ & when (@@raw > 1) {
692
+ .ui.@{value}.form .checkbox,
693
+ .ui.@{value}.checkbox {
694
+ &:not(.slider):not(.toggle):not(.radio) {
695
+ &
696
+ label:after,
697
+ label:before {
698
+ transform: scale(@@raw);
699
+ transform-origin: left;
700
+ }
817
701
  }
818
- }
819
- &.radio when (@variationCheckboxRadio) {
820
- &
821
- label:before {
822
- transform: scale(@@raw);
823
- transform-origin:left;
824
- }
825
- &
826
- label:after {
827
- transform:scale(@@circleScale);
828
- transform-origin:left;
829
- left: @@circleLeft;
702
+ &.radio when (@variationCheckboxRadio) {
703
+ &
704
+ label:before {
705
+ transform: scale(@@raw);
706
+ transform-origin: left;
707
+ }
708
+ &
709
+ label:after {
710
+ transform: scale(@@circleScale);
711
+ transform-origin: left;
712
+ left: @@circleLeft;
713
+ }
830
714
  }
831
715
  }
832
716
  }
833
- }
834
- & when (@@raw > 1) and (@variationCheckboxBox) {
835
- .ui.@{value}.form .checkbox,
836
- .ui.@{value}.checkbox {
837
- &:not(.slider):not(.toggle):not(.radio) {
838
- &
839
- .box:after,
840
- .box:before {
841
- transform: scale(@@raw);
842
- transform-origin:left;
843
- }
844
- }
845
- &.radio when (@variationCheckboxRadio) {
846
- &
847
- .box:before {
848
- transform: scale(@@raw);
849
- transform-origin:left;
850
- }
851
- &
852
- .box:after {
853
- transform:scale(@@circleScale);
854
- transform-origin:left;
855
- left: @@circleLeft;
856
- }
857
- }
858
- }
859
- }
860
- })
717
+ })
718
+ }
861
719
 
862
720
  .loadUIOverrides();
@@ -155,7 +155,7 @@ $.fn.dimmer = function(parameters) {
155
155
 
156
156
  event: {
157
157
  click: function(event) {
158
- module.verbose('Determining if event occured on dimmer', event);
158
+ module.verbose('Determining if event occurred on dimmer', event);
159
159
  if( $dimmer.find(event.target).length === 0 || $(event.target).is(selector.content) ) {
160
160
  module.hide();
161
161
  event.stopImmediatePropagation();
@@ -255,7 +255,7 @@ $.fn.dimmer = function(parameters) {
255
255
  displayType : settings.useFlex
256
256
  ? 'flex'
257
257
  : 'block',
258
- animation : settings.transition + ' in',
258
+ animation : (settings.transition.showMethod || settings.transition) + ' in',
259
259
  queue : false,
260
260
  duration : module.get.duration(),
261
261
  useFailSafe : true,
@@ -264,6 +264,7 @@ $.fn.dimmer = function(parameters) {
264
264
  },
265
265
  onComplete : function() {
266
266
  module.set.active();
267
+ settings.onVisible.call($dimmer);
267
268
  callback();
268
269
  }
269
270
  })
@@ -285,6 +286,7 @@ $.fn.dimmer = function(parameters) {
285
286
  .fadeTo(module.get.duration(), settings.opacity, function() {
286
287
  $dimmer.removeAttr('style');
287
288
  module.set.active();
289
+ settings.onVisible.call($dimmer);
288
290
  callback();
289
291
  })
290
292
  ;
@@ -302,7 +304,7 @@ $.fn.dimmer = function(parameters) {
302
304
  displayType : settings.useFlex
303
305
  ? 'flex'
304
306
  : 'block',
305
- animation : settings.transition + ' out',
307
+ animation : (settings.transition.hideMethod || settings.transition) + ' out',
306
308
  queue : false,
307
309
  duration : module.get.duration(),
308
310
  useFailSafe : true,
@@ -310,6 +312,7 @@ $.fn.dimmer = function(parameters) {
310
312
  module.remove.dimmed();
311
313
  module.remove.variation();
312
314
  module.remove.active();
315
+ settings.onHidden.call($dimmer);
313
316
  callback();
314
317
  }
315
318
  })
@@ -323,6 +326,7 @@ $.fn.dimmer = function(parameters) {
323
326
  module.remove.dimmed();
324
327
  module.remove.active();
325
328
  $dimmer.removeAttr('style');
329
+ settings.onHidden.call($dimmer);
326
330
  callback();
327
331
  })
328
332
  ;
@@ -335,15 +339,12 @@ $.fn.dimmer = function(parameters) {
335
339
  return $dimmer;
336
340
  },
337
341
  duration: function() {
338
- if(typeof settings.duration == 'object') {
339
- if( module.is.active() ) {
340
- return settings.duration.hide;
341
- }
342
- else {
343
- return settings.duration.show;
344
- }
342
+ if( module.is.active() ) {
343
+ return settings.transition.hideDuration || settings.duration.hide || settings.duration;
344
+ }
345
+ else {
346
+ return settings.transition.showDuration || settings.duration.show || settings.duration;
345
347
  }
346
- return settings.duration;
347
348
  }
348
349
  },
349
350
 
@@ -707,6 +708,8 @@ $.fn.dimmer.settings = {
707
708
  onChange : function(){},
708
709
  onShow : function(){},
709
710
  onHide : function(){},
711
+ onVisible : function(){},
712
+ onHidden : function(){},
710
713
 
711
714
  error : {
712
715
  method : 'The method you called is not defined.'
@@ -68,7 +68,7 @@
68
68
  }
69
69
 
70
70
  /* Scrollbars */
71
- .addScrollbars() when (@useCustomScrollbars) {
71
+ & when (@useCustomScrollbars) {
72
72
  .ui.dimmer:not(.inverted)::-webkit-scrollbar-track {
73
73
  background: @trackInvertedBackground;
74
74
  }
@@ -81,8 +81,17 @@
81
81
  .ui.dimmer:not(.inverted)::-webkit-scrollbar-thumb:hover {
82
82
  background: @thumbInvertedHoverBackground;
83
83
  }
84
+ .ui.dimmer:not(.inverted) {
85
+ /* IE11 */
86
+ scrollbar-face-color: @thumbInvertedBackgroundHex;
87
+ scrollbar-shadow-color: @thumbInvertedBackgroundHex;
88
+ scrollbar-track-color: @trackInvertedBackgroundHex;
89
+ scrollbar-arrow-color: @trackInvertedBackgroundHex;
90
+
91
+ /* firefox : first color thumb, second track */
92
+ scrollbar-color: @thumbInvertedBackground @trackInvertedBackground;
93
+ }
84
94
  }
85
- .addScrollbars();
86
95
 
87
96
  /*******************************
88
97
  States
@@ -171,17 +180,21 @@ body.dimmable > .dimmer {
171
180
  Blurring
172
181
  ---------------*/
173
182
 
174
- .blurring.dimmable > :not(.dimmer) {
175
- filter: @blurredStartFilter;
176
- transition: @blurredTransition;
177
- }
178
- .blurring.dimmed.dimmable > :not(.dimmer):not(.popup) {
179
- filter: @blurredEndFilter;
183
+ @supports (not (-webkit-backdrop-filter: none)) and (not (backdrop-filter: none)) {
184
+ .blurring.dimmable > :not(.dimmer) {
185
+ filter: @blurredStartFilter;
186
+ transition: @blurredTransition;
187
+ }
188
+ .blurring.dimmed.dimmable > :not(.dimmer):not(.popup) {
189
+ filter: @blurredEndFilter;
190
+ }
180
191
  }
181
192
 
182
193
  /* Dimmer Color */
183
194
  .blurring.dimmable > .dimmer {
184
195
  background: @blurredBackgroundColor;
196
+ -webkit-backdrop-filter: @blurredEndFilter;
197
+ backdrop-filter: @blurredEndFilter;
185
198
  }
186
199
  .blurring.dimmable > .inverted.dimmer {
187
200
  background: @blurredInvertedBackgroundColor;