concisecss 0.0.3 → 0.0.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (39) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +1 -1
  3. data/app/assets/javascripts/concisecss/close.js +4 -4
  4. data/app/assets/javascripts/concisecss/dropdown.js +30 -30
  5. data/app/assets/javascripts/concisecss/naver.js +348 -348
  6. data/app/assets/javascripts/concisecss/navigation.js +18 -18
  7. data/app/assets/javascripts/concisecss/non-responsive.js +46 -46
  8. data/app/assets/stylesheets/_defaults.scss +55 -58
  9. data/app/assets/stylesheets/base/_blockquotes.scss +32 -32
  10. data/app/assets/stylesheets/base/_container.scss +8 -8
  11. data/app/assets/stylesheets/base/_forms.scss +83 -81
  12. data/app/assets/stylesheets/base/_grid.scss +63 -59
  13. data/app/assets/stylesheets/base/_headings.scss +137 -134
  14. data/app/assets/stylesheets/base/_lists.scss +109 -109
  15. data/app/assets/stylesheets/base/_main.scss +28 -25
  16. data/app/assets/stylesheets/base/_selection.scss +18 -18
  17. data/app/assets/stylesheets/base/_tables.scss +78 -76
  18. data/app/assets/stylesheets/base/_type.scss +50 -50
  19. data/app/assets/stylesheets/concise.scss +7 -12
  20. data/app/assets/stylesheets/generic/_clearfix.scss +9 -9
  21. data/app/assets/stylesheets/generic/_conditional.scss +111 -107
  22. data/app/assets/stylesheets/generic/_helper.scss +81 -81
  23. data/app/assets/stylesheets/generic/_mixins.scss +73 -66
  24. data/app/assets/stylesheets/generic/_normalize.scss +189 -189
  25. data/app/assets/stylesheets/generic/_print.scss +105 -104
  26. data/app/assets/stylesheets/generic/_shared.scss +36 -32
  27. data/app/assets/stylesheets/objects/_badges.scss +43 -43
  28. data/app/assets/stylesheets/objects/_breadcrumbs.scss +30 -30
  29. data/app/assets/stylesheets/objects/_buttons.scss +264 -264
  30. data/app/assets/stylesheets/objects/_colors.scss +28 -25
  31. data/app/assets/stylesheets/objects/_dropdowns.scss +153 -153
  32. data/app/assets/stylesheets/objects/_groups.scss +82 -82
  33. data/app/assets/stylesheets/objects/_navigation.scss +330 -325
  34. data/app/assets/stylesheets/objects/_progress.scss +92 -88
  35. data/app/assets/stylesheets/objects/_wells.scss +93 -93
  36. data/lib/concisecss/concisecss_source.rb +1 -6
  37. data/lib/concisecss/version.rb +1 -1
  38. metadata +2 -3
  39. data/app/assets/stylesheets/generic/_debug.scss +0 -98
@@ -7,352 +7,352 @@
7
7
  */
8
8
 
9
9
  ;(function ($, window) {
10
- "use strict";
11
-
12
- /**
13
- * @options
14
- * @param customClass [string] <''> "Class applied to instance"
15
- * @param label [boolean] <true> "Display handle width label"
16
- * @param labels.closed [string] <'Navigation'> "Closed state text"
17
- * @param labels.open [string] <'Close'> "Open state text"
18
- * @param maxWidth [string] <'980px'> "Width at which to auto-disable plugin"
19
- */
20
- var options = {
21
- customClass: "",
22
- label: true,
23
- labels: {
24
- closed: "Navigation",
25
- open: "Close"
26
- },
27
- maxWidth: "980px"
28
- };
29
-
30
- /**
31
- * @events
32
- * @event open.naver "Navigation opened"
33
- * @event close.naver "Navigation closed"
34
- */
35
-
36
- var pub = {
37
-
38
- /**
39
- * @method
40
- * @name close
41
- * @description Closes instance
42
- * @example $(".target").naver("close");
43
- */
44
- close: function(e) {
45
- return $(this).each(function(i, nav) {
46
- var data = $(nav).data("naver");
47
-
48
- if (data && data.$nav.hasClass("enabled")) {
49
- data.$wrapper.css({
50
- height: 0
51
- });
52
- if (data.label) {
53
- data.$handle.html(data.labels.closed);
54
- }
55
- data.$nav.removeClass("open")
56
- .trigger("close.naver");
57
- }
58
- });
59
- },
60
-
61
- /**
62
- * @method
63
- * @name defaults
64
- * @description Sets default plugin options
65
- * @param opts [object] <{}> "Options object"
66
- * @example $.naver("defaults", opts);
67
- */
68
- defaults: function(opts) {
69
- options = $.extend(true, options, opts || {});
70
- return $(this);
71
- },
72
-
73
- /**
74
- * @method
75
- * @name disable
76
- * @description Disables instance
77
- * @example $(".target").naver("disable");
78
- */
79
- disable: function() {
80
- return $(this).each(function(i, nav) {
81
- var data = $(nav).data("naver");
82
-
83
- if (data) {
84
- data.$nav.removeClass("enabled");
85
- data.$wrapper.css({ height: "" });
86
- }
87
- });
88
- },
89
-
90
- /**
91
- * @method
92
- * @name destroy
93
- * @description Destroys instance
94
- * @example $(".target").naver("destroy");
95
- */
96
- destroy: function() {
97
- return $(this).each(function(i, nav) {
98
- var data = $(nav).data("naver");
99
-
100
- if (data) {
101
- data.$handle.remove();
102
- data.$container.contents()
103
- .unwrap()
104
- .unwrap();
105
-
106
- data.$nav.removeClass("enabled disabled naver " + data.customClass)
107
- .off(".naver")
108
- .removeData("naver");
109
- }
110
- });
111
- },
112
-
113
- /**
114
- * @method
115
- * @name enable
116
- * @description Enables instance
117
- * @example $(".target").naver("enable");
118
- */
119
- enable: function() {
120
- return $(this).each(function(i, nav) {
121
- var data = $(nav).data("naver");
122
-
123
- if (data) {
124
- data.$nav.addClass("enabled");
125
- pub.close.apply(data.$nav);
126
- }
127
- });
128
- },
129
-
130
- /**
131
- * @method
132
- * @name open
133
- * @description Opens instance
134
- * @example $(".target").naver("open");
135
- */
136
- open: function() {
137
- return $(this).each(function(i, nav) {
138
- var data = $(nav).data("naver");
139
-
140
- if (data && data.$nav.hasClass("enabled")) {
141
- data.$wrapper.css({
142
- height: data.$container.outerHeight(true)
143
- });
144
- if (data.label) {
145
- data.$handle.html(data.labels.open);
146
- }
147
- data.$nav.addClass("open")
148
- .trigger("open.naver");
149
- }
150
- });
151
- }
152
- };
153
-
154
- /**
155
- * @method private
156
- * @name _init
157
- * @description Initializes plugin
158
- * @param opts [object] "Initialization options"
159
- */
160
- function _init(opts) {
161
- // Settings
162
- opts = $.extend(true, {}, options, opts);
163
-
164
- // Apply to each element
165
- var $items = $(this);
166
- for (var i = 0, count = $items.length; i < count; i++) {
167
- _build($items.eq(i), opts);
168
- }
169
- return $items;
170
- }
171
-
172
- /**
173
- * @method private
174
- * @name _build
175
- * @description Builds each instance
176
- * @param $nav [jQuery object] "Target jQuery object"
177
- * @param opts [object] <{}> "Options object"
178
- */
179
- function _build($nav, opts) {
180
- if (!$nav.data("naver")) {
181
- // Extend Options
182
- opts = $.extend(true, {}, opts, $nav.data("naver-options"));
183
-
184
- var $handle = $nav.find(".naver-handle").length ? $nav.find(".naver-handle").detach() : $('<span class="naver-handle"></span>');
185
-
186
- $nav.addClass("naver " + opts.customClass)
187
- .wrapInner('<div class="naver-container"></div>')
188
- .wrapInner('<div class="naver-wrapper"></div>')
189
- .prepend($handle);
190
-
191
- var data = $.extend(true, {
192
- $nav: $nav,
193
- $container: $nav.find(".naver-container"),
194
- $wrapper: $nav.find(".naver-wrapper"),
195
- $handle: $nav.find(".naver-handle")
196
- }, opts);
197
-
198
- data.$handle.text((opts.label) ? opts.labels.closed : '');
199
- data.$nav.on("touchstart.naver", ".naver-handle", data, _onTouchStart)
200
- .on("click.naver", ".naver-handle", data, _onClick)
201
- .data("naver", data);
202
-
203
-
204
- // Navtive MQ Support
205
- if (window.matchMedia !== undefined) {
206
- data.mediaQuery = window.matchMedia("(max-width:" + (data.maxWidth === Infinity ? "100000px" : data.maxWidth) + ")");
207
- // Make sure we stay in context
208
- data.mediaQuery.addListener(function() {
209
- _onRespond.apply(data.$nav);
210
- });
211
- _onRespond.apply(data.$nav);
212
- }
213
- }
214
- }
215
-
216
- /**
217
- * @method private
218
- * @name _onTouchStart
219
- * @description Handles touchstart to selected item
220
- * @param e [object] "Event data"
221
- */
222
- function _onTouchStart(e) {
223
- e.stopPropagation();
224
-
225
- var data = e.data,
226
- oe = e.originalEvent;
227
-
228
- _clearTimer(data.timer);
229
-
230
- data.touchStartX = oe.touches[0].clientX;
231
- data.touchStartY = oe.touches[0].clientY;
232
-
233
- data.$nav.on("touchmove.naver", ".naver-handle", data, _onTouchMove)
234
- .on("touchend.naver", ".naver-handle", data, _onTouchEnd);
235
- }
236
-
237
- /**
238
- * @method private
239
- * @name _onTouchMove
240
- * @description Handles touchmove to selected item
241
- * @param e [object] "Event data"
242
- */
243
- function _onTouchMove(e) {
244
- var data = e.data,
245
- oe = e.originalEvent;
246
-
247
- if (Math.abs(oe.touches[0].clientX - data.touchStartX) > 10 || Math.abs(oe.touches[0].clientY - data.touchStartY) > 10) {
248
- data.$nav.off("touchmove.naver touchend.naver");
249
- }
250
- }
251
-
252
- /**
253
- * @method private
254
- * @name _onTouchEnd
255
- * @description Handles touchend to selected item
256
- * @param e [object] "Event data"
257
- */
258
- function _onTouchEnd(e) {
259
- e.preventDefault();
260
- e.stopPropagation();
261
-
262
- var data = e.data;
263
-
264
- data.$nav.off("touchmove.naver touchend.naver click.naver");
265
-
266
- // prevent ghosty clicks
267
- data.timer = _startTimer(data.timer, 1000, function() {
268
- data.$nav.on("click.naver", ".naver-handle", data, _onClick);
269
- });
270
-
271
- _onClick(e);
272
- }
273
-
274
- /**
275
- * @method private
276
- * @name _onClick
277
- * @description Handles click nav click
278
- * @param e [object] "Event data"
279
- */
280
- function _onClick(e) {
281
- e.preventDefault();
282
- e.stopPropagation();
283
-
284
- var $target = $(e.currentTarget),
285
- data = e.data;
286
-
287
- // Close other open instances
288
- $(".naver").not(data.$nav)
289
- .naver("close");
290
-
291
- if (data.$nav.hasClass("open")) {
292
- pub.close.apply(data.$nav);
293
- } else {
294
- pub.open.apply(data.$nav);
295
- }
296
- }
297
-
298
- /**
299
- * @method private
300
- * @name _onRespond
301
- * @description Handles media query match change
302
- */
303
- function _onRespond() {
304
- var data = $(this).data("naver");
305
-
306
- if (data.mediaQuery.matches) {
307
- pub.enable.apply(data.$nav);
308
- } else {
309
- pub.disable.apply(data.$nav);
310
- }
311
- }
312
-
313
- /**
314
- * @method private
315
- * @name _startTimer
316
- * @description Starts an internal timer
317
- * @param timer [int] "Timer ID"
318
- * @param time [int] "Time until execution"
319
- * @param callback [int] "Function to execute"
320
- * @param interval [boolean] "Flag for recurring interval"
321
- */
322
- function _startTimer(timer, time, func, interval) {
323
- _clearTimer(timer, interval);
324
- if (interval === true) {
325
- return setInterval(func, time);
326
- } else {
327
- return setTimeout(func, time);
328
- }
329
- }
330
-
331
- /**
332
- * @method private
333
- * @name _clearTimer
334
- * @description Clears an internal timer
335
- * @param timer [int] "Timer ID"
336
- */
337
- function _clearTimer(timer) {
338
- if (timer !== null) {
339
- clearInterval(timer);
340
- timer = null;
341
- }
342
- }
343
-
344
- $.fn.naver = function(method) {
345
- if (pub[method]) {
346
- return pub[method].apply(this, Array.prototype.slice.call(arguments, 1));
347
- } else if (typeof method === 'object' || !method) {
348
- return _init.apply(this, arguments);
349
- }
350
- return this;
351
- };
352
-
353
- $.naver = function(method) {
354
- if (method === "defaults") {
355
- pub.defaults.apply(this, Array.prototype.slice.call(arguments, 1));
356
- }
357
- };
10
+ "use strict";
11
+
12
+ /**
13
+ * @options
14
+ * @param customClass [string] <''> "Class applied to instance"
15
+ * @param label [boolean] <true> "Display handle width label"
16
+ * @param labels.closed [string] <'Navigation'> "Closed state text"
17
+ * @param labels.open [string] <'Close'> "Open state text"
18
+ * @param maxWidth [string] <'980px'> "Width at which to auto-disable plugin"
19
+ */
20
+ var options = {
21
+ customClass: "",
22
+ label: true,
23
+ labels: {
24
+ closed: "Navigation",
25
+ open: "Close"
26
+ },
27
+ maxWidth: "980px"
28
+ };
29
+
30
+ /**
31
+ * @events
32
+ * @event open.naver "Navigation opened"
33
+ * @event close.naver "Navigation closed"
34
+ */
35
+
36
+ var pub = {
37
+
38
+ /**
39
+ * @method
40
+ * @name close
41
+ * @description Closes instance
42
+ * @example $(".target").naver("close");
43
+ */
44
+ close: function(e) {
45
+ return $(this).each(function(i, nav) {
46
+ var data = $(nav).data("naver");
47
+
48
+ if (data && data.$nav.hasClass("enabled")) {
49
+ data.$wrapper.css({
50
+ height: 0
51
+ });
52
+ if (data.label) {
53
+ data.$handle.html(data.labels.closed);
54
+ }
55
+ data.$nav.removeClass("open")
56
+ .trigger("close.naver");
57
+ }
58
+ });
59
+ },
60
+
61
+ /**
62
+ * @method
63
+ * @name defaults
64
+ * @description Sets default plugin options
65
+ * @param opts [object] <{}> "Options object"
66
+ * @example $.naver("defaults", opts);
67
+ */
68
+ defaults: function(opts) {
69
+ options = $.extend(true, options, opts || {});
70
+ return $(this);
71
+ },
72
+
73
+ /**
74
+ * @method
75
+ * @name disable
76
+ * @description Disables instance
77
+ * @example $(".target").naver("disable");
78
+ */
79
+ disable: function() {
80
+ return $(this).each(function(i, nav) {
81
+ var data = $(nav).data("naver");
82
+
83
+ if (data) {
84
+ data.$nav.removeClass("enabled");
85
+ data.$wrapper.css({ height: "" });
86
+ }
87
+ });
88
+ },
89
+
90
+ /**
91
+ * @method
92
+ * @name destroy
93
+ * @description Destroys instance
94
+ * @example $(".target").naver("destroy");
95
+ */
96
+ destroy: function() {
97
+ return $(this).each(function(i, nav) {
98
+ var data = $(nav).data("naver");
99
+
100
+ if (data) {
101
+ data.$handle.remove();
102
+ data.$container.contents()
103
+ .unwrap()
104
+ .unwrap();
105
+
106
+ data.$nav.removeClass("enabled disabled naver " + data.customClass)
107
+ .off(".naver")
108
+ .removeData("naver");
109
+ }
110
+ });
111
+ },
112
+
113
+ /**
114
+ * @method
115
+ * @name enable
116
+ * @description Enables instance
117
+ * @example $(".target").naver("enable");
118
+ */
119
+ enable: function() {
120
+ return $(this).each(function(i, nav) {
121
+ var data = $(nav).data("naver");
122
+
123
+ if (data) {
124
+ data.$nav.addClass("enabled");
125
+ pub.close.apply(data.$nav);
126
+ }
127
+ });
128
+ },
129
+
130
+ /**
131
+ * @method
132
+ * @name open
133
+ * @description Opens instance
134
+ * @example $(".target").naver("open");
135
+ */
136
+ open: function() {
137
+ return $(this).each(function(i, nav) {
138
+ var data = $(nav).data("naver");
139
+
140
+ if (data && data.$nav.hasClass("enabled")) {
141
+ data.$wrapper.css({
142
+ height: data.$container.outerHeight(true)
143
+ });
144
+ if (data.label) {
145
+ data.$handle.html(data.labels.open);
146
+ }
147
+ data.$nav.addClass("open")
148
+ .trigger("open.naver");
149
+ }
150
+ });
151
+ }
152
+ };
153
+
154
+ /**
155
+ * @method private
156
+ * @name _init
157
+ * @description Initializes plugin
158
+ * @param opts [object] "Initialization options"
159
+ */
160
+ function _init(opts) {
161
+ // Settings
162
+ opts = $.extend(true, {}, options, opts);
163
+
164
+ // Apply to each element
165
+ var $items = $(this);
166
+ for (var i = 0, count = $items.length; i < count; i++) {
167
+ _build($items.eq(i), opts);
168
+ }
169
+ return $items;
170
+ }
171
+
172
+ /**
173
+ * @method private
174
+ * @name _build
175
+ * @description Builds each instance
176
+ * @param $nav [jQuery object] "Target jQuery object"
177
+ * @param opts [object] <{}> "Options object"
178
+ */
179
+ function _build($nav, opts) {
180
+ if (!$nav.data("naver")) {
181
+ // Extend Options
182
+ opts = $.extend(true, {}, opts, $nav.data("naver-options"));
183
+
184
+ var $handle = $nav.find(".naver-handle").length ? $nav.find(".naver-handle").detach() : $('<span class="naver-handle"></span>');
185
+
186
+ $nav.addClass("naver " + opts.customClass)
187
+ .wrapInner('<div class="naver-container"></div>')
188
+ .wrapInner('<div class="naver-wrapper"></div>')
189
+ .prepend($handle);
190
+
191
+ var data = $.extend(true, {
192
+ $nav: $nav,
193
+ $container: $nav.find(".naver-container"),
194
+ $wrapper: $nav.find(".naver-wrapper"),
195
+ $handle: $nav.find(".naver-handle")
196
+ }, opts);
197
+
198
+ data.$handle.text((opts.label) ? opts.labels.closed : '');
199
+ data.$nav.on("touchstart.naver", ".naver-handle", data, _onTouchStart)
200
+ .on("click.naver", ".naver-handle", data, _onClick)
201
+ .data("naver", data);
202
+
203
+
204
+ // Navtive MQ Support
205
+ if (window.matchMedia !== undefined) {
206
+ data.mediaQuery = window.matchMedia("(max-width:" + (data.maxWidth === Infinity ? "100000px" : data.maxWidth) + ")");
207
+ // Make sure we stay in context
208
+ data.mediaQuery.addListener(function() {
209
+ _onRespond.apply(data.$nav);
210
+ });
211
+ _onRespond.apply(data.$nav);
212
+ }
213
+ }
214
+ }
215
+
216
+ /**
217
+ * @method private
218
+ * @name _onTouchStart
219
+ * @description Handles touchstart to selected item
220
+ * @param e [object] "Event data"
221
+ */
222
+ function _onTouchStart(e) {
223
+ e.stopPropagation();
224
+
225
+ var data = e.data,
226
+ oe = e.originalEvent;
227
+
228
+ _clearTimer(data.timer);
229
+
230
+ data.touchStartX = oe.touches[0].clientX;
231
+ data.touchStartY = oe.touches[0].clientY;
232
+
233
+ data.$nav.on("touchmove.naver", ".naver-handle", data, _onTouchMove)
234
+ .on("touchend.naver", ".naver-handle", data, _onTouchEnd);
235
+ }
236
+
237
+ /**
238
+ * @method private
239
+ * @name _onTouchMove
240
+ * @description Handles touchmove to selected item
241
+ * @param e [object] "Event data"
242
+ */
243
+ function _onTouchMove(e) {
244
+ var data = e.data,
245
+ oe = e.originalEvent;
246
+
247
+ if (Math.abs(oe.touches[0].clientX - data.touchStartX) > 10 || Math.abs(oe.touches[0].clientY - data.touchStartY) > 10) {
248
+ data.$nav.off("touchmove.naver touchend.naver");
249
+ }
250
+ }
251
+
252
+ /**
253
+ * @method private
254
+ * @name _onTouchEnd
255
+ * @description Handles touchend to selected item
256
+ * @param e [object] "Event data"
257
+ */
258
+ function _onTouchEnd(e) {
259
+ e.preventDefault();
260
+ e.stopPropagation();
261
+
262
+ var data = e.data;
263
+
264
+ data.$nav.off("touchmove.naver touchend.naver click.naver");
265
+
266
+ // prevent ghosty clicks
267
+ data.timer = _startTimer(data.timer, 1000, function() {
268
+ data.$nav.on("click.naver", ".naver-handle", data, _onClick);
269
+ });
270
+
271
+ _onClick(e);
272
+ }
273
+
274
+ /**
275
+ * @method private
276
+ * @name _onClick
277
+ * @description Handles click nav click
278
+ * @param e [object] "Event data"
279
+ */
280
+ function _onClick(e) {
281
+ e.preventDefault();
282
+ e.stopPropagation();
283
+
284
+ var $target = $(e.currentTarget),
285
+ data = e.data;
286
+
287
+ // Close other open instances
288
+ $(".naver").not(data.$nav)
289
+ .naver("close");
290
+
291
+ if (data.$nav.hasClass("open")) {
292
+ pub.close.apply(data.$nav);
293
+ } else {
294
+ pub.open.apply(data.$nav);
295
+ }
296
+ }
297
+
298
+ /**
299
+ * @method private
300
+ * @name _onRespond
301
+ * @description Handles media query match change
302
+ */
303
+ function _onRespond() {
304
+ var data = $(this).data("naver");
305
+
306
+ if (data.mediaQuery.matches) {
307
+ pub.enable.apply(data.$nav);
308
+ } else {
309
+ pub.disable.apply(data.$nav);
310
+ }
311
+ }
312
+
313
+ /**
314
+ * @method private
315
+ * @name _startTimer
316
+ * @description Starts an internal timer
317
+ * @param timer [int] "Timer ID"
318
+ * @param time [int] "Time until execution"
319
+ * @param callback [int] "Function to execute"
320
+ * @param interval [boolean] "Flag for recurring interval"
321
+ */
322
+ function _startTimer(timer, time, func, interval) {
323
+ _clearTimer(timer, interval);
324
+ if (interval === true) {
325
+ return setInterval(func, time);
326
+ } else {
327
+ return setTimeout(func, time);
328
+ }
329
+ }
330
+
331
+ /**
332
+ * @method private
333
+ * @name _clearTimer
334
+ * @description Clears an internal timer
335
+ * @param timer [int] "Timer ID"
336
+ */
337
+ function _clearTimer(timer) {
338
+ if (timer !== null) {
339
+ clearInterval(timer);
340
+ timer = null;
341
+ }
342
+ }
343
+
344
+ $.fn.naver = function(method) {
345
+ if (pub[method]) {
346
+ return pub[method].apply(this, Array.prototype.slice.call(arguments, 1));
347
+ } else if (typeof method === 'object' || !method) {
348
+ return _init.apply(this, arguments);
349
+ }
350
+ return this;
351
+ };
352
+
353
+ $.naver = function(method) {
354
+ if (method === "defaults") {
355
+ pub.defaults.apply(this, Array.prototype.slice.call(arguments, 1));
356
+ }
357
+ };
358
358
  })(jQuery, window);