coyote 0.5.2 → 0.6.1
Sign up to get free protection for your applications and to get access to all the features.
- data/Manifest +40 -2
- data/bin/coyote +16 -4
- data/coyote.gemspec +10 -9
- data/lib/coyote.rb +25 -34
- data/lib/coyote/configuration.rb +57 -61
- data/lib/coyote/generator.rb +35 -35
- data/lib/coyote/script.rb +122 -0
- data/lib/coyote/scripts/coffeescript.rb +32 -0
- data/lib/coyote/scripts/combine.rb +54 -0
- data/lib/coyote/scripts/javascript.rb +4 -0
- data/test/assets/javascripts/app/confio.coffee +2 -0
- data/test/assets/javascripts/app/confio/interface.coffee +8 -0
- data/test/assets/javascripts/app/confio/main.coffee +4 -0
- data/test/assets/javascripts/lib/keystone/extensions.coffee +8 -0
- data/test/assets/javascripts/lib/keystone/forms.coffee +19 -0
- data/test/assets/javascripts/lib/keystone/utilities.coffee +2 -0
- data/test/assets/stylesheets/app/_confio.scss +4 -0
- data/test/assets/stylesheets/app/confio/_ie.scss +39 -0
- data/test/assets/stylesheets/app/confio/_mobile.scss +28 -0
- data/test/assets/stylesheets/app/confio/_print.scss +129 -0
- data/test/assets/stylesheets/app/confio/_screen.scss +624 -0
- data/test/assets/stylesheets/lib/_keystone.scss +4 -0
- data/test/assets/stylesheets/lib/keystone/_css3.scss +6 -0
- data/test/assets/stylesheets/lib/keystone/_scaffolding.scss +2 -0
- data/test/assets/stylesheets/lib/keystone/_typography.scss +3 -0
- data/test/assets/stylesheets/lib/keystone/_utilities.scss +3 -0
- data/test/assets/stylesheets/lib/keystone/css3/_background-clip.scss +5 -0
- data/test/assets/stylesheets/lib/keystone/css3/_border-radius.scss +5 -0
- data/test/assets/stylesheets/lib/keystone/css3/_box-shadow.scss +5 -0
- data/test/assets/stylesheets/lib/keystone/css3/_box-sizing.scss +5 -0
- data/test/assets/stylesheets/lib/keystone/css3/_opacity.scss +6 -0
- data/test/assets/stylesheets/lib/keystone/css3/_transition.scss +5 -0
- data/test/assets/stylesheets/lib/keystone/scaffolding/_reset.scss +75 -0
- data/test/assets/stylesheets/lib/keystone/scaffolding/_structure.scss +23 -0
- data/test/assets/stylesheets/lib/keystone/typography/_links.scss +66 -0
- data/test/assets/stylesheets/lib/keystone/typography/_lists.scss +38 -0
- data/test/assets/stylesheets/lib/keystone/typography/_replacement.scss +12 -0
- data/test/assets/stylesheets/lib/keystone/utilities/_alignment.scss +3 -0
- data/test/assets/stylesheets/lib/keystone/utilities/_autoclear.scss +11 -0
- data/test/assets/stylesheets/lib/keystone/utilities/_hoverbox.scss +32 -0
- data/test/assets/stylesheets/styles.scss +58 -0
- data/test/assets/stylesheets/vendor/_vendor.scss +0 -0
- data/test/public/scripts/coyote.js +93 -0
- data/test/public/scripts/jquery.js +4 -0
- data/test/public/scripts/scripts.combine +6 -0
- data/test/public/scripts/scripts.js +91 -0
- metadata +61 -19
- data/lib/coyote/coy_file.rb +0 -64
- data/lib/coyote/output.rb +0 -72
@@ -0,0 +1,75 @@
|
|
1
|
+
@mixin global-reset {
|
2
|
+
html, body, div, span, applet, object, iframe,
|
3
|
+
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
|
4
|
+
a, abbr, acronym, address, big, cite, code,
|
5
|
+
del, dfn, em, img, ins, kbd, q, s, samp,
|
6
|
+
small, strike, strong, sub, sup, tt, var,
|
7
|
+
b, u, i, center,
|
8
|
+
dl, dt, dd, ol, ul, li,
|
9
|
+
fieldset, form, label, legend,
|
10
|
+
table, caption, tbody, tfoot, thead, tr, th, td,
|
11
|
+
article, aside, canvas, details, embed,
|
12
|
+
figure, figcaption, footer, header, hgroup,
|
13
|
+
menu, nav, output, ruby, section, summary,
|
14
|
+
time, mark, audio, video {
|
15
|
+
margin: 0;
|
16
|
+
padding: 0;
|
17
|
+
border: 0;
|
18
|
+
font-size: 100%;
|
19
|
+
font: inherit;
|
20
|
+
vertical-align: baseline;
|
21
|
+
}
|
22
|
+
|
23
|
+
article, aside, details, figcaption, figure,
|
24
|
+
footer, header, hgroup, menu, nav, section {
|
25
|
+
display: block;
|
26
|
+
}
|
27
|
+
|
28
|
+
body {
|
29
|
+
line-height: 1;
|
30
|
+
}
|
31
|
+
|
32
|
+
ol, ul {
|
33
|
+
list-style: none;
|
34
|
+
}
|
35
|
+
|
36
|
+
blockquote, q {
|
37
|
+
quotes: none;
|
38
|
+
}
|
39
|
+
|
40
|
+
blockquote:before, blockquote:after,
|
41
|
+
q:before, q:after {
|
42
|
+
content: "";
|
43
|
+
content: none;
|
44
|
+
}
|
45
|
+
|
46
|
+
table {
|
47
|
+
border-collapse: collapse;
|
48
|
+
border-spacing: 0;
|
49
|
+
}
|
50
|
+
}
|
51
|
+
|
52
|
+
@mixin imulus-reset {
|
53
|
+
input, select, textarea, button {
|
54
|
+
background: transparent;
|
55
|
+
margin: 0;
|
56
|
+
padding: 0;
|
57
|
+
border: 0;
|
58
|
+
}
|
59
|
+
|
60
|
+
ins {
|
61
|
+
text-decoration: none;
|
62
|
+
}
|
63
|
+
|
64
|
+
del {
|
65
|
+
text-decoration: line-through;
|
66
|
+
}
|
67
|
+
|
68
|
+
strong {
|
69
|
+
font-weight: bold;
|
70
|
+
}
|
71
|
+
|
72
|
+
em {
|
73
|
+
font-style: italic;
|
74
|
+
}
|
75
|
+
}
|
@@ -0,0 +1,23 @@
|
|
1
|
+
@mixin html($html-background: false) {
|
2
|
+
font: $font-size/normal $sans-serif;
|
3
|
+
color: $font-color;
|
4
|
+
@if $html-background {
|
5
|
+
background: $html-background;
|
6
|
+
}
|
7
|
+
overflow-y: scroll;
|
8
|
+
}
|
9
|
+
|
10
|
+
@mixin body($body-background: false) {
|
11
|
+
position: relative;
|
12
|
+
line-height: $baseline;
|
13
|
+
@if $body-background {
|
14
|
+
background: $body-background;
|
15
|
+
}
|
16
|
+
}
|
17
|
+
|
18
|
+
@mixin container($width) {
|
19
|
+
position: relative;
|
20
|
+
width: $width;
|
21
|
+
margin: 0 auto;
|
22
|
+
@include autoclear;
|
23
|
+
}
|
@@ -0,0 +1,66 @@
|
|
1
|
+
@mixin link-colors($normal, $hover: false, $active: false, $visited: false, $focus: false) {
|
2
|
+
color: $normal;
|
3
|
+
|
4
|
+
@if $visited {
|
5
|
+
&:visited {
|
6
|
+
color: $visited;
|
7
|
+
}
|
8
|
+
}
|
9
|
+
|
10
|
+
@if $focus {
|
11
|
+
&:focus {
|
12
|
+
color: $focus;
|
13
|
+
}
|
14
|
+
}
|
15
|
+
|
16
|
+
@if $hover {
|
17
|
+
&:hover {
|
18
|
+
color: $hover;
|
19
|
+
}
|
20
|
+
}
|
21
|
+
|
22
|
+
@if $active {
|
23
|
+
&:active {
|
24
|
+
color: $active;
|
25
|
+
}
|
26
|
+
}
|
27
|
+
}
|
28
|
+
|
29
|
+
@mixin link-underlines($normal, $hover: false, $active: false, $visited: false, $focus: false) {
|
30
|
+
text-decoration: $normal;
|
31
|
+
|
32
|
+
@if $visited {
|
33
|
+
&:visited {
|
34
|
+
text-decoration: $visited;
|
35
|
+
}
|
36
|
+
}
|
37
|
+
|
38
|
+
@if $focus {
|
39
|
+
&:focus {
|
40
|
+
text-decoration: $focus;
|
41
|
+
}
|
42
|
+
}
|
43
|
+
|
44
|
+
@if $hover {
|
45
|
+
&:hover {
|
46
|
+
text-decoration: $hover;
|
47
|
+
}
|
48
|
+
}
|
49
|
+
|
50
|
+
@if $active {
|
51
|
+
&:active {
|
52
|
+
text-decoration: $active;
|
53
|
+
}
|
54
|
+
}
|
55
|
+
}
|
56
|
+
|
57
|
+
@mixin unstyled-link {
|
58
|
+
color: inherit;
|
59
|
+
text-decoration: inherit;
|
60
|
+
cursor: inherit;
|
61
|
+
|
62
|
+
&:active,
|
63
|
+
&:focus {
|
64
|
+
outline: none;
|
65
|
+
}
|
66
|
+
}
|
@@ -0,0 +1,38 @@
|
|
1
|
+
@mixin no-bullets {
|
2
|
+
list-style: none;
|
3
|
+
margin-left: 0;
|
4
|
+
|
5
|
+
ul, ol {
|
6
|
+
list-style: none;
|
7
|
+
margin-left: 0;
|
8
|
+
}
|
9
|
+
}
|
10
|
+
|
11
|
+
@mixin inline-list {
|
12
|
+
@include no-bullets;
|
13
|
+
float: left;
|
14
|
+
|
15
|
+
li {
|
16
|
+
float: left;
|
17
|
+
}
|
18
|
+
}
|
19
|
+
|
20
|
+
@mixin fancy-lists {
|
21
|
+
ul {
|
22
|
+
padding: 0 0 10px 15px;
|
23
|
+
|
24
|
+
li {
|
25
|
+
padding: 0 0 5px 15px;
|
26
|
+
background: url("/images/icons/bullet.png") left 5px no-repeat;
|
27
|
+
}
|
28
|
+
|
29
|
+
ul {
|
30
|
+
padding-bottom: 0;
|
31
|
+
padding-top: 5px;
|
32
|
+
|
33
|
+
li {
|
34
|
+
background-image: url("/images/icons/bullet-inner.png");
|
35
|
+
}
|
36
|
+
}
|
37
|
+
}
|
38
|
+
}
|
@@ -0,0 +1,12 @@
|
|
1
|
+
@mixin hide-text {
|
2
|
+
text-indent: -9999px;
|
3
|
+
overflow: hidden;
|
4
|
+
text-align: left;
|
5
|
+
}
|
6
|
+
|
7
|
+
@mixin image-replacement($image, $width, $height, $x: 0, $y: 0) {
|
8
|
+
@include hide-text;
|
9
|
+
background: url($image) $x $y no-repeat;
|
10
|
+
width: $width;
|
11
|
+
height: $height;
|
12
|
+
}
|
@@ -0,0 +1,32 @@
|
|
1
|
+
@mixin hoverbox {
|
2
|
+
a.hover-box img,
|
3
|
+
a.hover-box img.original {
|
4
|
+
float: left;
|
5
|
+
position: relative;
|
6
|
+
}
|
7
|
+
|
8
|
+
a.hover-box img.hover {
|
9
|
+
display: none;
|
10
|
+
}
|
11
|
+
|
12
|
+
a.hover-box {
|
13
|
+
position: relative;
|
14
|
+
float: left;
|
15
|
+
display: block;
|
16
|
+
}
|
17
|
+
|
18
|
+
a.hover-box:hover {
|
19
|
+
display: block;
|
20
|
+
font-size: 100%;
|
21
|
+
z-index: 1;
|
22
|
+
}
|
23
|
+
|
24
|
+
a.hover-box:hover img.hover {
|
25
|
+
display: block;
|
26
|
+
position: absolute;
|
27
|
+
float: left;
|
28
|
+
left: 0;
|
29
|
+
top: 0;
|
30
|
+
z-index: 10;
|
31
|
+
}
|
32
|
+
}
|
@@ -0,0 +1,58 @@
|
|
1
|
+
/* ----------------------------------------------------------------------------
|
2
|
+
|
3
|
+
Confio
|
4
|
+
Coded by Taylor Smith of Imulus
|
5
|
+
|
6
|
+
---------------------------------------------------------------------------- */
|
7
|
+
|
8
|
+
// Global Variables
|
9
|
+
|
10
|
+
|
11
|
+
// Site Styles
|
12
|
+
|
13
|
+
$html-background : #fff;
|
14
|
+
$body-background : #eee;
|
15
|
+
|
16
|
+
|
17
|
+
// Font Styles
|
18
|
+
|
19
|
+
$sans-serif : "Helvetica Neue", Arial, Helvetica, sans-serif;
|
20
|
+
$serif : "Georgia", "Times New Roman", Times, serif;
|
21
|
+
$monospace : "Andale Mono", "Lucida Console", monospace;
|
22
|
+
$font-size : 12px;
|
23
|
+
$baseline : 18px;
|
24
|
+
$font-color : #555;
|
25
|
+
|
26
|
+
|
27
|
+
// Links
|
28
|
+
|
29
|
+
$link-color : #3da1c9;
|
30
|
+
$link-hover : darken($link-color, 15);
|
31
|
+
|
32
|
+
|
33
|
+
// Grays
|
34
|
+
|
35
|
+
$black : #000;
|
36
|
+
$white : #fff;
|
37
|
+
$grey-dark : lighten($black, 25%);
|
38
|
+
$grey-mid : lighten($black, 50%);
|
39
|
+
$grey-light : lighten($black, 75%);
|
40
|
+
$off-white : lighten($black, 90%);
|
41
|
+
|
42
|
+
|
43
|
+
// Accent Colors
|
44
|
+
|
45
|
+
$blue : #049CDB;
|
46
|
+
$green : #46a546;
|
47
|
+
$red : #9d261d;
|
48
|
+
$yellow : #ffc40d;
|
49
|
+
$orange : #f89406;
|
50
|
+
$pink : #c3325f;
|
51
|
+
$purple : #7a43b6;
|
52
|
+
|
53
|
+
|
54
|
+
// Import Partials
|
55
|
+
|
56
|
+
@import "lib/keystone";
|
57
|
+
@import "app/confio";
|
58
|
+
@import "vendor/vendor";
|
File without changes
|
@@ -0,0 +1,93 @@
|
|
1
|
+
(function() {
|
2
|
+
this.module = function(names, fn) {
|
3
|
+
var space, _name;
|
4
|
+
if (typeof names === 'string') {
|
5
|
+
names = names.split('.');
|
6
|
+
}
|
7
|
+
space = this[_name = names.shift()] || (this[_name] = {});
|
8
|
+
space.module || (space.module = this.module);
|
9
|
+
if (names.length) {
|
10
|
+
return space.module(names, fn);
|
11
|
+
} else {
|
12
|
+
return fn.call(space);
|
13
|
+
}
|
14
|
+
};
|
15
|
+
}).call(this);
|
16
|
+
|
17
|
+
|
18
|
+
(function() {
|
19
|
+
this.module("Keystone", function() {
|
20
|
+
return this.Forms = (function() {
|
21
|
+
function Forms($form) {
|
22
|
+
this.build();
|
23
|
+
}
|
24
|
+
Forms.prototype.build = function() {
|
25
|
+
if (!Keystone.elementSupportsAttribute('input', 'placeholder')) {
|
26
|
+
return $('input[placeholder]').each(function() {
|
27
|
+
var $input, placeholder;
|
28
|
+
$input = $(this);
|
29
|
+
placeholder = $input.attr('placeholder');
|
30
|
+
$input.val(placeholder).addClass('inactive');
|
31
|
+
return $input.bind({
|
32
|
+
focus: function() {
|
33
|
+
if ($input.val() === placeholder) {
|
34
|
+
return $input.val('').removeClass('inactive');
|
35
|
+
}
|
36
|
+
},
|
37
|
+
blur: function() {
|
38
|
+
if ($input.val() === '') {
|
39
|
+
return $input.val(placeholder).addClass('inactive');
|
40
|
+
}
|
41
|
+
}
|
42
|
+
});
|
43
|
+
});
|
44
|
+
}
|
45
|
+
};
|
46
|
+
return Forms;
|
47
|
+
})();
|
48
|
+
});
|
49
|
+
}).call(this);
|
50
|
+
|
51
|
+
|
52
|
+
(function() {
|
53
|
+
Keystone.elementSupportsAttribute = function(element, attribute) {
|
54
|
+
return attribute in document.createElement(element);
|
55
|
+
};
|
56
|
+
}).call(this);
|
57
|
+
|
58
|
+
|
59
|
+
(function() {
|
60
|
+
this.module("ClientName", function() {
|
61
|
+
return this.Interface = (function() {
|
62
|
+
function Interface() {
|
63
|
+
this.build();
|
64
|
+
}
|
65
|
+
Interface.prototype.build = function() {
|
66
|
+
return new Keystone.Forms;
|
67
|
+
};
|
68
|
+
return Interface;
|
69
|
+
})();
|
70
|
+
});
|
71
|
+
}).call(this);
|
72
|
+
|
73
|
+
|
74
|
+
(function() {
|
75
|
+
this.module("ClientName", function() {
|
76
|
+
return this.main = function() {
|
77
|
+
return this.interface = new ClientName.Interface;
|
78
|
+
};
|
79
|
+
});
|
80
|
+
}).call(this);
|
81
|
+
|
82
|
+
|
83
|
+
(function() {
|
84
|
+
$(function() {
|
85
|
+
return ClientName.main();
|
86
|
+
});
|
87
|
+
}).call(this);
|
88
|
+
|
89
|
+
|
90
|
+
../../assets/javascripts/app/confio/interface.js../../assets/javascripts/app/confio/main.js
|
91
|
+
|
92
|
+
|
93
|
+
|