bourbon-compass 2.1.1.0
Sign up to get free protection for your applications and to get access to all the features.
- data/lib/bourbon-compass.rb +4 -0
- data/readme.md +31 -0
- data/stylesheets/bourbon/_bourbon.scss +40 -0
- data/stylesheets/bourbon/addons/_button.scss +273 -0
- data/stylesheets/bourbon/addons/_clearfix.scss +29 -0
- data/stylesheets/bourbon/addons/_font-face.scss +12 -0
- data/stylesheets/bourbon/addons/_font-family.scss +5 -0
- data/stylesheets/bourbon/addons/_hide-text.scss +15 -0
- data/stylesheets/bourbon/addons/_html5-input-types.scss +36 -0
- data/stylesheets/bourbon/addons/_position.scss +42 -0
- data/stylesheets/bourbon/addons/_timing-functions.scss +32 -0
- data/stylesheets/bourbon/css3/_animation.scss +125 -0
- data/stylesheets/bourbon/css3/_appearance.scss +3 -0
- data/stylesheets/bourbon/css3/_background-image.scss +57 -0
- data/stylesheets/bourbon/css3/_background-size.scss +11 -0
- data/stylesheets/bourbon/css3/_background.scss +107 -0
- data/stylesheets/bourbon/css3/_border-image.scss +56 -0
- data/stylesheets/bourbon/css3/_border-radius.scss +44 -0
- data/stylesheets/bourbon/css3/_box-shadow.scss +12 -0
- data/stylesheets/bourbon/css3/_box-sizing.scss +4 -0
- data/stylesheets/bourbon/css3/_columns.scss +47 -0
- data/stylesheets/bourbon/css3/_flex-box.scss +52 -0
- data/stylesheets/bourbon/css3/_inline-block.scss +8 -0
- data/stylesheets/bourbon/css3/_linear-gradient.scss +43 -0
- data/stylesheets/bourbon/css3/_prefixer.scss +12 -0
- data/stylesheets/bourbon/css3/_radial-gradient.scss +76 -0
- data/stylesheets/bourbon/css3/_transform.scss +11 -0
- data/stylesheets/bourbon/css3/_transition.scss +72 -0
- data/stylesheets/bourbon/css3/_user-select.scss +3 -0
- data/stylesheets/bourbon/functions/_deprecated-webkit-gradient.scss +44 -0
- data/stylesheets/bourbon/functions/_flex-grid.scss +35 -0
- data/stylesheets/bourbon/functions/_grid-width.scss +13 -0
- data/stylesheets/bourbon/functions/_linear-gradient.scss +23 -0
- data/stylesheets/bourbon/functions/_modular-scale.scss +40 -0
- data/stylesheets/bourbon/functions/_radial-gradient.scss +62 -0
- data/stylesheets/bourbon/functions/_render-gradients.scss +14 -0
- data/stylesheets/bourbon/functions/_tint-shade.scss +9 -0
- data/stylesheets/bourbon/functions/_transition-property-name.scss +22 -0
- data/stylesheets/bourbon/lib/bourbon.rb +19 -0
- data/stylesheets/bourbon/lib/bourbon/sass_extensions.rb +6 -0
- data/stylesheets/bourbon/lib/bourbon/sass_extensions/functions.rb +13 -0
- data/stylesheets/bourbon/lib/bourbon/sass_extensions/functions/compact.rb +14 -0
- metadata +118 -0
@@ -0,0 +1,23 @@
|
|
1
|
+
@function linear-gradient($pos: top, $G1: false, $G2: false,
|
2
|
+
$G3: false, $G4: false,
|
3
|
+
$G5: false, $G6: false,
|
4
|
+
$G7: false, $G8: false,
|
5
|
+
$G9: false, $G10: false) {
|
6
|
+
|
7
|
+
// Detect what type of value exists in $pos
|
8
|
+
$pos-type: type-of(nth($pos, 1));
|
9
|
+
|
10
|
+
// If $pos is missing from mixin, reassign vars and add default position
|
11
|
+
@if ($pos-type == color) or (nth($pos, 1) == "transparent") {
|
12
|
+
$G10: $G9; $G9: $G8; $G8: $G7; $G7: $G6; $G6: $G5;
|
13
|
+
$G5: $G4; $G4: $G3; $G3: $G2; $G2: $G1; $G1: $pos;
|
14
|
+
$pos: top; // Default position
|
15
|
+
}
|
16
|
+
|
17
|
+
$type: linear;
|
18
|
+
$gradient: compact($pos, $G1, $G2, $G3, $G4, $G5, $G6, $G7, $G8, $G9, $G10);
|
19
|
+
$type-gradient: append($type, $gradient, comma);
|
20
|
+
|
21
|
+
@return $type-gradient;
|
22
|
+
}
|
23
|
+
|
@@ -0,0 +1,40 @@
|
|
1
|
+
@function modular-scale($value, $increment, $ratio) {
|
2
|
+
@if $increment > 0 {
|
3
|
+
@for $i from 1 through $increment {
|
4
|
+
$value: ($value * $ratio);
|
5
|
+
}
|
6
|
+
}
|
7
|
+
|
8
|
+
@if $increment < 0 {
|
9
|
+
$increment: abs($increment);
|
10
|
+
@for $i from 1 through $increment {
|
11
|
+
$value: ($value / $ratio);
|
12
|
+
}
|
13
|
+
}
|
14
|
+
|
15
|
+
@return $value;
|
16
|
+
}
|
17
|
+
|
18
|
+
// div {
|
19
|
+
// Increment Up GR with positive value
|
20
|
+
// font-size: modular-scale(14px, 1, 1.618); // returns: 22.652px
|
21
|
+
//
|
22
|
+
// Increment Down GR with negative value
|
23
|
+
// font-size: modular-scale(14px, -1, 1.618); // returns: 8.653px
|
24
|
+
//
|
25
|
+
// Can be used with ceil(round up) or floor(round down)
|
26
|
+
// font-size: floor( modular-scale(14px, 1, 1.618) ); // returns: 22px
|
27
|
+
// font-size: ceil( modular-scale(14px, 1, 1.618) ); // returns: 23px
|
28
|
+
// }
|
29
|
+
//
|
30
|
+
// modularscale.com
|
31
|
+
|
32
|
+
@function golden-ratio($value, $increment) {
|
33
|
+
@return modular-scale($value, $increment, 1.618)
|
34
|
+
}
|
35
|
+
|
36
|
+
// div {
|
37
|
+
// font-size: golden-ratio(14px, 1); // returns: 22.652px
|
38
|
+
// }
|
39
|
+
//
|
40
|
+
// goldenratiocalculator.com
|
@@ -0,0 +1,62 @@
|
|
1
|
+
// This function is required and used by the background-image mixin.
|
2
|
+
@function radial-gradient($G1, $G2,
|
3
|
+
$G3: false, $G4: false,
|
4
|
+
$G5: false, $G6: false,
|
5
|
+
$G7: false, $G8: false,
|
6
|
+
$G9: false, $G10: false,
|
7
|
+
$pos: 50% 50%,
|
8
|
+
$shape-size: ellipse cover,
|
9
|
+
$deprecated-pos1: center center,
|
10
|
+
$deprecated-pos2: center center,
|
11
|
+
$deprecated-radius1: 0,
|
12
|
+
$deprecated-radius2: 50,
|
13
|
+
$fallback: false) {
|
14
|
+
|
15
|
+
@each $value in $G1, $G2 {
|
16
|
+
$first-val: nth($value, 1);
|
17
|
+
$pos-type: type-of($first-val);
|
18
|
+
|
19
|
+
@if ($pos-type != color) or ($first-val != "transparent") {
|
20
|
+
@if ($pos-type == number)
|
21
|
+
or ($first-val == "center")
|
22
|
+
or ($first-val == "top")
|
23
|
+
or ($first-val == "right")
|
24
|
+
or ($first-val == "bottom")
|
25
|
+
or ($first-val == "left") {
|
26
|
+
|
27
|
+
$pos: $value;
|
28
|
+
|
29
|
+
@if $pos == $G1 {
|
30
|
+
$G1: false;
|
31
|
+
}
|
32
|
+
}
|
33
|
+
|
34
|
+
@else if
|
35
|
+
($first-val == "ellipse")
|
36
|
+
or ($first-val == "circle")
|
37
|
+
or ($first-val == "closest-side")
|
38
|
+
or ($first-val == "closest-corner")
|
39
|
+
or ($first-val == "farthest-side")
|
40
|
+
or ($first-val == "farthest-corner")
|
41
|
+
or ($first-val == "contain")
|
42
|
+
or ($first-val == "cover") {
|
43
|
+
|
44
|
+
$shape-size: $value;
|
45
|
+
|
46
|
+
@if $value == $G1 {
|
47
|
+
$G1: false;
|
48
|
+
}
|
49
|
+
|
50
|
+
@else if $value == $G2 {
|
51
|
+
$G2: false;
|
52
|
+
}
|
53
|
+
}
|
54
|
+
}
|
55
|
+
}
|
56
|
+
|
57
|
+
$type: radial;
|
58
|
+
$gradient: compact($pos, $shape-size, $G1, $G2, $G3, $G4, $G5, $G6, $G7, $G8, $G9, $G10);
|
59
|
+
$type-gradient: append($type, $gradient, comma);
|
60
|
+
|
61
|
+
@return $type-gradient;
|
62
|
+
}
|
@@ -0,0 +1,14 @@
|
|
1
|
+
// User for linear and radial gradients within background-image or border-image properties
|
2
|
+
|
3
|
+
@function render-gradients($gradients, $gradient-type, $vendor: false) {
|
4
|
+
$vendor-gradients: false;
|
5
|
+
@if $vendor {
|
6
|
+
$vendor-gradients: -#{$vendor}-#{$gradient-type}-gradient($gradients);
|
7
|
+
}
|
8
|
+
|
9
|
+
@else if $vendor == false {
|
10
|
+
$vendor-gradients: "#{$gradient-type}-gradient(#{$gradients})";
|
11
|
+
$vendor-gradients: unquote($vendor-gradients);
|
12
|
+
}
|
13
|
+
@return $vendor-gradients;
|
14
|
+
}
|
@@ -0,0 +1,22 @@
|
|
1
|
+
// Return vendor-prefixed property names if appropriate
|
2
|
+
// Example: transition-property-names((transform, color, background), moz) -> -moz-transform, color, background
|
3
|
+
//************************************************************************//
|
4
|
+
@function transition-property-names($props, $vendor: false) {
|
5
|
+
$new-props: ();
|
6
|
+
|
7
|
+
@each $prop in $props {
|
8
|
+
$new-props: append($new-props, transition-property-name($prop, $vendor), comma);
|
9
|
+
}
|
10
|
+
|
11
|
+
@return $new-props;
|
12
|
+
}
|
13
|
+
|
14
|
+
@function transition-property-name($prop, $vendor: false) {
|
15
|
+
// put other properties that need to be prefixed here aswell
|
16
|
+
@if $vendor and $prop == transform {
|
17
|
+
@return unquote('-'+$vendor+'-'+$prop);
|
18
|
+
}
|
19
|
+
@else {
|
20
|
+
@return $prop;
|
21
|
+
}
|
22
|
+
}
|
@@ -0,0 +1,19 @@
|
|
1
|
+
require "bourbon/generator"
|
2
|
+
|
3
|
+
module Bourbon
|
4
|
+
if defined?(Rails) && defined?(Rails::Engine)
|
5
|
+
class Engine < ::Rails::Engine
|
6
|
+
require 'bourbon/engine'
|
7
|
+
end
|
8
|
+
|
9
|
+
module Rails
|
10
|
+
class Railtie < ::Rails::Railtie
|
11
|
+
rake_tasks do
|
12
|
+
load "tasks/install.rake"
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
require File.join(File.dirname(__FILE__), "/bourbon/sass_extensions")
|
@@ -0,0 +1,13 @@
|
|
1
|
+
module Bourbon::SassExtensions::Functions
|
2
|
+
end
|
3
|
+
|
4
|
+
require File.join(File.dirname(__FILE__), "/functions/compact")
|
5
|
+
|
6
|
+
module Sass::Script::Functions
|
7
|
+
include Bourbon::SassExtensions::Functions::Compact
|
8
|
+
end
|
9
|
+
|
10
|
+
# Wierd that this has to be re-included to pick up sub-modules. Ruby bug?
|
11
|
+
class Sass::Script::Functions::EvaluationContext
|
12
|
+
include Sass::Script::Functions
|
13
|
+
end
|
@@ -0,0 +1,14 @@
|
|
1
|
+
# Compact function pulled from compass
|
2
|
+
module Bourbon::SassExtensions::Functions::Compact
|
3
|
+
|
4
|
+
def compact(*args)
|
5
|
+
sep = :comma
|
6
|
+
if args.size == 1 && args.first.is_a?(Sass::Script::List)
|
7
|
+
list = args.first
|
8
|
+
args = list.value
|
9
|
+
sep = list.separator
|
10
|
+
end
|
11
|
+
Sass::Script::List.new(args.reject{|a| !a.to_bool}, sep)
|
12
|
+
end
|
13
|
+
|
14
|
+
end
|
metadata
ADDED
@@ -0,0 +1,118 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: bourbon-compass
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 2.1.1.0
|
5
|
+
prerelease:
|
6
|
+
platform: ruby
|
7
|
+
authors:
|
8
|
+
- Jed Foster
|
9
|
+
autorequire:
|
10
|
+
bindir: bin
|
11
|
+
cert_chain: []
|
12
|
+
date: 2012-06-29 00:00:00.000000000 Z
|
13
|
+
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
15
|
+
name: compass
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
17
|
+
none: false
|
18
|
+
requirements:
|
19
|
+
- - ! '>='
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: '0.11'
|
22
|
+
type: :runtime
|
23
|
+
prerelease: false
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
26
|
+
requirements:
|
27
|
+
- - ! '>='
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: '0.11'
|
30
|
+
- !ruby/object:Gem::Dependency
|
31
|
+
name: sass
|
32
|
+
requirement: !ruby/object:Gem::Requirement
|
33
|
+
none: false
|
34
|
+
requirements:
|
35
|
+
- - ! '>='
|
36
|
+
- !ruby/object:Gem::Version
|
37
|
+
version: '3.1'
|
38
|
+
type: :runtime
|
39
|
+
prerelease: false
|
40
|
+
version_requirements: !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
42
|
+
requirements:
|
43
|
+
- - ! '>='
|
44
|
+
- !ruby/object:Gem::Version
|
45
|
+
version: '3.1'
|
46
|
+
description: ThoughtBot's Bourbon packaged as Compass extension.
|
47
|
+
email: jed@jedfoster.com
|
48
|
+
executables: []
|
49
|
+
extensions: []
|
50
|
+
extra_rdoc_files: []
|
51
|
+
files:
|
52
|
+
- readme.md
|
53
|
+
- lib/bourbon-compass.rb
|
54
|
+
- stylesheets/bourbon/_bourbon.scss
|
55
|
+
- stylesheets/bourbon/addons/_button.scss
|
56
|
+
- stylesheets/bourbon/addons/_clearfix.scss
|
57
|
+
- stylesheets/bourbon/addons/_font-face.scss
|
58
|
+
- stylesheets/bourbon/addons/_font-family.scss
|
59
|
+
- stylesheets/bourbon/addons/_hide-text.scss
|
60
|
+
- stylesheets/bourbon/addons/_html5-input-types.scss
|
61
|
+
- stylesheets/bourbon/addons/_position.scss
|
62
|
+
- stylesheets/bourbon/addons/_timing-functions.scss
|
63
|
+
- stylesheets/bourbon/css3/_animation.scss
|
64
|
+
- stylesheets/bourbon/css3/_appearance.scss
|
65
|
+
- stylesheets/bourbon/css3/_background-image.scss
|
66
|
+
- stylesheets/bourbon/css3/_background-size.scss
|
67
|
+
- stylesheets/bourbon/css3/_background.scss
|
68
|
+
- stylesheets/bourbon/css3/_border-image.scss
|
69
|
+
- stylesheets/bourbon/css3/_border-radius.scss
|
70
|
+
- stylesheets/bourbon/css3/_box-shadow.scss
|
71
|
+
- stylesheets/bourbon/css3/_box-sizing.scss
|
72
|
+
- stylesheets/bourbon/css3/_columns.scss
|
73
|
+
- stylesheets/bourbon/css3/_flex-box.scss
|
74
|
+
- stylesheets/bourbon/css3/_inline-block.scss
|
75
|
+
- stylesheets/bourbon/css3/_linear-gradient.scss
|
76
|
+
- stylesheets/bourbon/css3/_prefixer.scss
|
77
|
+
- stylesheets/bourbon/css3/_radial-gradient.scss
|
78
|
+
- stylesheets/bourbon/css3/_transform.scss
|
79
|
+
- stylesheets/bourbon/css3/_transition.scss
|
80
|
+
- stylesheets/bourbon/css3/_user-select.scss
|
81
|
+
- stylesheets/bourbon/functions/_deprecated-webkit-gradient.scss
|
82
|
+
- stylesheets/bourbon/functions/_flex-grid.scss
|
83
|
+
- stylesheets/bourbon/functions/_grid-width.scss
|
84
|
+
- stylesheets/bourbon/functions/_linear-gradient.scss
|
85
|
+
- stylesheets/bourbon/functions/_modular-scale.scss
|
86
|
+
- stylesheets/bourbon/functions/_radial-gradient.scss
|
87
|
+
- stylesheets/bourbon/functions/_render-gradients.scss
|
88
|
+
- stylesheets/bourbon/functions/_tint-shade.scss
|
89
|
+
- stylesheets/bourbon/functions/_transition-property-name.scss
|
90
|
+
- stylesheets/bourbon/lib/bourbon/sass_extensions/functions/compact.rb
|
91
|
+
- stylesheets/bourbon/lib/bourbon/sass_extensions/functions.rb
|
92
|
+
- stylesheets/bourbon/lib/bourbon/sass_extensions.rb
|
93
|
+
- stylesheets/bourbon/lib/bourbon.rb
|
94
|
+
homepage: https://github.com/thoughtbot/bourbon
|
95
|
+
licenses: []
|
96
|
+
post_install_message:
|
97
|
+
rdoc_options: []
|
98
|
+
require_paths:
|
99
|
+
- lib
|
100
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
101
|
+
none: false
|
102
|
+
requirements:
|
103
|
+
- - ! '>='
|
104
|
+
- !ruby/object:Gem::Version
|
105
|
+
version: '0'
|
106
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
107
|
+
none: false
|
108
|
+
requirements:
|
109
|
+
- - ! '>='
|
110
|
+
- !ruby/object:Gem::Version
|
111
|
+
version: '0'
|
112
|
+
requirements: []
|
113
|
+
rubyforge_project:
|
114
|
+
rubygems_version: 1.8.23
|
115
|
+
signing_key:
|
116
|
+
specification_version: 3
|
117
|
+
summary: ThoughtBot's Bourbon packaged as Compass extension.
|
118
|
+
test_files: []
|