less-rails-semantic_ui 1.12.3.0 → 2.0.0.0

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 (197) hide show
  1. checksums.yaml +4 -4
  2. data/assets/javascripts/semantic_ui/definitions/behaviors/api.js +394 -188
  3. data/assets/javascripts/semantic_ui/definitions/behaviors/colorize.js +4 -2
  4. data/assets/javascripts/semantic_ui/definitions/behaviors/form.js +263 -125
  5. data/assets/javascripts/semantic_ui/definitions/behaviors/state.js +3 -3
  6. data/assets/javascripts/semantic_ui/definitions/behaviors/visibility.js +213 -96
  7. data/assets/javascripts/semantic_ui/definitions/behaviors/visit.js +6 -4
  8. data/assets/javascripts/semantic_ui/definitions/globals/site.js +4 -4
  9. data/assets/javascripts/semantic_ui/definitions/modules/accordion.js +66 -52
  10. data/assets/javascripts/semantic_ui/definitions/modules/checkbox.js +309 -112
  11. data/assets/javascripts/semantic_ui/definitions/modules/dimmer.js +24 -26
  12. data/assets/javascripts/semantic_ui/definitions/modules/dropdown.js +2005 -590
  13. data/assets/javascripts/semantic_ui/definitions/modules/embed.js +662 -0
  14. data/assets/javascripts/semantic_ui/definitions/modules/modal.js +106 -79
  15. data/assets/javascripts/semantic_ui/definitions/modules/nag.js +7 -8
  16. data/assets/javascripts/semantic_ui/definitions/modules/popup.js +323 -194
  17. data/assets/javascripts/semantic_ui/definitions/modules/progress.js +111 -103
  18. data/assets/javascripts/semantic_ui/definitions/modules/rating.js +78 -54
  19. data/assets/javascripts/semantic_ui/definitions/modules/search.js +304 -122
  20. data/assets/javascripts/semantic_ui/definitions/modules/shape.js +93 -47
  21. data/assets/javascripts/semantic_ui/definitions/modules/sidebar.js +83 -149
  22. data/assets/javascripts/semantic_ui/definitions/modules/sticky.js +99 -29
  23. data/assets/javascripts/semantic_ui/definitions/modules/tab.js +219 -124
  24. data/assets/javascripts/semantic_ui/definitions/modules/transition.js +202 -171
  25. data/assets/stylesheets/semantic_ui/definitions/collections/breadcrumb.less +2 -1
  26. data/assets/stylesheets/semantic_ui/definitions/collections/form.less +135 -58
  27. data/assets/stylesheets/semantic_ui/definitions/collections/grid.less +366 -383
  28. data/assets/stylesheets/semantic_ui/definitions/collections/menu.less +838 -631
  29. data/assets/stylesheets/semantic_ui/definitions/collections/message.less +89 -71
  30. data/assets/stylesheets/semantic_ui/definitions/collections/table.less +183 -131
  31. data/assets/stylesheets/semantic_ui/definitions/elements/button.less +1097 -300
  32. data/assets/stylesheets/semantic_ui/definitions/elements/container.less +135 -0
  33. data/assets/stylesheets/semantic_ui/definitions/elements/divider.less +31 -30
  34. data/assets/stylesheets/semantic_ui/definitions/elements/flag.less +1 -1
  35. data/assets/stylesheets/semantic_ui/definitions/elements/header.less +209 -121
  36. data/assets/stylesheets/semantic_ui/definitions/elements/icon.less +201 -96
  37. data/assets/stylesheets/semantic_ui/definitions/elements/image.less +26 -11
  38. data/assets/stylesheets/semantic_ui/definitions/elements/input.less +49 -14
  39. data/assets/stylesheets/semantic_ui/definitions/elements/label.less +391 -221
  40. data/assets/stylesheets/semantic_ui/definitions/elements/list.less +107 -68
  41. data/assets/stylesheets/semantic_ui/definitions/elements/loader.less +3 -1
  42. data/assets/stylesheets/semantic_ui/definitions/elements/rail.less +34 -25
  43. data/assets/stylesheets/semantic_ui/definitions/elements/reveal.less +25 -10
  44. data/assets/stylesheets/semantic_ui/definitions/elements/segment.less +261 -173
  45. data/assets/stylesheets/semantic_ui/definitions/elements/step.less +169 -70
  46. data/assets/stylesheets/semantic_ui/definitions/globals/reset.less +1 -1
  47. data/assets/stylesheets/semantic_ui/definitions/globals/site.less +3 -1
  48. data/assets/stylesheets/semantic_ui/definitions/modules/accordion.less +1 -2
  49. data/assets/stylesheets/semantic_ui/definitions/modules/checkbox.less +175 -103
  50. data/assets/stylesheets/semantic_ui/definitions/modules/dimmer.less +26 -15
  51. data/assets/stylesheets/semantic_ui/definitions/modules/dropdown.less +349 -80
  52. data/assets/stylesheets/semantic_ui/definitions/modules/embed.less +174 -0
  53. data/assets/stylesheets/semantic_ui/definitions/modules/modal.less +83 -36
  54. data/assets/stylesheets/semantic_ui/definitions/modules/nag.less +1 -1
  55. data/assets/stylesheets/semantic_ui/definitions/modules/popup.less +48 -7
  56. data/assets/stylesheets/semantic_ui/definitions/modules/progress.less +160 -107
  57. data/assets/stylesheets/semantic_ui/definitions/modules/rating.less +57 -54
  58. data/assets/stylesheets/semantic_ui/definitions/modules/search.less +55 -10
  59. data/assets/stylesheets/semantic_ui/definitions/modules/shape.less +5 -6
  60. data/assets/stylesheets/semantic_ui/definitions/modules/sidebar.less +9 -5
  61. data/assets/stylesheets/semantic_ui/definitions/modules/sticky.less +1 -1
  62. data/assets/stylesheets/semantic_ui/definitions/modules/tab.less +1 -1
  63. data/assets/stylesheets/semantic_ui/definitions/modules/transition.less +3 -4
  64. data/assets/stylesheets/semantic_ui/definitions/views/card.less +240 -130
  65. data/assets/stylesheets/semantic_ui/definitions/views/comment.less +1 -1
  66. data/assets/stylesheets/semantic_ui/definitions/views/feed.less +15 -8
  67. data/assets/stylesheets/semantic_ui/definitions/views/item.less +13 -13
  68. data/assets/stylesheets/semantic_ui/definitions/views/statistic.less +230 -86
  69. data/assets/stylesheets/semantic_ui/theme.less +22 -15
  70. data/assets/stylesheets/semantic_ui/themes/amazon/elements/button.overrides +5 -5
  71. data/assets/stylesheets/semantic_ui/themes/amazon/elements/button.variables +5 -4
  72. data/assets/stylesheets/semantic_ui/themes/basic/collections/table.variables +1 -0
  73. data/assets/stylesheets/semantic_ui/themes/basic/views/card.variables +6 -4
  74. data/assets/stylesheets/semantic_ui/themes/bookish/elements/header.variables +4 -4
  75. data/assets/stylesheets/semantic_ui/themes/bootstrap3/elements/button.variables +1 -1
  76. data/assets/stylesheets/semantic_ui/themes/chubby/collections/form.overrides +8 -0
  77. data/assets/stylesheets/semantic_ui/themes/chubby/collections/menu.overrides +0 -0
  78. data/assets/stylesheets/semantic_ui/themes/chubby/collections/menu.variables +40 -0
  79. data/assets/stylesheets/semantic_ui/themes/classic/modules/progress.variables +1 -0
  80. data/assets/stylesheets/semantic_ui/themes/classic/views/card.overrides +1 -1
  81. data/assets/stylesheets/semantic_ui/themes/colored/modules/checkbox.overrides +0 -0
  82. data/assets/stylesheets/semantic_ui/themes/colored/modules/checkbox.variables +17 -0
  83. data/assets/stylesheets/semantic_ui/themes/default/collections/breadcrumb.overrides +0 -0
  84. data/assets/stylesheets/semantic_ui/themes/default/collections/breadcrumb.variables +5 -15
  85. data/assets/stylesheets/semantic_ui/themes/default/collections/form.overrides +0 -0
  86. data/assets/stylesheets/semantic_ui/themes/default/collections/form.variables +31 -35
  87. data/assets/stylesheets/semantic_ui/themes/default/collections/grid.overrides +0 -0
  88. data/assets/stylesheets/semantic_ui/themes/default/collections/grid.variables +34 -28
  89. data/assets/stylesheets/semantic_ui/themes/default/collections/menu.overrides +0 -0
  90. data/assets/stylesheets/semantic_ui/themes/default/collections/menu.variables +259 -163
  91. data/assets/stylesheets/semantic_ui/themes/default/collections/message.overrides +0 -0
  92. data/assets/stylesheets/semantic_ui/themes/default/collections/message.variables +42 -19
  93. data/assets/stylesheets/semantic_ui/themes/default/collections/table.overrides +0 -3
  94. data/assets/stylesheets/semantic_ui/themes/default/collections/table.variables +63 -59
  95. data/assets/stylesheets/semantic_ui/themes/default/elements/button.overrides +0 -0
  96. data/assets/stylesheets/semantic_ui/themes/default/elements/button.variables +90 -50
  97. data/assets/stylesheets/semantic_ui/themes/default/elements/container.overrides +3 -0
  98. data/assets/stylesheets/semantic_ui/themes/default/elements/container.variables +45 -0
  99. data/assets/stylesheets/semantic_ui/themes/default/elements/divider.overrides +15 -0
  100. data/assets/stylesheets/semantic_ui/themes/default/elements/divider.variables +3 -4
  101. data/assets/stylesheets/semantic_ui/themes/default/elements/flag.overrides +0 -0
  102. data/assets/stylesheets/semantic_ui/themes/default/elements/header.overrides +0 -0
  103. data/assets/stylesheets/semantic_ui/themes/default/elements/header.variables +40 -36
  104. data/assets/stylesheets/semantic_ui/themes/default/elements/icon.overrides +4 -3
  105. data/assets/stylesheets/semantic_ui/themes/default/elements/icon.variables +29 -12
  106. data/assets/stylesheets/semantic_ui/themes/default/elements/image.overrides +0 -0
  107. data/assets/stylesheets/semantic_ui/themes/default/elements/image.variables +5 -3
  108. data/assets/stylesheets/semantic_ui/themes/default/elements/input.overrides +0 -0
  109. data/assets/stylesheets/semantic_ui/themes/default/elements/input.variables +10 -24
  110. data/assets/stylesheets/semantic_ui/themes/default/elements/label.overrides +0 -0
  111. data/assets/stylesheets/semantic_ui/themes/default/elements/label.variables +88 -35
  112. data/assets/stylesheets/semantic_ui/themes/default/elements/list.overrides +0 -0
  113. data/assets/stylesheets/semantic_ui/themes/default/elements/list.variables +53 -34
  114. data/assets/stylesheets/semantic_ui/themes/default/elements/loader.overrides +0 -0
  115. data/assets/stylesheets/semantic_ui/themes/default/elements/loader.variables +9 -10
  116. data/assets/stylesheets/semantic_ui/themes/default/elements/rail.overrides +0 -0
  117. data/assets/stylesheets/semantic_ui/themes/default/elements/rail.variables +13 -5
  118. data/assets/stylesheets/semantic_ui/themes/default/elements/reveal.overrides +0 -0
  119. data/assets/stylesheets/semantic_ui/themes/default/elements/reveal.variables +6 -4
  120. data/assets/stylesheets/semantic_ui/themes/default/elements/segment.overrides +0 -0
  121. data/assets/stylesheets/semantic_ui/themes/default/elements/segment.variables +66 -28
  122. data/assets/stylesheets/semantic_ui/themes/default/elements/step.overrides +0 -0
  123. data/assets/stylesheets/semantic_ui/themes/default/elements/step.variables +60 -31
  124. data/assets/stylesheets/semantic_ui/themes/default/globals/reset.overrides +0 -0
  125. data/assets/stylesheets/semantic_ui/themes/default/globals/site.variables +477 -303
  126. data/assets/stylesheets/semantic_ui/themes/default/modules/accordion.overrides +0 -0
  127. data/assets/stylesheets/semantic_ui/themes/default/modules/accordion.variables +6 -7
  128. data/assets/stylesheets/semantic_ui/themes/default/modules/chatroom.overrides +0 -0
  129. data/assets/stylesheets/semantic_ui/themes/default/modules/checkbox.overrides +19 -16
  130. data/assets/stylesheets/semantic_ui/themes/default/modules/checkbox.variables +71 -43
  131. data/assets/stylesheets/semantic_ui/themes/default/modules/dimmer.overrides +0 -0
  132. data/assets/stylesheets/semantic_ui/themes/default/modules/dimmer.variables +12 -9
  133. data/assets/stylesheets/semantic_ui/themes/default/modules/dropdown.overrides +0 -5
  134. data/assets/stylesheets/semantic_ui/themes/default/modules/dropdown.variables +146 -64
  135. data/assets/stylesheets/semantic_ui/themes/default/modules/{video.overrides → embed.overrides} +0 -0
  136. data/assets/stylesheets/semantic_ui/themes/default/modules/embed.variables +53 -0
  137. data/assets/stylesheets/semantic_ui/themes/default/modules/modal.overrides +0 -0
  138. data/assets/stylesheets/semantic_ui/themes/default/modules/modal.variables +24 -18
  139. data/assets/stylesheets/semantic_ui/themes/default/modules/nag.overrides +0 -0
  140. data/assets/stylesheets/semantic_ui/themes/default/modules/popup.overrides +0 -0
  141. data/assets/stylesheets/semantic_ui/themes/default/modules/popup.variables +3 -9
  142. data/assets/stylesheets/semantic_ui/themes/default/modules/progress.variables +13 -7
  143. data/assets/stylesheets/semantic_ui/themes/default/modules/rating.overrides +0 -0
  144. data/assets/stylesheets/semantic_ui/themes/default/modules/rating.variables +71 -33
  145. data/assets/stylesheets/semantic_ui/themes/default/modules/search.overrides +0 -0
  146. data/assets/stylesheets/semantic_ui/themes/default/modules/search.variables +36 -34
  147. data/assets/stylesheets/semantic_ui/themes/default/modules/shape.overrides +0 -0
  148. data/assets/stylesheets/semantic_ui/themes/default/modules/shape.variables +7 -2
  149. data/assets/stylesheets/semantic_ui/themes/default/modules/sidebar.overrides +0 -0
  150. data/assets/stylesheets/semantic_ui/themes/default/modules/sidebar.variables +2 -5
  151. data/assets/stylesheets/semantic_ui/themes/default/modules/sticky.overrides +0 -0
  152. data/assets/stylesheets/semantic_ui/themes/default/modules/sticky.variables +2 -7
  153. data/assets/stylesheets/semantic_ui/themes/default/modules/tab.variables +1 -3
  154. data/assets/stylesheets/semantic_ui/themes/default/modules/transition.overrides +8 -9
  155. data/assets/stylesheets/semantic_ui/themes/default/views/ad.variables +2 -2
  156. data/assets/stylesheets/semantic_ui/themes/default/views/card.variables +33 -23
  157. data/assets/stylesheets/semantic_ui/themes/default/views/comment.overrides +0 -0
  158. data/assets/stylesheets/semantic_ui/themes/default/views/feed.overrides +0 -0
  159. data/assets/stylesheets/semantic_ui/themes/default/views/feed.variables +15 -23
  160. data/assets/stylesheets/semantic_ui/themes/default/views/item.overrides +0 -0
  161. data/assets/stylesheets/semantic_ui/themes/default/views/item.variables +12 -11
  162. data/assets/stylesheets/semantic_ui/themes/default/views/statistic.overrides +0 -0
  163. data/assets/stylesheets/semantic_ui/themes/default/views/statistic.variables +25 -24
  164. data/assets/stylesheets/semantic_ui/themes/flat/collections/form.overrides +4 -0
  165. data/assets/stylesheets/semantic_ui/themes/flat/collections/form.variables +1 -2
  166. data/assets/stylesheets/semantic_ui/themes/flat/globals/site.variables +1 -0
  167. data/assets/stylesheets/semantic_ui/themes/github/collections/form.variables +1 -1
  168. data/assets/stylesheets/semantic_ui/themes/github/collections/menu.variables +10 -15
  169. data/assets/stylesheets/semantic_ui/themes/github/elements/button.variables +2 -2
  170. data/assets/stylesheets/semantic_ui/themes/github/elements/step.variables +2 -2
  171. data/assets/stylesheets/semantic_ui/themes/instagram/views/card.overrides +12 -0
  172. data/assets/stylesheets/semantic_ui/themes/instagram/views/card.variables +23 -0
  173. data/assets/stylesheets/semantic_ui/themes/material/collections/menu.overrides +1 -0
  174. data/assets/stylesheets/semantic_ui/themes/material/collections/menu.variables +10 -0
  175. data/assets/stylesheets/semantic_ui/themes/material/elements/button.overrides +1 -0
  176. data/assets/stylesheets/semantic_ui/themes/material/elements/button.variables +14 -6
  177. data/assets/stylesheets/semantic_ui/themes/material/globals/site.variables +3 -2
  178. data/assets/stylesheets/semantic_ui/themes/material/modules/dropdown.overrides +5 -0
  179. data/assets/stylesheets/semantic_ui/themes/material/modules/dropdown.variables +20 -0
  180. data/assets/stylesheets/semantic_ui/themes/raised/elements/button.variables +5 -5
  181. data/assets/stylesheets/semantic_ui/themes/round/elements/button.variables +1 -1
  182. data/assets/stylesheets/semantic_ui/themes/timeline/views/feed.overrides +4 -12
  183. data/assets/stylesheets/semantic_ui/themes/timeline/views/feed.variables +3 -7
  184. data/lib/generators/semantic_ui/install/templates/config/elements/container.overrides +3 -0
  185. data/lib/generators/semantic_ui/install/templates/config/elements/container.variables +3 -0
  186. data/lib/generators/semantic_ui/install/templates/config/modules/embed.overrides +3 -0
  187. data/lib/generators/semantic_ui/install/templates/config/modules/embed.variables +0 -0
  188. data/lib/generators/semantic_ui/install/templates/semantic_ui.css +2 -1
  189. data/lib/generators/semantic_ui/install/templates/semantic_ui.js +1 -1
  190. data/lib/generators/semantic_ui/install/templates/theme.config +5 -3
  191. data/lib/less/rails/semantic_ui/version.rb +1 -1
  192. data/tasks/update.rake +21 -6
  193. metadata +23 -7
  194. data/assets/fonts/semantic_ui/themes/default/assets/fonts/icons.otf +0 -0
  195. data/assets/javascripts/semantic_ui/definitions/modules/video.js +0 -540
  196. data/assets/stylesheets/semantic_ui/definitions/modules/video.less +0 -135
  197. data/assets/stylesheets/semantic_ui/themes/default/modules/video.variables +0 -16
@@ -3,7 +3,7 @@
3
3
  * http://github.com/semantic-org/semantic-ui/
4
4
  *
5
5
  *
6
- * Copyright 2014 Contributors
6
+ * Copyright 2015 Contributors
7
7
  * Released under the MIT license
8
8
  * http://opensource.org/licenses/MIT
9
9
  *
@@ -63,11 +63,12 @@ $.fn.progress = function(parameters) {
63
63
  initialize: function() {
64
64
  module.debug('Initializing progress bar', settings);
65
65
 
66
- transitionEnd = module.get.transitionEnd();
66
+ module.set.duration();
67
+ module.set.transitionEvent();
67
68
 
68
69
  module.read.metadata();
69
- module.set.duration();
70
- module.set.initials();
70
+ module.read.settings();
71
+
71
72
  module.instantiate();
72
73
  },
73
74
 
@@ -98,92 +99,115 @@ $.fn.progress = function(parameters) {
98
99
 
99
100
  read: {
100
101
  metadata: function() {
101
- if( $module.data(metadata.percent) ) {
102
- module.verbose('Current percent value set from metadata');
103
- module.percent = $module.data(metadata.percent);
102
+ var
103
+ data = {
104
+ percent : $module.data(metadata.percent),
105
+ total : $module.data(metadata.total),
106
+ value : $module.data(metadata.value)
107
+ }
108
+ ;
109
+ if(data.percent) {
110
+ module.debug('Current percent value set from metadata', data.percent);
111
+ module.set.percent(data.percent);
104
112
  }
105
- if( $module.data(metadata.total) ) {
106
- module.verbose('Total value set from metadata');
107
- module.total = $module.data(metadata.total);
113
+ if(data.total) {
114
+ module.debug('Total value set from metadata', data.total);
115
+ module.set.total(data.total);
108
116
  }
109
- if( $module.data(metadata.value) ) {
110
- module.verbose('Current value set from metadata');
111
- module.value = $module.data(metadata.value);
117
+ if(data.value) {
118
+ module.debug('Current value set from metadata', data.value);
119
+ module.set.value(data.value);
112
120
  }
113
121
  },
114
- currentValue: function() {
115
- return (module.value !== undefined)
116
- ? module.value
117
- : false
118
- ;
122
+ settings: function() {
123
+ if(settings.total !== false) {
124
+ module.debug('Current total set in settings', settings.total);
125
+ module.set.total(settings.total);
126
+ }
127
+ if(settings.value !== false) {
128
+ module.debug('Current value set in settings', settings.value);
129
+ module.set.value(settings.value);
130
+ module.set.progress(module.value);
131
+ }
132
+ if(settings.percent !== false) {
133
+ module.debug('Current percent set in settings', settings.percent);
134
+ module.set.percent(settings.percent);
135
+ }
119
136
  }
120
137
  },
121
138
 
122
139
  increment: function(incrementValue) {
123
140
  var
124
- total = module.total || false,
125
- edgeValue,
141
+ maxValue,
126
142
  startValue,
127
143
  newValue
128
144
  ;
129
- if(total) {
130
- startValue = module.value || 0;
145
+ if( module.has.total() ) {
146
+ startValue = module.get.value();
131
147
  incrementValue = incrementValue || 1;
148
+
132
149
  newValue = startValue + incrementValue;
133
- edgeValue = module.total;
134
- module.debug('Incrementing value by', incrementValue, startValue, edgeValue);
135
- if(newValue > edgeValue ) {
136
- module.debug('Value cannot increment above total', edgeValue);
137
- newValue = edgeValue;
150
+ maxValue = module.get.total();
151
+
152
+ module.debug('Incrementing value', startValue, newValue, maxValue);
153
+ if(newValue > maxValue ) {
154
+ module.debug('Value cannot increment above total', maxValue);
155
+ newValue = maxValue;
138
156
  }
139
- module.set.progress(newValue);
140
157
  }
141
158
  else {
142
- startValue = module.percent || 0;
159
+ startValue = module.get.percent();
143
160
  incrementValue = incrementValue || module.get.randomValue();
161
+
144
162
  newValue = startValue + incrementValue;
145
- edgeValue = 100;
146
- module.debug('Incrementing percentage by', incrementValue, startValue);
147
- if(newValue > edgeValue ) {
163
+ maxValue = 100;
164
+
165
+ module.debug('Incrementing percentage by', startValue, newValue);
166
+ if(newValue > maxValue ) {
148
167
  module.debug('Value cannot increment above 100 percent');
149
- newValue = edgeValue;
168
+ newValue = maxValue;
150
169
  }
151
- module.set.progress(newValue);
152
170
  }
171
+ module.set.progress(newValue);
153
172
  },
154
173
  decrement: function(decrementValue) {
155
174
  var
156
- total = module.total || false,
157
- edgeValue = 0,
175
+ total = module.get.total(),
158
176
  startValue,
159
177
  newValue
160
178
  ;
161
179
  if(total) {
162
- startValue = module.value || 0;
180
+ startValue = module.get.value();
163
181
  decrementValue = decrementValue || 1;
164
182
  newValue = startValue - decrementValue;
165
183
  module.debug('Decrementing value by', decrementValue, startValue);
166
184
  }
167
185
  else {
168
- startValue = module.percent || 0;
186
+ startValue = module.get.percent();
169
187
  decrementValue = decrementValue || module.get.randomValue();
170
188
  newValue = startValue - decrementValue;
171
189
  module.debug('Decrementing percentage by', decrementValue, startValue);
172
190
  }
173
191
 
174
- if(newValue < edgeValue) {
192
+ if(newValue < 0) {
175
193
  module.debug('Value cannot decrement below 0');
176
194
  newValue = 0;
177
195
  }
178
196
  module.set.progress(newValue);
179
197
  },
180
198
 
199
+ has: {
200
+ total: function() {
201
+ return (module.get.total() !== false);
202
+ }
203
+ },
204
+
181
205
  get: {
182
206
  text: function(templateText) {
183
207
  var
184
208
  value = module.value || 0,
185
209
  total = module.total || 0,
186
- percent = (module.is.visible() && animating)
210
+ percent = (animating)
187
211
  ? module.get.displayPercent()
188
212
  : module.percent || 0,
189
213
  left = (module.total > 0)
@@ -200,11 +224,22 @@ $.fn.progress = function(parameters) {
200
224
  module.debug('Adding variables to progress bar text', templateText);
201
225
  return templateText;
202
226
  },
227
+
228
+
203
229
  randomValue: function() {
204
230
  module.debug('Generating random increment percentage');
205
231
  return Math.floor((Math.random() * settings.random.max) + settings.random.min);
206
232
  },
207
233
 
234
+ numericValue: function(value) {
235
+ return (typeof value === 'string')
236
+ ? (value.replace(/[^\d.]/g, '') !== '')
237
+ ? +(value.replace(/[^\d.]/g, ''))
238
+ : false
239
+ : value
240
+ ;
241
+ },
242
+
208
243
  transitionEnd: function() {
209
244
  var
210
245
  element = document.createElement('element'),
@@ -233,17 +268,17 @@ $.fn.progress = function(parameters) {
233
268
  ? (barWidth / totalWidth * 100)
234
269
  : module.percent
235
270
  ;
236
- if(settings.precision === 0) {
237
- return Math.round(displayPercent);
238
- }
239
- return Math.round(displayPercent * (10 * settings.precision)) / (10 * settings.precision);
271
+ return (settings.precision > 0)
272
+ ? Math.round(displayPercent * (10 * settings.precision)) / (10 * settings.precision)
273
+ : Math.round(displayPercent)
274
+ ;
240
275
  },
241
276
 
242
277
  percent: function() {
243
278
  return module.percent || 0;
244
279
  },
245
280
  value: function() {
246
- return module.value || false;
281
+ return module.value || 0;
247
282
  },
248
283
  total: function() {
249
284
  return module.total || false;
@@ -319,66 +354,37 @@ $.fn.progress = function(parameters) {
319
354
  module.verbose('Setting progress bar transition duration', duration);
320
355
  $bar
321
356
  .css({
322
- '-webkit-transition-duration': duration,
323
- '-moz-transition-duration': duration,
324
- '-ms-transition-duration': duration,
325
- '-o-transition-duration': duration,
326
357
  'transition-duration': duration
327
358
  })
328
359
  ;
329
360
  },
330
- initials: function() {
331
- if(settings.total !== false) {
332
- module.verbose('Current total set in settings', settings.total);
333
- module.total = settings.total;
334
- }
335
- if(settings.value !== false) {
336
- module.verbose('Current value set in settings', settings.value);
337
- module.value = settings.value;
338
- }
339
- if(settings.percent !== false) {
340
- module.verbose('Current percent set in settings', settings.percent);
341
- module.percent = settings.percent;
342
- }
343
- if(module.percent !== undefined) {
344
- module.set.percent(module.percent);
345
- }
346
- else if(module.value !== undefined) {
347
- module.set.progress(module.value);
348
- }
349
- },
350
361
  percent: function(percent) {
351
362
  percent = (typeof percent == 'string')
352
363
  ? +(percent.replace('%', ''))
353
364
  : percent
354
365
  ;
355
- if(percent > 0 && percent < 1) {
356
- module.verbose('Module percentage passed as decimal, converting');
357
- percent = percent * 100;
358
- }
359
- // round percentage
360
- if(settings.precision === 0) {
361
- percent = Math.round(percent);
362
- }
363
- else {
364
- percent = Math.round(percent * (10 * settings.precision)) / (10 * settings.precision);
365
- }
366
+ // round display percentage
367
+ percent = (settings.precision > 0)
368
+ ? Math.round(percent * (10 * settings.precision)) / (10 * settings.precision)
369
+ : Math.round(percent)
370
+ ;
366
371
  module.percent = percent;
367
- if(module.total) {
368
- module.value = Math.round( (percent / 100) * module.total * (10 * settings.precision)) / (10 * settings.precision);
369
- }
370
- else if(settings.limitValues) {
371
- module.value = (module.value > 100)
372
- ? 100
373
- : (module.value < 0)
374
- ? 0
375
- : module.value
372
+ if( !module.has.total() ) {
373
+ module.value = (settings.precision > 0)
374
+ ? Math.round( (percent / 100) * module.total * (10 * settings.precision)) / (10 * settings.precision)
375
+ : Math.round( (percent / 100) * module.total * 10) / 10
376
376
  ;
377
+ if(settings.limitValues) {
378
+ module.value = (module.value > 100)
379
+ ? 100
380
+ : (module.value < 0)
381
+ ? 0
382
+ : module.value
383
+ ;
384
+ }
377
385
  }
378
386
  module.set.barWidth(percent);
379
- if( module.is.visible() ) {
380
- module.set.labelInterval();
381
- }
387
+ module.set.labelInterval();
382
388
  module.set.labels();
383
389
  settings.onChange.call(element, percent, module.value, module.total);
384
390
  },
@@ -500,23 +506,25 @@ $.fn.progress = function(parameters) {
500
506
  }
501
507
  settings.onError.call(element, module.value, module.total);
502
508
  },
509
+ transitionEvent: function() {
510
+ transitionEnd = module.get.transitionEnd();
511
+ },
503
512
  total: function(totalValue) {
504
513
  module.total = totalValue;
505
514
  },
515
+ value: function(value) {
516
+ module.value = value;
517
+ },
506
518
  progress: function(value) {
507
519
  var
508
- numericValue = (typeof value === 'string')
509
- ? (value.replace(/[^\d.]/g, '') !== '')
510
- ? +(value.replace(/[^\d.]/g, ''))
511
- : false
512
- : value,
520
+ numericValue = module.get.numericValue(value),
513
521
  percentComplete
514
522
  ;
515
523
  if(numericValue === false) {
516
524
  module.error(error.nonNumeric, value);
517
525
  }
518
- if(module.total) {
519
- module.value = numericValue;
526
+ if( module.has.total() ) {
527
+ module.set.value(numericValue);
520
528
  percentComplete = (numericValue / module.total) * 100;
521
529
  module.debug('Calculating percent complete from total', percentComplete);
522
530
  module.set.percent( percentComplete );
@@ -598,7 +606,7 @@ $.fn.progress = function(parameters) {
598
606
  });
599
607
  }
600
608
  clearTimeout(module.performance.timer);
601
- module.performance.timer = setTimeout(module.performance.display, 100);
609
+ module.performance.timer = setTimeout(module.performance.display, 500);
602
610
  },
603
611
  display: function() {
604
612
  var
@@ -711,8 +719,8 @@ $.fn.progress.settings = {
711
719
  name : 'Progress',
712
720
  namespace : 'progress',
713
721
 
714
- debug : false,
715
- verbose : true,
722
+ debug : true,
723
+ verbose : false,
716
724
  performance : true,
717
725
 
718
726
  random : {
@@ -727,7 +735,7 @@ $.fn.progress.settings = {
727
735
  limitValues : true,
728
736
 
729
737
  label : 'percent',
730
- precision : 1,
738
+ precision : 0,
731
739
  framerate : (1000 / 30), /// 30 fps
732
740
 
733
741
  percent : false,
@@ -3,7 +3,7 @@
3
3
  * http://github.com/semantic-org/semantic-ui/
4
4
  *
5
5
  *
6
- * Copyright 2014 Contributors
6
+ * Copyright 2015 Contributors
7
7
  * Released under the MIT license
8
8
  * http://opensource.org/licenses/MIT
9
9
  *
@@ -66,14 +66,7 @@ $.fn.rating = function(parameters) {
66
66
  else {
67
67
  module.disable();
68
68
  }
69
- if(settings.initialRating) {
70
- module.debug('Setting initial rating');
71
- module.setRating(settings.initialRating);
72
- }
73
- if( $module.data(metadata.rating) ) {
74
- module.debug('Rating found in metadata');
75
- module.setRating( $module.data(metadata.rating) );
76
- }
69
+ module.set.rating( module.get.initialRating() );
77
70
  module.instantiate();
78
71
  },
79
72
 
@@ -87,12 +80,10 @@ $.fn.rating = function(parameters) {
87
80
 
88
81
  destroy: function() {
89
82
  module.verbose('Destroying previous instance', instance);
83
+ module.remove.events();
90
84
  $module
91
85
  .removeData(moduleNamespace)
92
86
  ;
93
- $icon
94
- .off(eventNamespace)
95
- ;
96
87
  },
97
88
 
98
89
  refresh: function() {
@@ -102,11 +93,12 @@ $.fn.rating = function(parameters) {
102
93
  setup: {
103
94
  layout: function() {
104
95
  var
105
- maxRating = $module.data(metadata.maxRating) || settings.maxRating
96
+ maxRating = module.get.maxRating(),
97
+ html = $.fn.rating.settings.templates.icon(maxRating)
106
98
  ;
107
99
  module.debug('Generating icon html dynamically');
108
100
  $module
109
- .html($.fn.rating.settings.templates.icon(maxRating))
101
+ .html(html)
110
102
  ;
111
103
  module.refresh();
112
104
  }
@@ -141,7 +133,7 @@ $.fn.rating = function(parameters) {
141
133
  click: function() {
142
134
  var
143
135
  $activeIcon = $(this),
144
- currentRating = module.getRating(),
136
+ currentRating = module.get.rating(),
145
137
  rating = $icon.index($activeIcon) + 1,
146
138
  canClear = (settings.clearable == 'auto')
147
139
  ? ($icon.length === 1)
@@ -151,31 +143,39 @@ $.fn.rating = function(parameters) {
151
143
  module.clearRating();
152
144
  }
153
145
  else {
154
- module.setRating( rating );
146
+ module.set.rating( rating );
155
147
  }
156
148
  }
157
149
  },
158
150
 
159
151
  clearRating: function() {
160
152
  module.debug('Clearing current rating');
161
- module.setRating(0);
153
+ module.set.rating(0);
162
154
  },
163
155
 
164
- getRating: function() {
165
- var
166
- currentRating = $icon.filter('.' + className.active).length
167
- ;
168
- module.verbose('Current rating retrieved', currentRating);
169
- return currentRating;
156
+ bind: {
157
+ events: function() {
158
+ module.verbose('Binding events');
159
+ $module
160
+ .on('mouseenter' + eventNamespace, selector.icon, module.event.mouseenter)
161
+ .on('mouseleave' + eventNamespace, selector.icon, module.event.mouseleave)
162
+ .on('click' + eventNamespace, selector.icon, module.event.click)
163
+ ;
164
+ }
165
+ },
166
+
167
+ remove: {
168
+ events: function() {
169
+ module.verbose('Removing events');
170
+ $module
171
+ .off(eventNamespace)
172
+ ;
173
+ }
170
174
  },
171
175
 
172
176
  enable: function() {
173
177
  module.debug('Setting rating to interactive mode');
174
- $icon
175
- .on('mouseenter' + eventNamespace, module.event.mouseenter)
176
- .on('mouseleave' + eventNamespace, module.event.mouseleave)
177
- .on('click' + eventNamespace, module.event.click)
178
- ;
178
+ module.bind.events();
179
179
  $module
180
180
  .removeClass(className.disabled)
181
181
  ;
@@ -183,37 +183,61 @@ $.fn.rating = function(parameters) {
183
183
 
184
184
  disable: function() {
185
185
  module.debug('Setting rating to read-only mode');
186
- $icon
187
- .off(eventNamespace)
188
- ;
186
+ module.remove.events();
189
187
  $module
190
188
  .addClass(className.disabled)
191
189
  ;
192
190
  },
193
191
 
194
- setRating: function(rating) {
195
- var
196
- ratingIndex = (rating - 1 >= 0)
197
- ? (rating - 1)
198
- : 0,
199
- $activeIcon = $icon.eq(ratingIndex)
200
- ;
201
- $module
202
- .removeClass(className.selected)
203
- ;
204
- $icon
205
- .removeClass(className.selected)
206
- .removeClass(className.active)
207
- ;
208
- if(rating > 0) {
209
- module.verbose('Setting current rating to', rating);
210
- $activeIcon
211
- .prevAll()
212
- .andSelf()
213
- .addClass(className.active)
192
+ get: {
193
+ initialRating: function() {
194
+ if($module.data(metadata.rating) !== undefined) {
195
+ $module.removeData(metadata.rating);
196
+ return $module.data(metadata.rating);
197
+ }
198
+ return settings.initialRating;
199
+ },
200
+ maxRating: function() {
201
+ if($module.data(metadata.maxRating) !== undefined) {
202
+ $module.removeData(metadata.maxRating);
203
+ return $module.data(metadata.maxRating);
204
+ }
205
+ return settings.maxRating;
206
+ },
207
+ rating: function() {
208
+ var
209
+ currentRating = $icon.filter('.' + className.active).length
210
+ ;
211
+ module.verbose('Current rating retrieved', currentRating);
212
+ return currentRating;
213
+ }
214
+ },
215
+
216
+ set: {
217
+ rating: function(rating) {
218
+ var
219
+ ratingIndex = (rating - 1 >= 0)
220
+ ? (rating - 1)
221
+ : 0,
222
+ $activeIcon = $icon.eq(ratingIndex)
223
+ ;
224
+ $module
225
+ .removeClass(className.selected)
226
+ ;
227
+ $icon
228
+ .removeClass(className.selected)
229
+ .removeClass(className.active)
214
230
  ;
231
+ if(rating > 0) {
232
+ module.verbose('Setting current rating to', rating);
233
+ $activeIcon
234
+ .prevAll()
235
+ .andSelf()
236
+ .addClass(className.active)
237
+ ;
238
+ }
239
+ settings.onRate.call(element, rating);
215
240
  }
216
- settings.onRate.call(element, rating);
217
241
  },
218
242
 
219
243
  setting: function(name, value) {
@@ -285,7 +309,7 @@ $.fn.rating = function(parameters) {
285
309
  });
286
310
  }
287
311
  clearTimeout(module.performance.timer);
288
- module.performance.timer = setTimeout(module.performance.display, 100);
312
+ module.performance.timer = setTimeout(module.performance.display, 500);
289
313
  },
290
314
  display: function() {
291
315
  var
@@ -400,7 +424,7 @@ $.fn.rating.settings = {
400
424
  namespace : 'rating',
401
425
 
402
426
  debug : false,
403
- verbose : true,
427
+ verbose : false,
404
428
  performance : true,
405
429
 
406
430
  initialRating : 0,