custard 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: f10b736713fe737cf3a3e096e373e824889fbd82
4
+ data.tar.gz: f2a97a0b535674f8f1a51630b47c66ed03cdf059
5
+ SHA512:
6
+ metadata.gz: 2439732138ab102670b9a2877e7daf1185bcd80f80f59a0077c05f11267c6f7a0853e55d4c76310ed6bc86a27619fd1886f44c1b7262115273ac5cba4fd29d4c
7
+ data.tar.gz: 8528b67d09877e47432335b34d6f5b268b3839c22167a44970143af37aeeeadaaec27909f96c409eea8dc8d4e4d50e527baa6abbc0c52613e49bf94d7ac39b3d
data/.gitignore ADDED
@@ -0,0 +1,17 @@
1
+ /.bundle/
2
+ /.yardoc
3
+ /Gemfile.lock
4
+ /_yardoc/
5
+ /coverage/
6
+ /doc/
7
+ /pkg/
8
+ /spec/reports/
9
+ /tmp/
10
+ *.bundle
11
+ *.so
12
+ *.o
13
+ *.a
14
+ mkmf.log
15
+
16
+ /.sass-cache
17
+ *.css.map
data/Gemfile ADDED
@@ -0,0 +1,4 @@
1
+ source 'https://rubygems.org'
2
+
3
+ # Specify your gem's dependencies in custard.gemspec
4
+ gemspec
data/LICENSE ADDED
@@ -0,0 +1,22 @@
1
+ The MIT License (MIT)
2
+
3
+ Copyright (c) 2015 Zeneffect Inc.
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
22
+
data/README.md ADDED
@@ -0,0 +1,90 @@
1
+ # Custard
2
+
3
+ Custard is a useful CSS preset to reduce coding of CSS.
4
+
5
+ ## Installation
6
+
7
+ Add this line to your application's Gemfile:
8
+
9
+ ```ruby
10
+ gem 'custard'
11
+ ```
12
+
13
+ And then execute:
14
+
15
+ $ bundle
16
+
17
+ Or install it yourself as:
18
+
19
+ $ gem install custard
20
+
21
+ ## Usage
22
+
23
+ If you want the following styles.
24
+
25
+ when
26
+
27
+ ```html
28
+ <div style="
29
+ border-top: 1px solid #666;
30
+ border-bottom: 1px solid #666;
31
+ "></div>
32
+ ```
33
+ that
34
+
35
+ ```html
36
+ <div class="bdr-tb-1px-gray6">
37
+ ```
38
+
39
+ when
40
+
41
+ ```html
42
+ <div style="
43
+ display: -ms-flexbox;
44
+ display: -webkit-flex;
45
+ display: flex;
46
+ -ms-flex-pack: end;
47
+ -webkit-justify-content: flex-end;
48
+ -moz-justify-content: flex-end;
49
+ justify-content: flex-end;
50
+ -ms-flex-align: center;
51
+ -webkit-align-items: center;
52
+ -moz-align-items: center;
53
+ align-items: center;
54
+ -ms-flex-wrap: wrap;
55
+ -webkit-flex-wrap: wrap;
56
+ -o-flex-wrap: wrap;
57
+ -moz-flex-wrap: wrap;
58
+ flex-wrap: wrap;
59
+ "></div>
60
+ ```
61
+
62
+ that
63
+
64
+ ```html
65
+ <div class="ds-flex-right-center-wrap"></div>
66
+ ```
67
+
68
+ when
69
+
70
+ ```html
71
+ <div style="
72
+ margin-top: 10px;
73
+ margin-bottom: 10px;
74
+ margin-left: 10px;
75
+ "></div>
76
+ ```
77
+
78
+ that
79
+
80
+ ```html
81
+ <div class="mgn-tbl-10px"></div>
82
+ ```
83
+
84
+ ## Contributing
85
+
86
+ 1. Fork it ( https://github.com/[my-github-username]/custard/fork )
87
+ 2. Create your feature branch (`git checkout -b my-new-feature`)
88
+ 3. Commit your changes (`git commit -am 'Add some feature'`)
89
+ 4. Push to the branch (`git push origin my-new-feature`)
90
+ 5. Create a new Pull Request
data/Rakefile ADDED
@@ -0,0 +1,2 @@
1
+ require "bundler/gem_tasks"
2
+
data/bower.json ADDED
@@ -0,0 +1,28 @@
1
+ {
2
+ "name": "custard",
3
+ "version": "0.0.2",
4
+ "authors": [
5
+ "Kei Goto <gem@zeneffect.co.jp>"
6
+ ],
7
+ "description": "Custard is the library of the preset CSS",
8
+ "main": [
9
+ "vendor/assets/stylesheets/custard/custard.scss",
10
+ "vendor/assets/stylesheets/custard/custard-compiled.css",
11
+ "vendor/assets/stylesheets/custard/custard-min.css"
12
+ ],
13
+ "keywords": [
14
+ "css",
15
+ "preset"
16
+ ],
17
+ "license": "MIT",
18
+ "homepage": "https://github.com/zeneffect/custard",
19
+ "ignore": [
20
+ "**/.*",
21
+ "lib",
22
+ "spec",
23
+ "*.gemspec",
24
+ "Rakefile",
25
+ "Gemfile",
26
+ ".sass-cache"
27
+ ]
28
+ }
data/custard.gemspec ADDED
@@ -0,0 +1,24 @@
1
+ # coding: utf-8
2
+ lib = File.expand_path('../lib', __FILE__)
3
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
+ require 'custard/version'
5
+
6
+ Gem::Specification.new do |spec|
7
+ spec.name = "custard"
8
+ spec.version = Custard::VERSION
9
+ spec.authors = ["Kei Goto"]
10
+ spec.email = ["gem@zeneffect.co.jp"]
11
+ spec.summary = %q{ Custard is the library of the preset CSS }
12
+ spec.description = ""
13
+ spec.homepage = ""
14
+ spec.license = "MIT"
15
+
16
+ spec.files = `git ls-files -z`.split("\x0")
17
+ spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
18
+ spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
19
+ spec.require_paths = ["lib"]
20
+
21
+ spec.add_development_dependency "bundler", "~> 1.7"
22
+ spec.add_development_dependency "rake", "~> 10.0"
23
+ spec.add_runtime_dependency "sass", "~> 3.0"
24
+ end
@@ -0,0 +1,3 @@
1
+ module Custard
2
+ VERSION = "0.0.2"
3
+ end
data/lib/custard.rb ADDED
@@ -0,0 +1,8 @@
1
+ require "custard/version"
2
+
3
+ module Custard
4
+ module Rails
5
+ class Engine < ::Rails::Engine
6
+ end
7
+ end
8
+ end
@@ -0,0 +1,78 @@
1
+ @import '../variables';
2
+
3
+ @mixin flex-direction($arg) {
4
+ @include with-vendor-prefix(flex-direction, $arg);
5
+ }
6
+
7
+ @mixin justify-content($arg) {
8
+ @if $arg == space-between {
9
+ -ms-flex-pack: justify;
10
+ } @else if $arg == flex-start {
11
+ -ms-flex-pack: start;
12
+ } @else if $arg == flex-end {
13
+ -ms-flex-pack: end;
14
+ } @else {
15
+ -ms-flex-pack: $arg;
16
+ }
17
+
18
+ -webkit-justify-content: $arg;
19
+ -moz-justify-content: $arg;
20
+ justify-content: $arg;
21
+ }
22
+
23
+ @mixin align-items($arg) {
24
+ @if $arg == flex-start {
25
+ -ms-flex-align: start;
26
+ } @else if $arg == flex-end {
27
+ -ms-flex-align: end;
28
+ } @else {
29
+ -ms-flex-align: $arg;
30
+ }
31
+
32
+ -webkit-align-items: $arg;
33
+ -moz-align-items: $arg;
34
+ align-items: $arg;
35
+ }
36
+
37
+ @mixin flex-wrap($arg) {
38
+ @include with-vendor-prefix(flex-wrap, $arg);
39
+ }
40
+
41
+ @mixin flex($arg) {
42
+ @include with-vendor-prefix(flex, $arg);
43
+ }
44
+
45
+ @mixin display-flex($arg: '') {
46
+ display: -ms-flexbox;
47
+ display: -webkit-flex;
48
+ display: flex;
49
+
50
+ @if $arg == left {
51
+ @include justify-content(flex-start);
52
+ } @else if $arg == right {
53
+ @include justify-content(flex-end);
54
+ } @else if $arg == center {
55
+ @include justify-content(center);
56
+ } @else if $arg == space {
57
+ @include justify-content(space-between);
58
+ } @else if $arg == around {
59
+ @include justify-content(space-around);
60
+ } @else if $arg == column {
61
+ @include flex-direction(column);
62
+ } @else if $arg == top {
63
+ @include flex-direction(column);
64
+ @include justify-content(flex-start);
65
+ } @else if $arg == bottom {
66
+ @include flex-direction(column);
67
+ @include justify-content(flex-end);
68
+ } @else if $arg == middle {
69
+ @include flex-direction(column);
70
+ @include justify-content(center);
71
+ } @else if $arg == column-space {
72
+ @include flex-direction(column);
73
+ @include justify-content(space-between);
74
+ } @else if $arg == column-around {
75
+ @include flex-direction(column);
76
+ @include justify-content(space-around);
77
+ }
78
+ }
@@ -0,0 +1,37 @@
1
+ @import '../variables';
2
+
3
+ @mixin custard-setup-border {
4
+
5
+ $bdr: #{$custard-namespace}#{$custard-prefix-border};
6
+
7
+ $direction-hash: $custard-direction-hash;
8
+
9
+ @each $hex in $custard-hex-list {
10
+
11
+ $color: "##{$hex}#{$hex}#{$hex}";
12
+
13
+ @for $width from 1px through 5px {
14
+
15
+ @each $key, $direction-list in $direction-hash {
16
+
17
+ .#{bdr}#{$key}-#{$width}-gray#{$hex} {
18
+ @each $direction in $direction-list {
19
+ border#{$direction}: $width solid #{$color};
20
+ }
21
+ }
22
+ }
23
+ }
24
+ }
25
+
26
+ @for $size from 1px through 10px {
27
+ .#{bdr}-radius-#{$size} {
28
+ border-radius: $size;
29
+ }
30
+ }
31
+
32
+ .#{bdr}-radius-circle {
33
+ border-radius: 50%;
34
+ }
35
+ }
36
+
37
+ @include custard-setup-border;
@@ -0,0 +1,16 @@
1
+ @import '../variables';
2
+
3
+ @mixin custard-setup-color {
4
+
5
+ $color: #{$custard-namespace}#{$custard-prefix-color};
6
+
7
+ @each $n in $custard-hex-list {
8
+ $color-hex: "##{$n}#{$n}#{$n}";
9
+
10
+ .#{color}-gray#{$n} {
11
+ color: #{$color-hex};
12
+ }
13
+ }
14
+ }
15
+
16
+ @include custard-setup-color;
@@ -0,0 +1,22 @@
1
+ @import '../variables';
2
+
3
+ @mixin custard-setup-cursor {
4
+
5
+ $cur: #{$custard-namespace}#{$custard-prefix-cursor};
6
+ $style-list:
7
+ auto, default, none, context-menu, help, pointer,
8
+ progress, wait, cell, crosshair, text, vertical-text,
9
+ alias, copy, move, no-drop, not-allowed, e-resize,
10
+ n-resize, ne-resize, nw-resize, s-resize, se-resize,
11
+ sw-resize, w-resize, ew-resize, ns-resize, nesw-resize,
12
+ nwse-resize, col-resize, row-resize, all-scroll,
13
+ zoom-in, zoom-out;
14
+
15
+ @each $style in $style-list {
16
+ .#{$cur}-#{$style} {
17
+ cursor: $style;
18
+ }
19
+ }
20
+ }
21
+
22
+ @include custard-setup-cursor;
@@ -0,0 +1,127 @@
1
+ @import '../mixin/display_flex';
2
+
3
+ @mixin custard-setup-display {
4
+
5
+ $ds: #{$custard-namespace}#{$custard-prefix-display};
6
+
7
+ .#{$ds}-none {
8
+ display: none;
9
+ }
10
+
11
+ .#{ds}-inline {
12
+ display: inline;
13
+ }
14
+
15
+ .#{$ds}-block {
16
+ display: block;
17
+ }
18
+
19
+ .#{$ds}-inline-block {
20
+ display: inline-block;
21
+ }
22
+
23
+ .#{$ds}-flex {
24
+ @include display-flex;
25
+
26
+ .flex-fixed {
27
+ @include flex(0 0 auto);
28
+ }
29
+
30
+ .flex-1 {
31
+ @include flex(1 0 auto);
32
+ }
33
+
34
+ &.centering {
35
+ @include justify-content(center);
36
+ @include align-items(center);
37
+ }
38
+
39
+ &.direct-column {
40
+ @include flex-direction(column);
41
+ }
42
+
43
+ &.just-center {
44
+ @include justify-content(center);
45
+ }
46
+
47
+ &.just-space {
48
+ @include justify-content(space-between);
49
+ }
50
+
51
+ &.just-start {
52
+ @include justify-content(flex-start);
53
+ }
54
+
55
+ &.just-end {
56
+ @include justify-content(flex-end);
57
+ }
58
+
59
+ &.align-center {
60
+ @include align-items(center);
61
+ }
62
+
63
+ &.align-start {
64
+ @include align-items(flex-start);
65
+ }
66
+
67
+ &.align-end {
68
+ @include align-items(flex-end);
69
+ }
70
+
71
+ &.flex-wrap {
72
+ @include flex-wrap(wrap);
73
+ }
74
+
75
+ &.flex-nowrap {
76
+ @include flex-wrap(nowrap);
77
+ }
78
+
79
+ &.flex-reverse {
80
+ @include flex-wrap(wrap-reverse);
81
+ }
82
+ }
83
+
84
+ $justify-list:
85
+ left, right, center, space, around,
86
+ top, bottom, middle, column-space, column-around;
87
+
88
+ $align-list: '', start, end, center, baseline, stretch;
89
+
90
+ $wrap-list: '', wrap, wrap-reverse;
91
+
92
+ @each $justify in $justify-list {
93
+ $name-base: ".#{ds}-flex-#{$justify}";
94
+
95
+ @each $align in $align-list {
96
+
97
+ $name-align: '';
98
+
99
+ @if $align != '' {
100
+ $name-align: "-#{$align}";
101
+ }
102
+
103
+ @each $wrap in $wrap-list {
104
+
105
+ $name-wrap: '';
106
+
107
+ @if $wrap != '' {
108
+ $name-wrap: "-#{$wrap}";
109
+ }
110
+
111
+ #{$name-base}#{$name-align}#{$name-wrap} {
112
+ @include display-flex($justify);
113
+
114
+ @if $align != '' {
115
+ @include align-items($align);
116
+ }
117
+
118
+ @if $wrap != '' {
119
+ @include flex-wrap($wrap);
120
+ }
121
+ }
122
+ }
123
+ }
124
+ }
125
+ }
126
+
127
+ @include custard-setup-display
@@ -0,0 +1,65 @@
1
+ @import '../variables';
2
+
3
+ @mixin custard-setup-font {
4
+
5
+ $font: #{$custard-namespace}#{$custard-prefix-font};
6
+
7
+ @for $n from 1 through 9 {
8
+
9
+ $size: "0.#{$n}em";
10
+
11
+ .#{$font}-0#{$n}em {
12
+ font-size: #{$size};
13
+ }
14
+
15
+ $size: "1.#{$n}em";
16
+
17
+ .#{$font}-i#{$n}em {
18
+ font-size: #{$size};
19
+ }
20
+
21
+ $size: "#{$n}em";
22
+
23
+ .#{$font}-#{$n}em {
24
+ font-size: #{$size};
25
+ }
26
+
27
+ .#{$font}-#{$n}px {
28
+ font-size: 1px * $n;
29
+ }
30
+
31
+ .#{$font}-1#{$n}px {
32
+ font-size: 10px + $n;
33
+ }
34
+
35
+ .#{$font}-2#{$n}px {
36
+ font-size: 20px + $n;
37
+ }
38
+
39
+ .#{$font}-#{$n}00 {
40
+ font-weight: $n * 100;
41
+ }
42
+ }
43
+
44
+ .#{$font}-10px {
45
+ font-size: 10px;
46
+ }
47
+
48
+ .#{$font}-20px {
49
+ font-size: 20px;
50
+ }
51
+
52
+ @each $size in xx-small, x-small, small, medium, large, x-large, xx-large {
53
+ .#{$font}-#{$size} {
54
+ font-size: $size;
55
+ }
56
+ }
57
+
58
+ @each $weight in normal, bold, lighter, bolder {
59
+ .#{$font}-#{weight} {
60
+ font-weight: $weight;
61
+ }
62
+ }
63
+ }
64
+
65
+ @include custard-setup-font;
@@ -0,0 +1,86 @@
1
+ @import '../variables';
2
+
3
+ @mixin custard-setup-mgn-pdg {
4
+
5
+ $direction-hash: $custard-direction-hash;
6
+
7
+ $directive-hash: (
8
+ #{$custard-namespace}#{$custard-prefix-margin}: margin,
9
+ #{$custard-namespace}#{$custard-prefix-padding}: padding
10
+ );
11
+
12
+ .mgn-centering {
13
+ margin-left: auto;
14
+ margin-right: auto;
15
+ }
16
+
17
+ @each $prefix, $directive in $directive-hash {
18
+
19
+ .#{$prefix}-0 {
20
+ #{$directive}: 0;
21
+ }
22
+
23
+ @each $key, $direction-list in $direction-hash {
24
+
25
+ .#{$prefix}#{$key}-0 {
26
+ @each $direction in $direction-list {
27
+ #{$directive}#{$direction}: 0;
28
+ }
29
+ }
30
+
31
+ @for $n from 1 through 9 {
32
+
33
+ @each $unit in px, em {
34
+
35
+ .#{$prefix}#{$key}-#{$n}#{$unit} {
36
+ @each $direction in $direction-list {
37
+ #{$directive}#{$direction}: #{$n}#{$unit};
38
+ }
39
+ }
40
+
41
+ @if $unit == em {
42
+ .#{$prefix}#{$key}-0#{$n}#{$unit} {
43
+ @each $direction in $direction-list {
44
+ $value: "0.#{$n}#{$unit}";
45
+ #{$directive}#{$direction}: #{$value};
46
+ }
47
+ }
48
+
49
+ .#{$prefix}#{$key}-i#{$n}#{$unit} {
50
+ @each $direction in $direction-list {
51
+ $value: "1.#{$n}#{$unit}";
52
+ #{$directive}#{$direction}: #{$value};
53
+ }
54
+ }
55
+ } @else {
56
+ .#{$prefix}#{$key}-1#{$n}#{$unit} {
57
+ @each $direction in $direction-list {
58
+ #{$directive}#{$direction}: 1#{$n}#{$unit};
59
+ }
60
+ }
61
+
62
+ .#{$prefix}#{$key}-#{$n}0#{$unit} {
63
+ @each $direction in $direction-list {
64
+ #{$directive}#{$direction}: #{$n}0#{$unit};
65
+ }
66
+ }
67
+ }
68
+ }
69
+ }
70
+
71
+ .#{$prefix}#{$key}-100px {
72
+ @each $direction in $direction-list {
73
+ #{$directive}#{$direction}: 100px;
74
+ }
75
+ }
76
+
77
+ .#{$prefix}#{$key}-10em {
78
+ @each $direction in $direction-list {
79
+ #{$directive}#{$direction}: 10em;
80
+ }
81
+ }
82
+ }
83
+ }
84
+ }
85
+
86
+ @include custard-setup-mgn-pdg;
@@ -0,0 +1,24 @@
1
+ @import '../variables';
2
+
3
+ @mixin custard-setup-over {
4
+
5
+ $over: #{$custard-namespace}#{$custard-prefix-overflow};
6
+
7
+ .#{$over}-hidden {
8
+ overflow: hidden;
9
+ }
10
+
11
+ .#{over}-scroll {
12
+ overflow: scroll;
13
+ }
14
+
15
+ .#{over}-visible {
16
+ overflow: visible;
17
+ }
18
+
19
+ .#{over}-auto {
20
+ overflow: auto;
21
+ }
22
+ }
23
+
24
+ @include custard-setup-over;
@@ -0,0 +1,27 @@
1
+ @import '../variables';
2
+
3
+ @mixin custard-setup-posi {
4
+
5
+ $posi: #{$custard-namespace}#{$custard-prefix-position};
6
+
7
+ .#{$posi}-relative,
8
+ .#{$posi}-rel {
9
+ position: relative;
10
+ }
11
+
12
+ .#{$posi}-absolute,
13
+ .#{$posi}-abs {
14
+ position: absolute;
15
+ }
16
+
17
+ .#{$posi}-static {
18
+ position: static;
19
+ }
20
+
21
+ .#{$posi}-fixed,
22
+ .#{$posi}-fix {
23
+ position: fixed;
24
+ }
25
+ }
26
+
27
+ @include custard-setup-posi;