fomantic-ui 2.9.0-beta.12 → 2.9.0-beta.120

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 (218) hide show
  1. package/.all-contributorsrc +197 -3
  2. package/CONTRIBUTORS.md +74 -37
  3. package/README.md +1 -1
  4. package/dist/components/accordion.css +50 -6
  5. package/dist/components/accordion.js +1 -1
  6. package/dist/components/accordion.min.css +2 -2
  7. package/dist/components/accordion.min.js +1 -1
  8. package/dist/components/ad.css +1 -1
  9. package/dist/components/ad.min.css +1 -1
  10. package/dist/components/api.js +25 -23
  11. package/dist/components/api.min.js +2 -2
  12. package/dist/components/breadcrumb.css +1 -1
  13. package/dist/components/breadcrumb.min.css +1 -1
  14. package/dist/components/button.css +81 -81
  15. package/dist/components/button.min.css +2 -2
  16. package/dist/components/calendar.css +1 -1
  17. package/dist/components/calendar.js +6 -7
  18. package/dist/components/calendar.min.css +1 -1
  19. package/dist/components/calendar.min.js +2 -2
  20. package/dist/components/card.css +26 -19
  21. package/dist/components/card.min.css +2 -2
  22. package/dist/components/checkbox.css +2 -1
  23. package/dist/components/checkbox.js +17 -11
  24. package/dist/components/checkbox.min.css +2 -2
  25. package/dist/components/checkbox.min.js +2 -2
  26. package/dist/components/comment.css +11 -11
  27. package/dist/components/comment.min.css +1 -1
  28. package/dist/components/container.css +1 -1
  29. package/dist/components/container.min.css +1 -1
  30. package/dist/components/dimmer.css +28 -14
  31. package/dist/components/dimmer.js +1 -1
  32. package/dist/components/dimmer.min.css +2 -2
  33. package/dist/components/dimmer.min.js +1 -1
  34. package/dist/components/divider.css +1 -1
  35. package/dist/components/divider.min.css +1 -1
  36. package/dist/components/dropdown.css +28 -5
  37. package/dist/components/dropdown.js +42 -31
  38. package/dist/components/dropdown.min.css +2 -2
  39. package/dist/components/dropdown.min.js +2 -2
  40. package/dist/components/embed.css +1 -1
  41. package/dist/components/embed.js +1 -1
  42. package/dist/components/embed.min.css +1 -1
  43. package/dist/components/embed.min.js +1 -1
  44. package/dist/components/emoji.css +2 -2
  45. package/dist/components/feed.css +28 -28
  46. package/dist/components/feed.min.css +2 -2
  47. package/dist/components/flag.css +731 -625
  48. package/dist/components/flag.min.css +2 -2
  49. package/dist/components/form.css +103 -54
  50. package/dist/components/form.js +25 -23
  51. package/dist/components/form.min.css +2 -2
  52. package/dist/components/form.min.js +2 -2
  53. package/dist/components/grid.css +11 -8
  54. package/dist/components/grid.min.css +2 -2
  55. package/dist/components/header.css +1 -1
  56. package/dist/components/header.min.css +1 -1
  57. package/dist/components/icon.css +6 -1
  58. package/dist/components/icon.min.css +2 -2
  59. package/dist/components/image.css +1 -1
  60. package/dist/components/image.min.css +1 -1
  61. package/dist/components/input.css +17 -2
  62. package/dist/components/input.min.css +2 -2
  63. package/dist/components/item.css +13 -13
  64. package/dist/components/item.min.css +1 -1
  65. package/dist/components/label.css +1 -1
  66. package/dist/components/label.min.css +1 -1
  67. package/dist/components/list.css +1 -1
  68. package/dist/components/list.min.css +1 -1
  69. package/dist/components/loader.css +1 -1
  70. package/dist/components/loader.min.css +1 -1
  71. package/dist/components/menu.css +29 -5
  72. package/dist/components/menu.min.css +1 -1
  73. package/dist/components/message.css +41 -41
  74. package/dist/components/message.min.css +2 -2
  75. package/dist/components/modal.css +3 -1
  76. package/dist/components/modal.js +94 -30
  77. package/dist/components/modal.min.css +2 -2
  78. package/dist/components/modal.min.js +2 -2
  79. package/dist/components/nag.css +1 -1
  80. package/dist/components/nag.js +1 -1
  81. package/dist/components/nag.min.css +1 -1
  82. package/dist/components/nag.min.js +1 -1
  83. package/dist/components/placeholder.css +1 -1
  84. package/dist/components/placeholder.min.css +1 -1
  85. package/dist/components/popup.css +5 -3
  86. package/dist/components/popup.js +1 -1
  87. package/dist/components/popup.min.css +2 -2
  88. package/dist/components/popup.min.js +1 -1
  89. package/dist/components/progress.css +1 -1
  90. package/dist/components/progress.js +1 -1
  91. package/dist/components/progress.min.css +1 -1
  92. package/dist/components/progress.min.js +1 -1
  93. package/dist/components/rail.css +1 -1
  94. package/dist/components/rail.min.css +1 -1
  95. package/dist/components/rating.css +7 -46
  96. package/dist/components/rating.js +1 -1
  97. package/dist/components/rating.min.css +2 -2
  98. package/dist/components/rating.min.js +1 -1
  99. package/dist/components/reset.css +1 -1
  100. package/dist/components/reset.min.css +1 -1
  101. package/dist/components/reveal.css +1 -1
  102. package/dist/components/reveal.min.css +1 -1
  103. package/dist/components/search.css +1 -1
  104. package/dist/components/search.js +1 -1
  105. package/dist/components/search.min.css +1 -1
  106. package/dist/components/search.min.js +1 -1
  107. package/dist/components/segment.css +12 -6
  108. package/dist/components/segment.min.css +2 -2
  109. package/dist/components/shape.css +1 -1
  110. package/dist/components/shape.js +1 -1
  111. package/dist/components/shape.min.css +1 -1
  112. package/dist/components/shape.min.js +1 -1
  113. package/dist/components/sidebar.css +4 -2
  114. package/dist/components/sidebar.js +1 -1
  115. package/dist/components/sidebar.min.css +2 -2
  116. package/dist/components/sidebar.min.js +1 -1
  117. package/dist/components/site.css +61 -39
  118. package/dist/components/site.js +1 -1
  119. package/dist/components/site.min.css +2 -2
  120. package/dist/components/site.min.js +1 -1
  121. package/dist/components/slider.js +1 -1
  122. package/dist/components/slider.min.js +1 -1
  123. package/dist/components/state.js +1 -1
  124. package/dist/components/state.min.js +1 -1
  125. package/dist/components/statistic.css +1 -1
  126. package/dist/components/statistic.min.css +1 -1
  127. package/dist/components/step.css +4 -4
  128. package/dist/components/step.min.css +2 -2
  129. package/dist/components/sticky.css +1 -1
  130. package/dist/components/sticky.js +1 -1
  131. package/dist/components/sticky.min.css +1 -1
  132. package/dist/components/sticky.min.js +1 -1
  133. package/dist/components/tab.css +1 -1
  134. package/dist/components/tab.js +1 -1
  135. package/dist/components/tab.min.css +1 -1
  136. package/dist/components/tab.min.js +1 -1
  137. package/dist/components/table.css +980 -23
  138. package/dist/components/table.min.css +2 -2
  139. package/dist/components/text.css +1 -1
  140. package/dist/components/text.min.css +1 -1
  141. package/dist/components/toast.css +33 -1
  142. package/dist/components/toast.js +54 -27
  143. package/dist/components/toast.min.css +2 -2
  144. package/dist/components/toast.min.js +2 -2
  145. package/dist/components/transition.css +1 -1
  146. package/dist/components/transition.js +1 -1
  147. package/dist/components/transition.min.css +1 -1
  148. package/dist/components/transition.min.js +1 -1
  149. package/dist/components/visibility.js +1 -1
  150. package/dist/components/visibility.min.js +1 -1
  151. package/dist/semantic.css +2542 -1050
  152. package/dist/semantic.js +281 -170
  153. package/dist/semantic.min.css +2 -2
  154. package/dist/semantic.min.js +2 -2
  155. package/examples/assets/library/iframe-content.js +5 -5
  156. package/package.json +2 -2
  157. package/src/definitions/behaviors/api.js +24 -22
  158. package/src/definitions/behaviors/form.js +24 -22
  159. package/src/definitions/collections/form.less +190 -139
  160. package/src/definitions/collections/grid.less +716 -680
  161. package/src/definitions/collections/menu.less +173 -126
  162. package/src/definitions/collections/message.less +48 -46
  163. package/src/definitions/collections/table.less +593 -260
  164. package/src/definitions/elements/button.less +360 -347
  165. package/src/definitions/elements/container.less +16 -8
  166. package/src/definitions/elements/emoji.less +15 -9
  167. package/src/definitions/elements/flag.less +7 -17
  168. package/src/definitions/elements/header.less +42 -35
  169. package/src/definitions/elements/icon.less +38 -31
  170. package/src/definitions/elements/input.less +23 -7
  171. package/src/definitions/elements/label.less +92 -91
  172. package/src/definitions/elements/list.less +55 -45
  173. package/src/definitions/elements/loader.less +30 -29
  174. package/src/definitions/elements/segment.less +30 -22
  175. package/src/definitions/elements/step.less +52 -48
  176. package/src/definitions/elements/text.less +17 -15
  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 +5 -6
  180. package/src/definitions/modules/checkbox.js +16 -10
  181. package/src/definitions/modules/checkbox.less +34 -178
  182. package/src/definitions/modules/dimmer.less +21 -8
  183. package/src/definitions/modules/dropdown.js +41 -30
  184. package/src/definitions/modules/dropdown.less +99 -67
  185. package/src/definitions/modules/modal.js +93 -29
  186. package/src/definitions/modules/modal.less +2 -0
  187. package/src/definitions/modules/nag.less +20 -19
  188. package/src/definitions/modules/popup.less +5 -1
  189. package/src/definitions/modules/progress.less +19 -18
  190. package/src/definitions/modules/rating.less +49 -42
  191. package/src/definitions/modules/search.less +32 -16
  192. package/src/definitions/modules/sidebar.less +33 -19
  193. package/src/definitions/modules/slider.less +39 -38
  194. package/src/definitions/modules/toast.js +53 -26
  195. package/src/definitions/modules/toast.less +46 -16
  196. package/src/definitions/views/card.less +402 -361
  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 +90 -88
  201. package/src/themes/default/collections/menu.variables +6 -0
  202. package/src/themes/default/collections/table.variables +29 -0
  203. package/src/themes/default/elements/button.variables +2 -1
  204. package/src/themes/default/elements/flag.overrides +1635 -986
  205. package/src/themes/default/elements/flag.variables +7 -5
  206. package/src/themes/default/elements/icon.overrides +35 -28
  207. package/src/themes/default/elements/icon.variables +1 -0
  208. package/src/themes/default/elements/step.overrides +1 -1
  209. package/src/themes/default/globals/site.variables +6 -0
  210. package/src/themes/default/globals/variation.variables +108 -6
  211. package/src/themes/default/modules/accordion.variables +15 -0
  212. package/src/themes/default/modules/dimmer.variables +1 -1
  213. package/src/themes/default/modules/dropdown.variables +1 -1
  214. package/src/themes/default/modules/toast.variables +3 -0
  215. package/src/themes/famfamfam/elements/flag.overrides +1026 -0
  216. package/src/themes/famfamfam/elements/flag.variables +13 -0
  217. package/tasks/build/css.js +6 -1
  218. package/test/helpers/sinon.js +1 -1
@@ -42,8 +42,10 @@
42
42
  .ui.ui.ui.relaxed.grid.container {
43
43
  width: @mobileRelaxedGridWidth;
44
44
  }
45
- .ui.ui.ui.very.relaxed.grid.container {
46
- width: @mobileVeryRelaxedGridWidth;
45
+ & when (@variationContainerVeryRelaxed) {
46
+ .ui.ui.ui.very.relaxed.grid.container {
47
+ width: @mobileVeryRelaxedGridWidth;
48
+ }
47
49
  }
48
50
  }
49
51
  }
@@ -64,8 +66,10 @@
64
66
  .ui.ui.ui.relaxed.grid.container {
65
67
  width: @tabletRelaxedGridWidth;
66
68
  }
67
- .ui.ui.ui.very.relaxed.grid.container {
68
- width: @tabletVeryRelaxedGridWidth;
69
+ & when (@variationContainerVeryRelaxed) {
70
+ .ui.ui.ui.very.relaxed.grid.container {
71
+ width: @tabletVeryRelaxedGridWidth;
72
+ }
69
73
  }
70
74
  }
71
75
  }
@@ -86,8 +90,10 @@
86
90
  .ui.ui.ui.relaxed.grid.container {
87
91
  width: @computerRelaxedGridWidth;
88
92
  }
89
- .ui.ui.ui.very.relaxed.grid.container {
90
- width: @computerVeryRelaxedGridWidth;
93
+ & when (@variationContainerVeryRelaxed) {
94
+ .ui.ui.ui.very.relaxed.grid.container {
95
+ width: @computerVeryRelaxedGridWidth;
96
+ }
91
97
  }
92
98
  }
93
99
  }
@@ -108,8 +114,10 @@
108
114
  .ui.ui.ui.relaxed.grid.container {
109
115
  width: @largeMonitorRelaxedGridWidth;
110
116
  }
111
- .ui.ui.ui.very.relaxed.grid.container {
112
- width: @largeMonitorVeryRelaxedGridWidth;
117
+ & when (@variationContainerVeryRelaxed) {
118
+ .ui.ui.ui.very.relaxed.grid.container {
119
+ width: @largeMonitorVeryRelaxedGridWidth;
120
+ }
113
121
  }
114
122
  }
115
123
  }
@@ -47,8 +47,10 @@ em[data-emoji]:before {
47
47
  States
48
48
  *******************************/
49
49
 
50
- em[data-emoji].disabled {
51
- opacity: @disabledOpacity;
50
+ & when (@variationEmojiDisabled) {
51
+ em[data-emoji].disabled {
52
+ opacity: @disabledOpacity;
53
+ }
52
54
  }
53
55
 
54
56
 
@@ -56,17 +58,21 @@ em[data-emoji].disabled {
56
58
  Variations
57
59
  *******************************/
58
60
 
59
- em[data-emoji].loading:before {
60
- animation: loader @loadingDuration linear infinite;
61
+ & when (@variationEmojiLoading) {
62
+ em[data-emoji].loading:before {
63
+ animation: loader @loadingDuration linear infinite;
64
+ }
61
65
  }
62
66
 
63
67
 
64
- /*-------------------
65
- Link
66
- --------------------*/
68
+ & when (@variationEmojiLink) {
69
+ /*-------------------
70
+ Link
71
+ --------------------*/
67
72
 
68
- em[data-emoji].link:not(.disabled) {
69
- cursor: pointer;
73
+ em[data-emoji].link:not(.disabled) {
74
+ cursor: pointer;
75
+ }
70
76
  }
71
77
 
72
78
  .loadUIOverrides();
@@ -24,29 +24,19 @@
24
24
  *******************************/
25
25
 
26
26
  i.flag:not(.icon) {
27
- display: inline-block;
28
-
29
- width: @width;
30
- height: @height;
31
-
32
- line-height: @height;
33
- vertical-align: @verticalAlign;
34
- margin: 0 @margin 0 0;
35
-
36
- text-decoration: inherit;
37
-
38
27
  speak: none;
39
- -webkit-font-smoothing: antialiased;
40
28
  backface-visibility: hidden;
41
29
  }
42
30
 
43
- /* Sprite */
44
31
  i.flag:not(.icon):before {
32
+ content: '\00A0\00A0\00A0\00A0\00A0\00A0\00A0';
45
33
  display: inline-block;
46
- content: '';
47
- background: url(@spritePath) no-repeat -108px -1976px;
48
- width: @width;
49
- height: @height;
34
+ line-height: @flagLineHeight;
35
+ background-repeat: no-repeat;
36
+ background-position: center center;
37
+ & when not (@flagFileType = 'svg') {
38
+ background-size: contain;
39
+ }
50
40
  }
51
41
 
52
42
  .loadUIOverrides();
@@ -254,10 +254,12 @@
254
254
  margin-bottom: 0;
255
255
  }
256
256
  }
257
- .ui.icon.header.aligned {
258
- margin-left: auto;
259
- margin-right: auto;
260
- display: block;
257
+ & when (@variationHeaderAligned) {
258
+ .ui.icon.header.aligned {
259
+ margin-left: auto;
260
+ margin-right: auto;
261
+ display: block;
262
+ }
261
263
  }
262
264
  }
263
265
 
@@ -306,37 +308,38 @@
306
308
  /*-------------------
307
309
  Colors
308
310
  --------------------*/
309
-
310
- each(@colors, {
311
- @color: replace(@key, '@', '');
312
- @c: @colors[@@color][color];
313
- @l: @colors[@@color][light];
314
- @h: @colors[@@color][hover];
315
- @lh: @colors[@@color][lightHover];
316
-
317
- .ui.@{color}.header {
318
- color: @c;
319
- }
320
- a.ui.@{color}.header:hover {
321
- color: @h;
322
- }
323
- & when (@variationHeaderDividing) {
324
- .ui.@{color}.dividing.header {
325
- border-bottom: @dividedColoredBorderWidth solid @c;
311
+ & when not (@variationHeaderColors = false) {
312
+ each(@variationHeaderColors, {
313
+ @color: @value;
314
+ @c: @colors[@@color][color];
315
+ @l: @colors[@@color][light];
316
+ @h: @colors[@@color][hover];
317
+ @lh: @colors[@@color][lightHover];
318
+
319
+ .ui.@{color}.header {
320
+ color: @c;
326
321
  }
327
- }
328
- & when (@variationHeaderInverted) {
329
- .ui.inverted.@{color}.header.header.header {
330
- color: @l;
322
+ a.ui.@{color}.header:hover {
323
+ color: @h;
331
324
  }
332
- a.ui.inverted.@{color}.header.header.header:hover {
333
- color: @lh;
325
+ & when (@variationHeaderDividing) {
326
+ .ui.@{color}.dividing.header {
327
+ border-bottom: @dividedColoredBorderWidth solid @c;
328
+ }
334
329
  }
335
- .ui.inverted.@{color}.dividing.header {
336
- border-bottom: @dividedColoredBorderWidth solid @l;
330
+ & when (@variationHeaderInverted) {
331
+ .ui.inverted.@{color}.header.header.header {
332
+ color: @l;
333
+ }
334
+ a.ui.inverted.@{color}.header.header.header:hover {
335
+ color: @lh;
336
+ }
337
+ .ui.inverted.@{color}.dividing.header {
338
+ border-bottom: @dividedColoredBorderWidth solid @l;
339
+ }
337
340
  }
338
- }
339
- })
341
+ })
342
+ }
340
343
 
341
344
  & when (@variationHeaderAligned) {
342
345
  /*-------------------
@@ -403,8 +406,10 @@ each(@colors, {
403
406
  padding-bottom: @dividedBorderPadding;
404
407
  border-bottom: @dividedBorder;
405
408
  }
406
- .ui.dividing.header .sub.header {
407
- padding-bottom: @dividedSubHeaderPadding;
409
+ & when (@variationHeaderSub) {
410
+ .ui.dividing.header .sub.header {
411
+ padding-bottom: @dividedSubHeaderPadding;
412
+ }
408
413
  }
409
414
  .ui.dividing.header i.icon {
410
415
  margin-bottom: @dividedIconPadding;
@@ -454,8 +459,10 @@ each(@colors, {
454
459
  border: @attachedBorder;
455
460
  border-radius: 0;
456
461
  }
457
- .ui.attached.block.header {
458
- background: @blockBackground;
462
+ & when (@variationHeaderBlock) {
463
+ .ui.attached.block.header {
464
+ background: @blockBackground;
465
+ }
459
466
  }
460
467
  .ui.attached:not(.top).header {
461
468
  border-top: none;
@@ -22,16 +22,17 @@
22
22
  /*******************************
23
23
  Icon
24
24
  *******************************/
25
-
26
- @font-face {
27
- font-family: 'Icons';
28
- src: @fallbackSRC;
29
- src: @src;
30
- font-style: normal;
31
- font-weight: @normal;
32
- font-variant: normal;
33
- text-decoration: inherit;
34
- text-transform: none;
25
+ & when (@importIcons) {
26
+ @font-face {
27
+ font-family: 'Icons';
28
+ src: @fallbackSRC;
29
+ src: @src;
30
+ font-style: normal;
31
+ font-weight: @normal;
32
+ font-variant: normal;
33
+ text-decoration: inherit;
34
+ text-transform: none;
35
+ }
35
36
  }
36
37
 
37
38
  i.icon {
@@ -104,6 +105,7 @@ i.emphasized.icon:not(.disabled), i.emphasized.icons:not(.disabled) {
104
105
  Fitted
105
106
  --------------------*/
106
107
 
108
+ i.fitted.icons,
107
109
  i.fitted.icon {
108
110
  width: auto;
109
111
  margin: 0 !important;
@@ -319,30 +321,31 @@ i.emphasized.icon:not(.disabled), i.emphasized.icons:not(.disabled) {
319
321
  /*-------------------
320
322
  Colors
321
323
  --------------------*/
322
-
323
- each(@colors, {
324
- @color: replace(@key, '@', '');
325
- @c: @colors[@@color][color];
326
- @l: @colors[@@color][light];
327
-
328
- i.@{color}.icon.icon.icon.icon.icon {
329
- color: @c;
330
- }
331
- & when (@variationIconInverted) {
332
- i.inverted.@{color}.icon.icon.icon.icon.icon {
333
- color: @l;
324
+ & when not (@variationIconColors = false) {
325
+ each(@variationIconColors, {
326
+ @color: @value;
327
+ @c: @colors[@@color][color];
328
+ @l: @colors[@@color][light];
329
+
330
+ i.@{color}.icon.icon.icon.icon.icon {
331
+ color: @c;
334
332
  }
335
- & when (@variationIconBordered) or (@variationIconCircular) {
336
- i.inverted.bordered.@{color}.icon.icon.icon.icon.icon,
337
- i.inverted.circular.@{color}.icon.icon.icon.icon.icon,
338
- i.inverted.bordered.@{color}.icons,
339
- i.inverted.circular.@{color}.icons {
340
- background-color: @c;
341
- color: @white;
333
+ & when (@variationIconInverted) {
334
+ i.inverted.@{color}.icon.icon.icon.icon.icon {
335
+ color: @l;
336
+ }
337
+ & when (@variationIconBordered) or (@variationIconCircular) {
338
+ i.inverted.bordered.@{color}.icon.icon.icon.icon.icon,
339
+ i.inverted.circular.@{color}.icon.icon.icon.icon.icon,
340
+ i.inverted.bordered.@{color}.icons,
341
+ i.inverted.circular.@{color}.icons {
342
+ background-color: @c;
343
+ color: @white;
344
+ }
342
345
  }
343
346
  }
344
- }
345
- })
347
+ })
348
+ }
346
349
 
347
350
 
348
351
  /*-------------------
@@ -375,6 +378,10 @@ i.icons {
375
378
  display: inline-block;
376
379
  position: relative;
377
380
  line-height: 1;
381
+ min-width: @width;
382
+ min-height: @height;
383
+ margin: 0 @distanceFromText 0 0;
384
+ text-align: center;
378
385
  }
379
386
 
380
387
  i.icons .icon {
@@ -44,7 +44,6 @@
44
44
  line-height: @lineHeight;
45
45
 
46
46
  font-family: @inputFont;
47
- padding: @padding;
48
47
 
49
48
  background: @background;
50
49
  border: @border;
@@ -53,6 +52,9 @@
53
52
  transition: @transition;
54
53
 
55
54
  box-shadow: @boxShadow;
55
+ &:not([type="color"]) {
56
+ padding: @padding;
57
+ }
56
58
  }
57
59
 
58
60
 
@@ -168,12 +170,12 @@
168
170
  }
169
171
 
170
172
 
171
- & when (@variationInputStates) {
173
+ & when not (@variationInputStates = false) {
172
174
  /*--------------------
173
175
  States
174
176
  ---------------------*/
175
- each(@formStates, {
176
- @state: replace(@key, '@', '');
177
+ each(@variationInputStates, {
178
+ @state: @value;
177
179
 
178
180
  .ui.input.@{state} > input {
179
181
  background-color: @formStates[@@state][background];
@@ -181,6 +183,20 @@
181
183
  color: @formStates[@@state][color];
182
184
  box-shadow: @formStates[@@state][boxShadow];
183
185
  }
186
+ & when (@state=error) {
187
+ .ui.input > input:not(:placeholder-shown):invalid {
188
+ background-color: @formStates[@@state][background];
189
+ border-color: @formStates[@@state][borderColor];
190
+ color: @formStates[@@state][color];
191
+ box-shadow: @formStates[@@state][boxShadow];
192
+ }
193
+ .ui.input > input:not(:-ms-input-placeholder):invalid {
194
+ background-color: @formStates[@@state][background];
195
+ border-color: @formStates[@@state][borderColor];
196
+ color: @formStates[@@state][color];
197
+ box-shadow: @formStates[@@state][boxShadow];
198
+ }
199
+ }
184
200
 
185
201
  /* Placeholder */
186
202
  .ui.input.@{state} > input::-webkit-input-placeholder {
@@ -432,10 +448,10 @@
432
448
  }
433
449
  }
434
450
 
435
- & when (@variationInputLabeled) or (@variationInputAction) {
451
+ & when ((@variationInputLabeled) or (@variationInputAction)) and not (@variationInputStates = false) {
436
452
  /* Labeled and action input states */
437
- each(@formStates, {
438
- @state: replace(@key, '@', '');
453
+ each(@variationInputStates, {
454
+ @state: @value;
439
455
  @borderColor: @formStates[@@state][borderColor];
440
456
 
441
457
  .ui.form .field.@{state} > .ui.action.input > .ui.button,
@@ -714,118 +714,119 @@ a.ui.active.label:hover:before {
714
714
  /*-------------------
715
715
  Colors
716
716
  --------------------*/
717
-
718
- each(@colors,{
719
- @color : replace(@key,'@','');
720
- @isDark : @colors[@@color][isDark];
721
- @_labelColor : @colors[@@color][color];
722
- @_labelInvertedColor : @colors[@@color][light];
723
- @_labelTextColor : @colors[@@color][text];
724
- @_labelHover : @colors[@@color][hover];
725
- @_labelInvertedHover : @colors[@@color][lightHover];
726
- @_labelHoverTextColor : @colors[@@color][hoverText];
727
- @_labelRibbonShadow : @colors[@@color][ribbon];
728
- @_labelInvertedRibbonShadow : @colors[@@color][invertedRibbon];
729
-
730
- .ui.@{color}.labels .label,
731
- .ui.ui.ui.@{color}.label {
732
- background-color: @_labelColor;
733
- border-color: @_labelColor;
734
- color: @_labelTextColor;
735
- }
736
- /* Link */
737
- .ui.@{color}.labels a.label:hover,
738
- a.ui.ui.ui.@{color}.label:hover{
739
- background-color: @_labelHover;
740
- border-color: @_labelHover;
741
- color: @_labelHoverTextColor;
742
- }
743
- & when (@variationLabelRibbon) {
744
- /* Ribbon */
745
- .ui.ui.ui.@{color}.ribbon.label {
746
- border-color: @_labelRibbonShadow;
747
- }
748
- }
749
- & when (@variationLabelBasic) {
750
- /* Basic */
751
- .ui.basic.labels .@{color}.label,
752
- .ui.ui.ui.basic.@{color}.label {
753
- background: @basicBackground;
717
+ & when not (@variationLabelColors = false) {
718
+ each(@variationLabelColors, {
719
+ @color: @value;
720
+ @isDark: @colors[@@color][isDark];
721
+ @_labelColor: @colors[@@color][color];
722
+ @_labelInvertedColor: @colors[@@color][light];
723
+ @_labelTextColor: @colors[@@color][text];
724
+ @_labelHover: @colors[@@color][hover];
725
+ @_labelInvertedHover: @colors[@@color][lightHover];
726
+ @_labelHoverTextColor: @colors[@@color][hoverText];
727
+ @_labelRibbonShadow: @colors[@@color][ribbon];
728
+ @_labelInvertedRibbonShadow: @colors[@@color][invertedRibbon];
729
+
730
+ .ui.@{color}.labels .label,
731
+ .ui.ui.ui.@{color}.label {
732
+ background-color: @_labelColor;
754
733
  border-color: @_labelColor;
755
- color: @_labelColor;
734
+ color: @_labelTextColor;
756
735
  }
757
- .ui.basic.labels a.@{color}.label:hover,
758
- a.ui.ui.ui.basic.@{color}.label:hover {
759
- background: @basicBackground;
736
+ /* Link */
737
+ .ui.@{color}.labels a.label:hover,
738
+ a.ui.ui.ui.@{color}.label:hover {
739
+ background-color: @_labelHover;
760
740
  border-color: @_labelHover;
761
- color: @_labelHover;
762
- }
763
- }
764
- & when (@variationLabelInverted) {
765
- /* Inverted */
766
- .ui.inverted.labels .@{color}.label,
767
- .ui.ui.ui.inverted.@{color}.label {
768
- background-color: @_labelInvertedColor;
769
- border-color: @_labelInvertedColor;
770
- color: @black;
771
- }
772
- /* Inverted Link */
773
- .ui.inverted.labels a.@{color}.label:hover,
774
- a.ui.ui.ui.inverted.@{color}.label:hover{
775
- background-color: @_labelInvertedHover;
776
- border-color: @_labelInvertedHover;
777
- & when not (@isDark) {
778
- color: @black;
779
- }
780
- & when (@isDark) {
781
- color: @_labelTextColor;
782
- }
741
+ color: @_labelHoverTextColor;
783
742
  }
784
743
  & when (@variationLabelRibbon) {
785
- /* Inverted Ribbon */
786
- .ui.ui.ui.inverted.@{color}.ribbon.label {
787
- border-color: @_labelInvertedRibbonShadow;
744
+ /* Ribbon */
745
+ .ui.ui.ui.@{color}.ribbon.label {
746
+ border-color: @_labelRibbonShadow;
788
747
  }
789
748
  }
790
749
  & when (@variationLabelBasic) {
791
- /* Inverted Basic */
792
- .ui.inverted.basic.labels .@{color}.label,
793
- .ui.ui.ui.inverted.basic.@{color}.label {
794
- background-color: @invertedBackground;
750
+ /* Basic */
751
+ .ui.basic.labels .@{color}.label,
752
+ .ui.ui.ui.basic.@{color}.label {
753
+ background: @basicBackground;
754
+ border-color: @_labelColor;
755
+ color: @_labelColor;
756
+ }
757
+ .ui.basic.labels a.@{color}.label:hover,
758
+ a.ui.ui.ui.basic.@{color}.label:hover {
759
+ background: @basicBackground;
760
+ border-color: @_labelHover;
761
+ color: @_labelHover;
762
+ }
763
+ }
764
+ & when (@variationLabelInverted) {
765
+ /* Inverted */
766
+ .ui.inverted.labels .@{color}.label,
767
+ .ui.ui.ui.inverted.@{color}.label {
768
+ background-color: @_labelInvertedColor;
795
769
  border-color: @_labelInvertedColor;
770
+ color: @black;
771
+ }
772
+ /* Inverted Link */
773
+ .ui.inverted.labels a.@{color}.label:hover,
774
+ a.ui.ui.ui.inverted.@{color}.label:hover {
775
+ background-color: @_labelInvertedHover;
776
+ border-color: @_labelInvertedHover;
796
777
  & when not (@isDark) {
797
- color: @_labelInvertedColor;
778
+ color: @black;
798
779
  }
799
780
  & when (@isDark) {
800
- color: @invertedTextColor;
781
+ color: @_labelTextColor;
801
782
  }
802
783
  }
803
- .ui.inverted.basic.labels a.@{color}.label:hover,
804
- a.ui.ui.ui.inverted.basic.@{color}.label:hover {
805
- border-color: @_labelInvertedHover;
806
- background-color: @invertedBackground;
807
- & when not (@isDark) {
808
- color: @_labelInvertedHover;
784
+ & when (@variationLabelRibbon) {
785
+ /* Inverted Ribbon */
786
+ .ui.ui.ui.inverted.@{color}.ribbon.label {
787
+ border-color: @_labelInvertedRibbonShadow;
809
788
  }
810
789
  }
811
- & when (@variationLabelTag) {
812
- /* Inverted Basic Tags */
813
- .ui.inverted.basic.tag.labels .@{color}.label,
814
- .ui.ui.ui.inverted.@{color}.basic.tag.label {
815
- border: @invertedBorderSize solid @_labelInvertedColor;
790
+ & when (@variationLabelBasic) {
791
+ /* Inverted Basic */
792
+ .ui.inverted.basic.labels .@{color}.label,
793
+ .ui.ui.ui.inverted.basic.@{color}.label {
794
+ background-color: @invertedBackground;
795
+ border-color: @_labelInvertedColor;
796
+ & when not (@isDark) {
797
+ color: @_labelInvertedColor;
798
+ }
799
+ & when (@isDark) {
800
+ color: @invertedTextColor;
801
+ }
816
802
  }
817
- .ui.inverted.basic.tag.labels .@{color}.label:before,
818
- .ui.ui.ui.inverted.@{color}.basic.tag.label:before {
819
- border-color: inherit;
820
- border-width: @invertedBorderSize 0 0 @invertedBorderSize;
821
- border-style: inherit;
803
+ .ui.inverted.basic.labels a.@{color}.label:hover,
804
+ a.ui.ui.ui.inverted.basic.@{color}.label:hover {
805
+ border-color: @_labelInvertedHover;
822
806
  background-color: @invertedBackground;
823
- right: e(%("calc(100%% + %d)", @invertedBorderSize));
807
+ & when not (@isDark) {
808
+ color: @_labelInvertedHover;
809
+ }
810
+ }
811
+ & when (@variationLabelTag) {
812
+ /* Inverted Basic Tags */
813
+ .ui.inverted.basic.tag.labels .@{color}.label,
814
+ .ui.ui.ui.inverted.@{color}.basic.tag.label {
815
+ border: @invertedBorderSize solid @_labelInvertedColor;
816
+ }
817
+ .ui.inverted.basic.tag.labels .@{color}.label:before,
818
+ .ui.ui.ui.inverted.@{color}.basic.tag.label:before {
819
+ border-color: inherit;
820
+ border-width: @invertedBorderSize 0 0 @invertedBorderSize;
821
+ border-style: inherit;
822
+ background-color: @invertedBackground;
823
+ right: e(%("calc(100%% + %d)", @invertedBorderSize));
824
+ }
824
825
  }
825
826
  }
826
827
  }
827
- }
828
- })
828
+ })
829
+ }
829
830
 
830
831
  /*-------------------
831
832
  Horizontal