fomantic-ui 2.9.4-beta.10 → 2.9.4-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 (295) hide show
  1. package/.all-contributorsrc +29 -1
  2. package/.eslintrc.js +17 -0
  3. package/.github/FUNDING.yml +1 -1
  4. package/.github/workflows/ci.yml +8 -8
  5. package/.github/workflows/depsreview.yml +14 -0
  6. package/.github/workflows/nightly.yml +1 -1
  7. package/.github/workflows/release.yml +1 -1
  8. package/CONTRIBUTORS.md +5 -0
  9. package/README.md +2 -12
  10. package/dist/components/accordion.css +1 -1
  11. package/dist/components/accordion.js +4 -2
  12. package/dist/components/accordion.min.css +1 -1
  13. package/dist/components/accordion.min.js +2 -2
  14. package/dist/components/ad.css +1 -1
  15. package/dist/components/ad.min.css +1 -1
  16. package/dist/components/api.js +7 -3
  17. package/dist/components/api.min.js +2 -2
  18. package/dist/components/breadcrumb.css +1 -1
  19. package/dist/components/breadcrumb.min.css +1 -1
  20. package/dist/components/button.css +21 -3
  21. package/dist/components/button.min.css +2 -2
  22. package/dist/components/calendar.css +1 -1
  23. package/dist/components/calendar.js +47 -12
  24. package/dist/components/calendar.min.css +1 -1
  25. package/dist/components/calendar.min.js +3 -3
  26. package/dist/components/card.css +1 -1
  27. package/dist/components/card.min.css +1 -1
  28. package/dist/components/checkbox.css +1 -1
  29. package/dist/components/checkbox.js +10 -4
  30. package/dist/components/checkbox.min.css +1 -1
  31. package/dist/components/checkbox.min.js +3 -3
  32. package/dist/components/comment.css +1 -1
  33. package/dist/components/comment.min.css +1 -1
  34. package/dist/components/container.css +1 -1
  35. package/dist/components/container.min.css +1 -1
  36. package/dist/components/dimmer.css +7 -3
  37. package/dist/components/dimmer.js +4 -2
  38. package/dist/components/dimmer.min.css +2 -2
  39. package/dist/components/dimmer.min.js +2 -2
  40. package/dist/components/divider.css +1 -1
  41. package/dist/components/divider.min.css +1 -1
  42. package/dist/components/dropdown.css +46 -38
  43. package/dist/components/dropdown.js +109 -34
  44. package/dist/components/dropdown.min.css +2 -2
  45. package/dist/components/dropdown.min.js +3 -3
  46. package/dist/components/embed.css +1 -1
  47. package/dist/components/embed.js +17 -7
  48. package/dist/components/embed.min.css +1 -1
  49. package/dist/components/embed.min.js +3 -3
  50. package/dist/components/emoji.css +4309 -3713
  51. package/dist/components/emoji.min.css +2 -2
  52. package/dist/components/feed.css +12 -1
  53. package/dist/components/feed.min.css +2 -2
  54. package/dist/components/flag.css +3 -1
  55. package/dist/components/flag.min.css +2 -2
  56. package/dist/components/flyout.css +3 -3
  57. package/dist/components/flyout.js +4 -2
  58. package/dist/components/flyout.min.css +1 -1
  59. package/dist/components/flyout.min.js +2 -2
  60. package/dist/components/form.css +15 -3
  61. package/dist/components/form.js +66 -23
  62. package/dist/components/form.min.css +2 -2
  63. package/dist/components/form.min.js +3 -3
  64. package/dist/components/grid.css +5 -5
  65. package/dist/components/grid.min.css +2 -2
  66. package/dist/components/header.css +1 -1
  67. package/dist/components/header.min.css +1 -1
  68. package/dist/components/icon.css +1 -1
  69. package/dist/components/icon.min.css +1 -1
  70. package/dist/components/image.css +1 -1
  71. package/dist/components/image.min.css +1 -1
  72. package/dist/components/input.css +1 -1
  73. package/dist/components/input.min.css +1 -1
  74. package/dist/components/item.css +1 -1
  75. package/dist/components/item.min.css +1 -1
  76. package/dist/components/label.css +7 -1
  77. package/dist/components/label.min.css +2 -2
  78. package/dist/components/list.css +1 -1
  79. package/dist/components/list.min.css +1 -1
  80. package/dist/components/loader.css +1 -1
  81. package/dist/components/loader.min.css +1 -1
  82. package/dist/components/menu.css +1 -1
  83. package/dist/components/menu.min.css +1 -1
  84. package/dist/components/message.css +2 -1
  85. package/dist/components/message.min.css +2 -2
  86. package/dist/components/modal.css +3 -3
  87. package/dist/components/modal.js +7 -3
  88. package/dist/components/modal.min.css +1 -1
  89. package/dist/components/modal.min.js +2 -2
  90. package/dist/components/nag.css +1 -1
  91. package/dist/components/nag.js +11 -5
  92. package/dist/components/nag.min.css +1 -1
  93. package/dist/components/nag.min.js +3 -3
  94. package/dist/components/placeholder.css +1 -1
  95. package/dist/components/placeholder.min.css +1 -1
  96. package/dist/components/popup.css +1 -1
  97. package/dist/components/popup.js +10 -4
  98. package/dist/components/popup.min.css +1 -1
  99. package/dist/components/popup.min.js +2 -2
  100. package/dist/components/progress.css +15 -6
  101. package/dist/components/progress.js +4 -2
  102. package/dist/components/progress.min.css +2 -2
  103. package/dist/components/progress.min.js +2 -2
  104. package/dist/components/rail.css +1 -1
  105. package/dist/components/rail.min.css +1 -1
  106. package/dist/components/rating.css +1 -1
  107. package/dist/components/rating.js +4 -2
  108. package/dist/components/rating.min.css +1 -1
  109. package/dist/components/rating.min.js +2 -2
  110. package/dist/components/reset.css +1 -1
  111. package/dist/components/reset.min.css +1 -1
  112. package/dist/components/reveal.css +1 -1
  113. package/dist/components/reveal.min.css +1 -1
  114. package/dist/components/search.css +34 -23
  115. package/dist/components/search.js +78 -14
  116. package/dist/components/search.min.css +2 -2
  117. package/dist/components/search.min.js +3 -3
  118. package/dist/components/segment.css +1 -1
  119. package/dist/components/segment.min.css +1 -1
  120. package/dist/components/shape.css +1 -1
  121. package/dist/components/shape.js +7 -5
  122. package/dist/components/shape.min.css +1 -1
  123. package/dist/components/shape.min.js +3 -3
  124. package/dist/components/sidebar.css +1 -1
  125. package/dist/components/sidebar.js +4 -2
  126. package/dist/components/sidebar.min.css +1 -1
  127. package/dist/components/sidebar.min.js +2 -2
  128. package/dist/components/site.css +14 -6
  129. package/dist/components/site.js +4 -2
  130. package/dist/components/site.min.css +2 -2
  131. package/dist/components/site.min.js +2 -2
  132. package/dist/components/slider.css +152 -2
  133. package/dist/components/slider.js +142 -44
  134. package/dist/components/slider.min.css +2 -2
  135. package/dist/components/slider.min.js +3 -3
  136. package/dist/components/state.js +4 -2
  137. package/dist/components/state.min.js +2 -2
  138. package/dist/components/statistic.css +1 -1
  139. package/dist/components/statistic.min.css +1 -1
  140. package/dist/components/step.css +992 -86
  141. package/dist/components/step.min.css +2 -2
  142. package/dist/components/sticky.css +1 -1
  143. package/dist/components/sticky.js +4 -2
  144. package/dist/components/sticky.min.css +1 -1
  145. package/dist/components/sticky.min.js +2 -2
  146. package/dist/components/tab.css +1 -1
  147. package/dist/components/tab.js +4 -2
  148. package/dist/components/tab.min.css +1 -1
  149. package/dist/components/tab.min.js +2 -2
  150. package/dist/components/table.css +32 -21
  151. package/dist/components/table.min.css +2 -2
  152. package/dist/components/text.css +1 -1
  153. package/dist/components/text.min.css +1 -1
  154. package/dist/components/toast.css +1 -1
  155. package/dist/components/toast.js +7 -3
  156. package/dist/components/toast.min.css +1 -1
  157. package/dist/components/toast.min.js +3 -3
  158. package/dist/components/transition.css +1 -1
  159. package/dist/components/transition.js +7 -3
  160. package/dist/components/transition.min.css +1 -1
  161. package/dist/components/transition.min.js +2 -2
  162. package/dist/components/visibility.js +4 -2
  163. package/dist/components/visibility.min.js +2 -2
  164. package/dist/semantic.css +6179 -3968
  165. package/dist/semantic.js +571 -188
  166. package/dist/semantic.min.css +3 -3
  167. package/dist/semantic.min.js +3 -3
  168. package/dist/themes/basic/assets/fonts/LICENSE.txt +91 -0
  169. package/dist/themes/default/assets/fonts/LICENSE_Lato.txt +94 -0
  170. package/dist/themes/default/assets/fonts/LICENSE_icons.txt +165 -0
  171. package/dist/themes/github/assets/fonts/LICENSE.txt +94 -0
  172. package/dist/themes/material/assets/fonts/LICENSE.txt +202 -0
  173. package/package.json +14 -14
  174. package/semantic.json.example +1 -1
  175. package/src/definitions/behaviors/api.js +6 -2
  176. package/src/definitions/behaviors/form.js +65 -22
  177. package/src/definitions/behaviors/state.js +3 -1
  178. package/src/definitions/behaviors/visibility.js +3 -1
  179. package/src/definitions/collections/form.less +43 -23
  180. package/src/definitions/collections/grid.less +85 -70
  181. package/src/definitions/collections/menu.less +38 -27
  182. package/src/definitions/collections/message.less +1 -0
  183. package/src/definitions/collections/table.less +183 -157
  184. package/src/definitions/elements/button.less +61 -25
  185. package/src/definitions/elements/container.less +6 -4
  186. package/src/definitions/elements/divider.less +4 -1
  187. package/src/definitions/elements/emoji.less +3 -1
  188. package/src/definitions/elements/header.less +7 -4
  189. package/src/definitions/elements/icon.less +35 -28
  190. package/src/definitions/elements/input.less +21 -13
  191. package/src/definitions/elements/label.less +19 -8
  192. package/src/definitions/elements/list.less +28 -21
  193. package/src/definitions/elements/loader.less +17 -12
  194. package/src/definitions/elements/segment.less +12 -7
  195. package/src/definitions/elements/step.less +405 -87
  196. package/src/definitions/globals/site.js +3 -1
  197. package/src/definitions/globals/site.less +17 -12
  198. package/src/definitions/modules/accordion.js +3 -1
  199. package/src/definitions/modules/accordion.less +15 -13
  200. package/src/definitions/modules/calendar.js +46 -11
  201. package/src/definitions/modules/calendar.less +6 -4
  202. package/src/definitions/modules/checkbox.js +9 -3
  203. package/src/definitions/modules/checkbox.less +12 -6
  204. package/src/definitions/modules/dimmer.js +3 -1
  205. package/src/definitions/modules/dimmer.less +16 -10
  206. package/src/definitions/modules/dropdown.js +108 -33
  207. package/src/definitions/modules/dropdown.less +109 -78
  208. package/src/definitions/modules/embed.js +16 -6
  209. package/src/definitions/modules/flyout.js +3 -1
  210. package/src/definitions/modules/flyout.less +51 -45
  211. package/src/definitions/modules/modal.js +6 -2
  212. package/src/definitions/modules/modal.less +109 -82
  213. package/src/definitions/modules/nag.js +10 -4
  214. package/src/definitions/modules/nag.less +8 -4
  215. package/src/definitions/modules/popup.js +9 -3
  216. package/src/definitions/modules/popup.less +3 -1
  217. package/src/definitions/modules/progress.js +3 -1
  218. package/src/definitions/modules/progress.less +24 -6
  219. package/src/definitions/modules/rating.js +3 -1
  220. package/src/definitions/modules/search.js +77 -13
  221. package/src/definitions/modules/search.less +41 -25
  222. package/src/definitions/modules/shape.js +6 -4
  223. package/src/definitions/modules/sidebar.js +3 -1
  224. package/src/definitions/modules/slider.js +141 -43
  225. package/src/definitions/modules/slider.less +129 -27
  226. package/src/definitions/modules/sticky.js +3 -1
  227. package/src/definitions/modules/tab.js +3 -1
  228. package/src/definitions/modules/toast.js +6 -2
  229. package/src/definitions/modules/toast.less +35 -24
  230. package/src/definitions/modules/transition.js +6 -2
  231. package/src/definitions/views/card.less +7 -5
  232. package/src/definitions/views/feed.less +14 -1
  233. package/src/definitions/views/item.less +7 -5
  234. package/src/themes/basic/assets/fonts/LICENSE.txt +91 -0
  235. package/src/themes/default/assets/fonts/LICENSE_Lato.txt +94 -0
  236. package/src/themes/default/assets/fonts/LICENSE_icons.txt +165 -0
  237. package/src/themes/default/elements/button.variables +3 -0
  238. package/src/themes/default/elements/emoji.variables +172 -23
  239. package/src/themes/default/elements/flag.variables +3 -3
  240. package/src/themes/default/elements/step.variables +33 -0
  241. package/src/themes/default/globals/site.variables +3 -0
  242. package/src/themes/default/globals/variation.variables +23 -2
  243. package/src/themes/default/modules/dropdown.variables +3 -0
  244. package/src/themes/default/modules/progress.variables +1 -1
  245. package/src/themes/default/modules/search.variables +15 -12
  246. package/src/themes/default/modules/slider.variables +10 -0
  247. package/src/themes/default/views/feed.variables +3 -0
  248. package/src/themes/github/assets/fonts/LICENSE.txt +94 -0
  249. package/src/themes/joypixels/elements/emoji.variables +183 -22
  250. package/src/themes/material/assets/fonts/LICENSE.txt +202 -0
  251. package/tasks/admin/components/create.js +4 -4
  252. package/tasks/admin/components/init.js +2 -2
  253. package/tasks/admin/components/update.js +3 -3
  254. package/tasks/admin/distributions/create.js +3 -3
  255. package/tasks/admin/distributions/init.js +2 -2
  256. package/tasks/admin/distributions/update.js +4 -4
  257. package/tasks/build/assets.js +1 -1
  258. package/tasks/build/css.js +19 -10
  259. package/tasks/build/javascript.js +12 -5
  260. package/tasks/check-install.js +1 -1
  261. package/tasks/config/defaults.js +4 -0
  262. package/tasks/config/project/release.js +19 -1
  263. package/tasks/config/tasks.js +7 -7
  264. package/tasks/docs/build.js +3 -3
  265. package/tasks/docs/metadata.js +1 -1
  266. package/tasks/docs/serve.js +3 -1
  267. package/tasks/install.js +2 -2
  268. package/tasks/watch.js +1 -1
  269. package/types/fomantic-ui-accordion.d.ts +1 -1
  270. package/types/fomantic-ui-api.d.ts +9 -3
  271. package/types/fomantic-ui-calendar.d.ts +114 -13
  272. package/types/fomantic-ui-checkbox.d.ts +14 -4
  273. package/types/fomantic-ui-dimmer.d.ts +1 -1
  274. package/types/fomantic-ui-dropdown.d.ts +82 -44
  275. package/types/fomantic-ui-embed.d.ts +19 -2
  276. package/types/fomantic-ui-flyout.d.ts +25 -11
  277. package/types/fomantic-ui-form.d.ts +123 -15
  278. package/types/fomantic-ui-modal.d.ts +101 -5
  279. package/types/fomantic-ui-nag.d.ts +4 -4
  280. package/types/fomantic-ui-popup.d.ts +38 -12
  281. package/types/fomantic-ui-progress.d.ts +12 -6
  282. package/types/fomantic-ui-rating.d.ts +1 -1
  283. package/types/fomantic-ui-search.d.ts +138 -22
  284. package/types/fomantic-ui-shape.d.ts +2 -2
  285. package/types/fomantic-ui-sidebar.d.ts +4 -4
  286. package/types/fomantic-ui-slider.d.ts +56 -4
  287. package/types/fomantic-ui-sticky.d.ts +1 -1
  288. package/types/fomantic-ui-tab.d.ts +6 -6
  289. package/types/fomantic-ui-toast.d.ts +14 -2
  290. package/types/fomantic-ui-transition.d.ts +41 -7
  291. package/types/fomantic-ui-visibility.d.ts +3 -3
  292. package/types/index.d.ts +25 -25
  293. package/types/tests.ts +188 -0
  294. package/types/tsconfig.json +1 -1
  295. package/types/fomantic-ui-tests.ts +0 -25
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * # Fomantic-UI 2.9.4-beta.10+3564140 - Slider
2
+ * # Fomantic-UI 2.9.4-beta.100+7f5f82a - Slider
3
3
  * https://github.com/fomantic/Fomantic-UI/
4
4
  *
5
5
  *
@@ -161,11 +161,13 @@
161
161
  }
162
162
  .ui.labeled.slider > .labels .label {
163
163
  display: inline-flex;
164
- padding: 0.2em 0;
165
164
  position: absolute;
166
165
  transform: translate(-50%, -100%);
167
166
  white-space: nowrap;
168
167
  }
168
+ .ui.labeled.slider > .labels .label:not(.ui) {
169
+ padding: 0.2em 0;
170
+ }
169
171
  .ui.bottom.aligned.labeled.slider > .labels .label {
170
172
  bottom: 0;
171
173
  transform: translate(-50%, 100%);
@@ -183,9 +185,27 @@
183
185
  top: auto;
184
186
  bottom: 100%;
185
187
  }
188
+ .ui.labeled.slider.bottom.aligned .labels .ui.label {
189
+ margin-bottom: -0.5em;
190
+ }
191
+ .ui.labeled.ticked.slider.bottom.aligned .labels .ui.label::after {
192
+ margin-bottom: 0.5em;
193
+ }
186
194
  .ui.labeled.ticked.slider > .labels .halftick.label::after {
187
195
  height: 0.75em;
188
196
  }
197
+ .ui.inverted.labeled.ticked.slider > .labels .label::after {
198
+ background: #333;
199
+ }
200
+ .ui.labeled.slider:not(.vertical):not(.bottom) .labels .ui.label {
201
+ margin-top: -0.5em;
202
+ }
203
+ .ui.labeled.ticked.slider:not(.vertical):not(.bottom) .labels .ui.label::after {
204
+ margin-top: 0.5em;
205
+ }
206
+ .ui.labeled.ticked.slider:not(.vertical) > .labels .ui.label::after {
207
+ height: 2em;
208
+ }
189
209
 
190
210
  /* Vertical Labels */
191
211
  .ui.labeled.vertical.slider > .labels {
@@ -209,11 +229,38 @@
209
229
  width: 0.75em;
210
230
  height: 1px;
211
231
  }
232
+ .ui.labeled.vertical.slider:not(.right) > .labels .halftick.label::after {
233
+ margin-left: 0.6em;
234
+ }
212
235
 
213
236
  /* Vertical Reversed Labels */
214
237
  .ui.labeled.vertical.reversed.slider > .labels .label {
215
238
  transform: translate(-100%, 50%);
216
239
  }
240
+ .ui.labeled.ticked.vertical.slider:not(.right) > .labels .ui.label::after {
241
+ margin-left: 0.3em;
242
+ }
243
+ .ui.labeled.vertical.right.aligned.slider > .labels {
244
+ transform: translateX(50%);
245
+ left: calc(100% + 0.6em);
246
+ }
247
+ .ui.labeled.vertical.right.aligned.slider > .labels .label {
248
+ transform: translate(100%, -50%);
249
+ right: 100%;
250
+ }
251
+ .ui.labeled.vertical.right.aligned.slider > .labels .label::after {
252
+ right: 100%;
253
+ left: auto;
254
+ }
255
+ .ui.labeled.vertical.right.aligned.slider > .labels .halftick.label::after {
256
+ margin-right: 0.6em;
257
+ }
258
+ .ui.labeled.vertical.reversed.right.aligned.slider > .labels .label {
259
+ transform: translate(100%, 50%);
260
+ }
261
+ .ui.labeled.ticked.vertical.right.aligned.slider > .labels .ui.label::after {
262
+ margin-right: 0.3em;
263
+ }
217
264
 
218
265
  /* --------------
219
266
  Hover
@@ -236,6 +283,19 @@
236
283
  .ui.inverted.slider .inner .track {
237
284
  background-color: rgba(255, 255, 255, 0.08);
238
285
  }
286
+ .ui.labeled.slider > .active.labels .label {
287
+ transition: all 0.2s ease;
288
+ }
289
+ .ui.labeled.ticked.slider > .active.labels .active.label::after {
290
+ background: #1b1c1d;
291
+ }
292
+ .ui.inverted.labeled.ticked.slider > .active.labels .active.label::after {
293
+ background: #545454;
294
+ }
295
+ .ui.labeled.ticked.slider > .active.labels .active.label::after,
296
+ .ui.labeled.slider > .active.labels .label:not(.active) {
297
+ opacity: 0.6;
298
+ }
239
299
 
240
300
  /* --------------
241
301
  Colors
@@ -266,6 +326,12 @@
266
326
  .ui.primary.inverted.slider.basic:focus .inner .thumb {
267
327
  background-color: #21b8ff;
268
328
  }
329
+ .ui.primary.labeled.ticked.slider > .active.labels .active.label::after {
330
+ background-color: #2185d0;
331
+ }
332
+ .ui.primary.inverted.labeled.ticked.slider > .active.labels .active.label::after {
333
+ background-color: #54c8ff;
334
+ }
269
335
 
270
336
  /* Standard */
271
337
  .ui.secondary.slider .inner .track-fill {
@@ -292,6 +358,12 @@
292
358
  .ui.secondary.inverted.slider.basic:focus .inner .thumb {
293
359
  background-color: #6e6e6e;
294
360
  }
361
+ .ui.secondary.labeled.ticked.slider > .active.labels .active.label::after {
362
+ background-color: #1b1c1d;
363
+ }
364
+ .ui.secondary.inverted.labeled.ticked.slider > .active.labels .active.label::after {
365
+ background-color: #545454;
366
+ }
295
367
 
296
368
  /* Standard */
297
369
  .ui.red.slider .inner .track-fill {
@@ -318,6 +390,12 @@
318
390
  .ui.red.inverted.slider.basic:focus .inner .thumb {
319
391
  background-color: #ff392b;
320
392
  }
393
+ .ui.red.labeled.ticked.slider > .active.labels .active.label::after {
394
+ background-color: #db2828;
395
+ }
396
+ .ui.red.inverted.labeled.ticked.slider > .active.labels .active.label::after {
397
+ background-color: #ff695e;
398
+ }
321
399
 
322
400
  /* Standard */
323
401
  .ui.orange.slider .inner .track-fill {
@@ -344,6 +422,12 @@
344
422
  .ui.orange.inverted.slider.basic:focus .inner .thumb {
345
423
  background-color: #e76b00;
346
424
  }
425
+ .ui.orange.labeled.ticked.slider > .active.labels .active.label::after {
426
+ background-color: #f2711c;
427
+ }
428
+ .ui.orange.inverted.labeled.ticked.slider > .active.labels .active.label::after {
429
+ background-color: #ff851b;
430
+ }
347
431
 
348
432
  /* Standard */
349
433
  .ui.yellow.slider .inner .track-fill {
@@ -370,6 +454,12 @@
370
454
  .ui.yellow.inverted.slider.basic:focus .inner .thumb {
371
455
  background-color: #ebcd00;
372
456
  }
457
+ .ui.yellow.labeled.ticked.slider > .active.labels .active.label::after {
458
+ background-color: #fbbd08;
459
+ }
460
+ .ui.yellow.inverted.labeled.ticked.slider > .active.labels .active.label::after {
461
+ background-color: #ffe21f;
462
+ }
373
463
 
374
464
  /* Standard */
375
465
  .ui.olive.slider .inner .track-fill {
@@ -396,6 +486,12 @@
396
486
  .ui.olive.inverted.slider.basic:focus .inner .thumb {
397
487
  background-color: #d2e745;
398
488
  }
489
+ .ui.olive.labeled.ticked.slider > .active.labels .active.label::after {
490
+ background-color: #b5cc18;
491
+ }
492
+ .ui.olive.inverted.labeled.ticked.slider > .active.labels .active.label::after {
493
+ background-color: #d9e778;
494
+ }
399
495
 
400
496
  /* Standard */
401
497
  .ui.green.slider .inner .track-fill {
@@ -422,6 +518,12 @@
422
518
  .ui.green.inverted.slider.basic:focus .inner .thumb {
423
519
  background-color: #1ea92e;
424
520
  }
521
+ .ui.green.labeled.ticked.slider > .active.labels .active.label::after {
522
+ background-color: #21ba45;
523
+ }
524
+ .ui.green.inverted.labeled.ticked.slider > .active.labels .active.label::after {
525
+ background-color: #2ecc40;
526
+ }
425
527
 
426
528
  /* Standard */
427
529
  .ui.teal.slider .inner .track-fill {
@@ -448,6 +550,12 @@
448
550
  .ui.teal.inverted.slider.basic:focus .inner .thumb {
449
551
  background-color: #3affff;
450
552
  }
553
+ .ui.teal.labeled.ticked.slider > .active.labels .active.label::after {
554
+ background-color: #00b5ad;
555
+ }
556
+ .ui.teal.inverted.labeled.ticked.slider > .active.labels .active.label::after {
557
+ background-color: #6dffff;
558
+ }
451
559
 
452
560
  /* Standard */
453
561
  .ui.blue.slider .inner .track-fill {
@@ -474,6 +582,12 @@
474
582
  .ui.blue.inverted.slider.basic:focus .inner .thumb {
475
583
  background-color: #21b8ff;
476
584
  }
585
+ .ui.blue.labeled.ticked.slider > .active.labels .active.label::after {
586
+ background-color: #2185d0;
587
+ }
588
+ .ui.blue.inverted.labeled.ticked.slider > .active.labels .active.label::after {
589
+ background-color: #54c8ff;
590
+ }
477
591
 
478
592
  /* Standard */
479
593
  .ui.violet.slider .inner .track-fill {
@@ -500,6 +614,12 @@
500
614
  .ui.violet.inverted.slider.basic:focus .inner .thumb {
501
615
  background-color: #745aff;
502
616
  }
617
+ .ui.violet.labeled.ticked.slider > .active.labels .active.label::after {
618
+ background-color: #6435c9;
619
+ }
620
+ .ui.violet.inverted.labeled.ticked.slider > .active.labels .active.label::after {
621
+ background-color: #a291fb;
622
+ }
503
623
 
504
624
  /* Standard */
505
625
  .ui.purple.slider .inner .track-fill {
@@ -526,6 +646,12 @@
526
646
  .ui.purple.inverted.slider.basic:focus .inner .thumb {
527
647
  background-color: #cf40ff;
528
648
  }
649
+ .ui.purple.labeled.ticked.slider > .active.labels .active.label::after {
650
+ background-color: #a333c8;
651
+ }
652
+ .ui.purple.inverted.labeled.ticked.slider > .active.labels .active.label::after {
653
+ background-color: #dc73ff;
654
+ }
529
655
 
530
656
  /* Standard */
531
657
  .ui.pink.slider .inner .track-fill {
@@ -552,6 +678,12 @@
552
678
  .ui.pink.inverted.slider.basic:focus .inner .thumb {
553
679
  background-color: #ff5bd1;
554
680
  }
681
+ .ui.pink.labeled.ticked.slider > .active.labels .active.label::after {
682
+ background-color: #e03997;
683
+ }
684
+ .ui.pink.inverted.labeled.ticked.slider > .active.labels .active.label::after {
685
+ background-color: #ff8edf;
686
+ }
555
687
 
556
688
  /* Standard */
557
689
  .ui.brown.slider .inner .track-fill {
@@ -578,6 +710,12 @@
578
710
  .ui.brown.inverted.slider.basic:focus .inner .thumb {
579
711
  background-color: #b0620f;
580
712
  }
713
+ .ui.brown.labeled.ticked.slider > .active.labels .active.label::after {
714
+ background-color: #a5673f;
715
+ }
716
+ .ui.brown.inverted.labeled.ticked.slider > .active.labels .active.label::after {
717
+ background-color: #d67c1c;
718
+ }
581
719
 
582
720
  /* Standard */
583
721
  .ui.grey.slider .inner .track-fill {
@@ -604,6 +742,12 @@
604
742
  .ui.grey.inverted.slider.basic:focus .inner .thumb {
605
743
  background-color: #c2c4c5;
606
744
  }
745
+ .ui.grey.labeled.ticked.slider > .active.labels .active.label::after {
746
+ background-color: #767676;
747
+ }
748
+ .ui.grey.inverted.labeled.ticked.slider > .active.labels .active.label::after {
749
+ background-color: #dcddde;
750
+ }
607
751
 
608
752
  /* Standard */
609
753
  .ui.black.slider .inner .track-fill {
@@ -630,6 +774,12 @@
630
774
  .ui.black.inverted.slider.basic:focus .inner .thumb {
631
775
  background-color: #000000;
632
776
  }
777
+ .ui.black.labeled.ticked.slider > .active.labels .active.label::after {
778
+ background-color: #1b1c1d;
779
+ }
780
+ .ui.black.inverted.labeled.ticked.slider > .active.labels .active.label::after {
781
+ background-color: #545454;
782
+ }
633
783
 
634
784
  /* --------------
635
785
  Basic
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * # Fomantic-UI 2.9.4-beta.10+3564140 - Slider
2
+ * # Fomantic-UI 2.9.4-beta.100+7f5f82a - Slider
3
3
  * https://github.com/fomantic/Fomantic-UI/
4
4
  *
5
5
  *
@@ -32,8 +32,6 @@
32
32
  methodInvoked = typeof query === 'string',
33
33
  queryArguments = [].slice.call(arguments, 1),
34
34
 
35
- alphabet = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'],
36
-
37
35
  SINGLE_STEP = 1,
38
36
  BIG_STEP = 2,
39
37
  NO_STEP = 0,
@@ -82,7 +80,6 @@
82
80
  position,
83
81
  secondPos,
84
82
  offset,
85
- precision,
86
83
  gapRatio = 1,
87
84
  previousValue,
88
85
 
@@ -125,6 +122,7 @@
125
122
  clearInterval(instance.interval);
126
123
  module.unbind.events();
127
124
  module.unbind.slidingEvents();
125
+ delete module.cache;
128
126
  $module.removeData(moduleNamespace);
129
127
  instance = undefined;
130
128
  },
@@ -141,7 +139,7 @@
141
139
  + '<div class="thumb"></div>'
142
140
  + '</div>');
143
141
  }
144
- precision = module.get.precision();
142
+ module.clear.cache();
145
143
  $thumb = $module.find('.thumb:not(.second)');
146
144
  if (settings.showThumbTooltip) {
147
145
  $thumb
@@ -175,8 +173,14 @@
175
173
  module.setup.autoLabel();
176
174
  }
177
175
 
176
+ if (settings.highlightRange) {
177
+ $labels.addClass(className.active);
178
+ }
179
+
178
180
  if (settings.showLabelTicks) {
179
181
  $module.addClass(className.ticked);
182
+ } else if ($module.hasClass(className.ticked)) {
183
+ settings.showLabelTicks = 'always';
180
184
  }
181
185
  }
182
186
  },
@@ -211,14 +215,20 @@
211
215
  } else {
212
216
  $labels = $module.append('<ul class="auto labels"></ul>').find('.labels');
213
217
  }
214
- for (var i = 0, len = module.get.numLabels(); i <= len; i++) {
218
+ var step = module.get.step(),
219
+ precision = module.get.precision(),
220
+ len = module.get.numLabels(),
221
+ ignoreLabels = len - (settings.autoAdjustLabels !== 'fixed' ? 0 : module.get.max().toString().length + 4)
222
+ ;
223
+ for (var i = 0; i <= len; i++) {
215
224
  var
216
- labelText = module.get.label(i),
225
+ stepValue = Math.round(((i * (step === 0 ? 1 : step)) + module.get.min()) * precision) / precision,
226
+ labelText = module.get.label(i, stepValue),
217
227
  showLabel = settings.restrictedLabels.length === 0 || settings.restrictedLabels.indexOf(labelText) >= 0,
218
228
  $label = labelText !== '' && (showLabel || settings.showLabelTicks === 'always')
219
- ? (!(i % module.get.gapRatio())
220
- ? $('<li class="label">' + (showLabel ? labelText : '') + '</li>')
221
- : $('<li class="halftick label"></li>'))
229
+ ? ((!(i % module.get.gapRatio()) && i < ignoreLabels) || i === len
230
+ ? $('<li/>', { class: className.label, 'data-value': stepValue, html: showLabel ? labelText : '' })
231
+ : $('<li/>', { class: 'halftick label', 'data-value': stepValue }))
222
232
  : null,
223
233
  ratio = i / len
224
234
  ;
@@ -489,6 +499,12 @@
489
499
  },
490
500
  },
491
501
 
502
+ clear: {
503
+ cache: function () {
504
+ module.cache = {};
505
+ },
506
+ },
507
+
492
508
  resync: function () {
493
509
  module.verbose('Resyncing thumb position based on value');
494
510
  if (module.is.range()) {
@@ -538,6 +554,25 @@
538
554
  },
539
555
 
540
556
  is: {
557
+ prime: function (n) {
558
+ if (module.cache['prime' + n] === undefined) {
559
+ var p = true;
560
+ for (var i = 2, s = Math.sqrt(n); i <= s; i++) {
561
+ if (n % i === 0) {
562
+ p = false;
563
+
564
+ break;
565
+ }
566
+ }
567
+ if (p) {
568
+ p = n > 1;
569
+ }
570
+
571
+ module.cache['prime' + n] = p;
572
+ }
573
+
574
+ return module.cache['prime' + n];
575
+ },
541
576
  range: function () {
542
577
  var isRange = $module.hasClass(className.range);
543
578
  if (!isRange && (settings.minRange || settings.maxRange)) {
@@ -652,62 +687,87 @@
652
687
  return margin || '0px';
653
688
  },
654
689
  precision: function () {
655
- var
656
- decimalPlaces,
657
- step = module.get.step()
658
- ;
659
- if (step !== 0) {
660
- var split = String(step).split('.');
661
- decimalPlaces = split.length === 2 ? split[1].length : 0;
662
- } else {
663
- decimalPlaces = settings.decimalPlaces;
690
+ if (module.cache.precision === undefined) {
691
+ var
692
+ decimalPlaces,
693
+ step = module.get.step()
694
+ ;
695
+ if (step !== 0) {
696
+ var split = String(step).split('.');
697
+ decimalPlaces = split.length === 2 ? split[1].length : 0;
698
+ } else {
699
+ decimalPlaces = settings.decimalPlaces;
700
+ }
701
+ var precision = Math.pow(10, decimalPlaces);
702
+ module.debug('Precision determined', precision);
703
+ module.cache.precision = precision;
664
704
  }
665
- var precision = Math.pow(10, decimalPlaces);
666
- module.debug('Precision determined', precision);
667
705
 
668
- return precision;
706
+ return module.cache.precision;
669
707
  },
670
708
  min: function () {
671
709
  return settings.min;
672
710
  },
673
711
  max: function () {
674
- var
675
- step = module.get.step(),
676
- min = module.get.min(),
677
- precision = module.get.precision(),
678
- quotient = step === 0 ? 0 : Math.floor(Math.round(((settings.max - min) / step) * precision) / precision),
679
- remainder = step === 0 ? 0 : (settings.max - min) % step
680
- ;
712
+ if (module.cache.max === undefined) {
713
+ var
714
+ step = module.get.step(),
715
+ min = module.get.min(),
716
+ precision = module.get.precision(),
717
+ quotient = step === 0 ? 0 : Math.floor(Math.round(((settings.max - min) / step) * precision) / precision),
718
+ remainder = step === 0 ? 0 : (settings.max - min) % step
719
+ ;
720
+ if (remainder > 0) {
721
+ module.debug('Max value not divisible by given step. Increasing max value.', settings.max, step);
722
+ }
723
+ module.cache.max = remainder === 0 ? settings.max : min + quotient * step;
724
+ }
681
725
 
682
- return remainder === 0 ? settings.max : min + quotient * step;
726
+ return module.cache.max;
683
727
  },
684
728
  step: function () {
685
729
  return settings.step;
686
730
  },
687
731
  numLabels: function () {
688
- var step = module.get.step(),
689
- precision = module.get.precision(),
690
- value = Math.round(((module.get.max() - module.get.min()) / (step === 0 ? 1 : step)) * precision) / precision;
691
- module.debug('Determined that there should be ' + value + ' labels');
732
+ if (module.cache.numLabels === undefined) {
733
+ var step = module.get.step(),
734
+ precision = module.get.precision(),
735
+ value = Math.round(((module.get.max() - module.get.min()) / (step === 0 ? 1 : step)) * precision) / precision;
736
+ module.debug('Determined that there should be ' + value + ' labels');
737
+ module.cache.numLabels = value;
738
+ }
692
739
 
693
- return value;
740
+ return module.cache.numLabels;
694
741
  },
695
742
  labelType: function () {
696
743
  return settings.labelType;
697
744
  },
698
- label: function (value) {
699
- if (interpretLabel) {
700
- return interpretLabel(value);
745
+ label: function (value, stepValue) {
746
+ if (isFunction(interpretLabel)) {
747
+ return interpretLabel(value, stepValue, module);
701
748
  }
702
749
 
703
750
  switch (settings.labelType) {
704
751
  case settings.labelTypes.number: {
705
- var step = module.get.step();
706
-
707
- return Math.round(((value * (step === 0 ? 1 : step)) + module.get.min()) * precision) / precision;
752
+ return stepValue;
708
753
  }
709
754
  case settings.labelTypes.letter: {
710
- return alphabet[value % 26];
755
+ if (value < 0 || module.get.precision() > 1) {
756
+ module.error(error.invalidLetterNumber, value);
757
+
758
+ return value;
759
+ }
760
+ var letterLabel = '',
761
+ letters = Array.isArray(settings.letters) ? settings.letters : String(settings.letters).split(''),
762
+ lettersLen = letters.length
763
+ ;
764
+
765
+ while (stepValue >= 0) {
766
+ letterLabel = letters[stepValue % lettersLen] + letterLabel;
767
+ stepValue = Math.floor(stepValue / lettersLen) - 1;
768
+ }
769
+
770
+ return letterLabel;
711
771
  }
712
772
  default: {
713
773
  return value;
@@ -717,6 +777,9 @@
717
777
  value: function () {
718
778
  return value;
719
779
  },
780
+ settings: function () {
781
+ return settings;
782
+ },
720
783
  currentThumbValue: function () {
721
784
  return $currThumb !== undefined && $currThumb.hasClass('second') ? module.secondThumbVal : module.thumbVal;
722
785
  },
@@ -761,6 +824,7 @@
761
824
  if (settings.autoAdjustLabels) {
762
825
  var
763
826
  numLabels = module.get.numLabels(),
827
+ primePlus = module.is.prime(numLabels) ? 1 : 0,
764
828
  trackLength = module.get.trackLength(),
765
829
  gapCounter = 1
766
830
  ;
@@ -770,7 +834,7 @@
770
834
  // and apply only if the modulo of the operation is an odd number.
771
835
  if (trackLength > 0) {
772
836
  while ((trackLength / numLabels) * gapCounter < settings.labelDistance) {
773
- if (!(numLabels % gapCounter)) {
837
+ if (!((numLabels + primePlus) % gapCounter) || settings.autoAdjustLabels === 'fixed') {
774
838
  gapRatio = gapCounter;
775
839
  }
776
840
  gapCounter += 1;
@@ -908,6 +972,7 @@
908
972
  },
909
973
  value: function (position) {
910
974
  var
975
+ precision = module.get.precision(),
911
976
  startPos = module.is.reversed() ? module.get.trackEndPos() : module.get.trackStartPos(),
912
977
  endPos = module.is.reversed() ? module.get.trackStartPos() : module.get.trackEndPos(),
913
978
  ratio = (position - startPos) / (endPos - startPos),
@@ -976,6 +1041,30 @@
976
1041
  },
977
1042
 
978
1043
  set: {
1044
+ active: function (thumbVal, secondThumbVal) {
1045
+ if (settings.highlightRange) {
1046
+ if (secondThumbVal < thumbVal) {
1047
+ var tempVal = secondThumbVal;
1048
+ secondThumbVal = thumbVal;
1049
+ thumbVal = tempVal;
1050
+ }
1051
+ var $children = $labels.find('.label');
1052
+ $children.each(function (index) {
1053
+ var
1054
+ $child = $(this),
1055
+ attrValue = $child.attr('data-value')
1056
+ ;
1057
+ if (attrValue) {
1058
+ attrValue = parseInt(attrValue, 10);
1059
+ if (attrValue >= thumbVal && attrValue <= secondThumbVal) {
1060
+ $child.addClass(className.active);
1061
+ } else {
1062
+ $child.removeClass(className.active);
1063
+ }
1064
+ }
1065
+ });
1066
+ }
1067
+ },
979
1068
  value: function (newValue, fireChange) {
980
1069
  fireChange = fireChange !== false;
981
1070
  var toReset = previousValue === undefined;
@@ -1103,6 +1192,7 @@
1103
1192
  position = newPos;
1104
1193
  thumbVal = newValue;
1105
1194
  }
1195
+ module.set.active(thumbVal, secondThumbVal);
1106
1196
  var
1107
1197
  trackPosValue,
1108
1198
  thumbPosValue,
@@ -1210,6 +1300,7 @@
1210
1300
  } else {
1211
1301
  return settings[name];
1212
1302
  }
1303
+ module.clear.cache();
1213
1304
  },
1214
1305
  internal: function (name, value) {
1215
1306
  if ($.isPlainObject(name)) {
@@ -1267,7 +1358,9 @@
1267
1358
  });
1268
1359
  }
1269
1360
  clearTimeout(module.performance.timer);
1270
- module.performance.timer = setTimeout(function () { module.performance.display(); }, 500);
1361
+ module.performance.timer = setTimeout(function () {
1362
+ module.performance.display();
1363
+ }, 500);
1271
1364
  },
1272
1365
  display: function () {
1273
1366
  var
@@ -1380,6 +1473,7 @@
1380
1473
  method: 'The method you called is not defined.',
1381
1474
  notrange: 'This slider is not a range slider',
1382
1475
  invalidRanges: 'Invalid range settings (start/end/minRange/maxRange)',
1476
+ invalidLetterNumber: 'Negative values or decimal places for labelType: "letter" are not supported',
1383
1477
  },
1384
1478
 
1385
1479
  metadata: {
@@ -1402,6 +1496,7 @@
1402
1496
  preventCrossover: true,
1403
1497
  fireOnInit: false,
1404
1498
  interpretLabel: false,
1499
+ letters: 'ABCDEFGHIJKLMNOPQRSTUVWXYZ',
1405
1500
 
1406
1501
  // the decimal place to round to if step is undefined
1407
1502
  decimalPlaces: 2,
@@ -1419,6 +1514,8 @@
1419
1514
  vertical: 'vertical',
1420
1515
  range: 'range',
1421
1516
  smooth: 'smooth',
1517
+ label: 'label',
1518
+ active: 'active',
1422
1519
  },
1423
1520
 
1424
1521
  keys: {
@@ -1431,6 +1528,7 @@
1431
1528
  },
1432
1529
 
1433
1530
  restrictedLabels: [],
1531
+ highlightRange: false,
1434
1532
  showThumbTooltip: false,
1435
1533
  tooltipConfig: {
1436
1534
  position: 'top center',