concisecss 0.0.3 → 0.0.4

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 (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);