quilt_ui 0.0.4 → 0.0.5

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 7c69e411e62437b23e9336ccd2aa2e1f0d844d28
4
- data.tar.gz: 0cc5e15c136a2fdb22755b2fa4530b65396b56ee
3
+ metadata.gz: 30ae1623281e5eb33ad4c165b52d1badc0654c23
4
+ data.tar.gz: beb2c1a1f9ec6d11e32d4352b40e068313011ce4
5
5
  SHA512:
6
- metadata.gz: 7ec3089773741b6af55638f9fb49bad2489296be8e911f335edbe920f94d7d8810901b392caf312e1414aaa7faf148c8695e217b599e3db25bd33be667cce1bb
7
- data.tar.gz: ebe86356bb454845231132ec44cf73dde5f5c2eebfe5ca67ef8d9dae1d36d76852ffa3bf921abfc8266b362f98397e8669aaacc127c0087a66d35a552f7c480f
6
+ metadata.gz: 4ef19e4b0c7738c1ae9be759e045642ddae26dae43da59e9995e7621d5d312417f59c32799e6474fe77c8ee1ffd90ce69c6addac8211899839e550eea4a1c772
7
+ data.tar.gz: 0536a8d90b5dab2a6523a1516fd2720322abe2269d3f742c6ba5d83c412616fc7c188b3486871855fe328675884841f697b2459c5c3f5df97505115271261e0e
@@ -1,8 +1,9 @@
1
1
  .badge {
2
- @include meta-text;
3
- border-radius: default(border-radius);
4
- background-color: color(background);
5
- padding: spacing(tiny) spacing(tight);
2
+ @include text-style-meta;
3
+ @include text-emphasis-subdued;
4
+ border-radius: border-radius();
5
+ background-color: color(sky, dark);
6
+ padding: spacing(extra-tight) spacing(tight);
6
7
  vertical-align: middle;
7
8
  white-space: nowrap;
8
9
  display: inline-block;
@@ -12,36 +13,34 @@
12
13
  }
13
14
  }
14
15
 
15
- .badge--success {
16
- background-color: color(background, success);
16
+ .badge--status-success {
17
+ background-color: color(green, light);
17
18
  }
18
19
 
19
- .badge--info {
20
- background-color: color(background, info);
20
+ .badge--status-info {
21
+ background-color: color(blue, lighter);
21
22
  }
22
23
 
23
- .badge--subdued {
24
- background-color: color(background, subdued);
24
+ .badge--status-subdued {
25
+ background-color: color(sky);
25
26
  }
26
27
 
27
- .badge--attention {
28
- background-color: color(background, attention);
28
+ .badge--status-attention {
29
+ background-color: color(yellow, light);
29
30
  }
30
31
 
31
- .badge--warning {
32
- background-color: color(background, warning);
32
+ .badge--status-warning {
33
+ background-color: color(orange, light);
33
34
  }
34
35
 
35
- .badge--critical {
36
- background-color: color(background, critical);
36
+ .badge--status-critical {
37
+ background-color: color(red, light);
37
38
  }
38
39
 
39
- .badge--complete {
40
- background-color: color(background, subdued);
40
+ .badge--status-complete {
41
+ background-color: color(sky);
41
42
  }
42
43
 
43
44
  .badge--inline {
44
- font-size: type-size(label);
45
- line-height: type-line-height(label);
46
- margin-left: spacing(tiny);
45
+ margin-left: spacing(extra-tight);
47
46
  }
@@ -1,5 +1,8 @@
1
1
  @import 'foundation/utilities';
2
- @import 'foundation/spacing';
3
2
  @import 'foundation/colors';
3
+
4
+ @import 'foundation/borders';
5
+ @import 'foundation/border-radius';
6
+ @import 'foundation/shadows';
7
+ @import 'foundation/spacing';
4
8
  @import 'foundation/typography';
5
- @import 'foundation/defaults';
@@ -0,0 +1,11 @@
1
+ $border-radius-data: (
2
+ base: 3px
3
+ );
4
+
5
+ //*
6
+ // Returns the default border radius.
7
+ // @return {Number} The border radius value.
8
+
9
+ @function border-radius() {
10
+ @return map-get($border-radius-data, base);
11
+ }
@@ -0,0 +1,20 @@
1
+ $borders-data: (
2
+ base: 1px solid color(sky),
3
+ dark: 1px solid color(sky, dark)
4
+ );
5
+
6
+ //*
7
+ // Returns the specified border.
8
+ //
9
+ // @param {String} $variant - The key for a given variant.
10
+ // @return {List} The border value.
11
+
12
+ @function border($variant: base) {
13
+ $fetched-value: map-get($borders-data, $variant);
14
+
15
+ @if $fetched-value {
16
+ @return $fetched-value;
17
+ } @else {
18
+ @error "Border variant `#{$variant}` not found. Available variants: #{available-names($borders-data)}";
19
+ }
20
+ }
@@ -1,122 +1,116 @@
1
- // scss-lint:disable ColorVariable, ColorKeyword
2
1
  $color-palette-data: (
3
- white: #fff,
4
- black: #000,
5
-
6
- slate-lightest: #95a7b7,
7
- slate-lighter: #798c9c,
8
- slate-light: #454e57,
9
- slate: #31373d,
10
- slate-dark: #272c30,
11
- slate-darker: #212529,
12
-
13
- sky-lighter: #fafbfc,
14
- sky-light: #f5f6f7,
15
- sky: #ebeef0,
16
- sky-dark: #d3dbe2,
17
- sky-darker: #c3cfd8,
18
-
19
- blue-lightest: #eff9fd,
20
- blue-lighter: #cae9f7,
21
- blue-light: #4fb0e8,
22
- blue: #479ccf,
23
- blue-dark: #4293c2,
24
- blue-darker: #3e89b5,
2
+ white: (
3
+ base: #fff
4
+ ),
25
5
 
26
- green-lightest: #f8ffec,
27
- green-lighter: #e5fabc,
28
- green-light: #b2d86a,
29
- green: #96bf48,
30
- green-dark: #7ba232,
31
- green-darker: #4d6110,
6
+ black: (
7
+ base: #000
8
+ ),
32
9
 
33
- yellow-lightest: #fffbe9,
34
- yellow-lighter: #fff7b2,
35
- yellow-light: #ffe477,
36
- yellow: #ffd117,
37
- yellow-dark: #d4a002,
38
- yellow-darker: #6f4f0c,
10
+ slate: (
11
+ lightest: #95a7b7,
12
+ lighter: #798c9c,
13
+ light: #454e57,
14
+ base: #31373d,
15
+ dark: #272c30,
16
+ darker: #212529
17
+ ),
39
18
 
40
- orange-lightest: #fff9ec,
41
- orange-lighter: #ffebcc,
42
- orange-light: #fec97d,
43
- orange: #ff9517,
44
- orange-dark: #e06b0c,
45
- orange-darker: #7f3a07,
19
+ sky: (
20
+ lighter: #fafbfc,
21
+ light: #f5f6f7,
22
+ base: #ebeef0,
23
+ dark: #d3dbe2,
24
+ darker: #c3cfd8
25
+ ),
46
26
 
47
- red-lightest: #fef6f5,
48
- red-lighter: #ffd9d6,
49
- red-light: #ff9797,
50
- red: #ff5d5d,
51
- red-dark: #d83e3e,
52
- red-darker: #852929,
27
+ blue: (
28
+ lightest: #eff9fd,
29
+ lighter: #cae9f7,
30
+ light: #4fb0e8,
31
+ base: #479ccf,
32
+ dark: #4293c2,
33
+ darker: #3e89b5
34
+ ),
53
35
 
54
- purple-lightest: #faf1fe,
55
- purple-lighter: #eccdff,
56
- purple-light: #d098ff,
57
- purple: #b762ff,
58
- purple-dark: #763eaf,
59
- purple-darker: #4a1f72,
36
+ green: (
37
+ lightest: #f8ffec,
38
+ lighter: #e5fabc,
39
+ light: #b2d86a,
40
+ base: #96bf48,
41
+ dark: #7ba232,
42
+ darker: #4d6110
43
+ ),
60
44
 
61
- teal-lightest: #eafdf7,
62
- teal-lighter: #c3f9e4,
63
- teal-light: #78ecbc,
64
- teal: #29bc94,
65
- teal-dark: #15966d,
66
- teal-darker: #186148,
45
+ yellow: (
46
+ lightest: #fffbe9,
47
+ lighter: #fff7b2,
48
+ light: #ffe477,
49
+ base: #ffd117,
50
+ dark: #d4a002,
51
+ darker: #6f4f0c
52
+ ),
67
53
 
68
- shade: rgba(#000, 0.1),
54
+ orange: (
55
+ lightest: #fff9ec,
56
+ lighter: #ffebcc,
57
+ light: #fec97d,
58
+ base: #ff9517,
59
+ dark: #e06b0c,
60
+ darker: #7f3a07
61
+ ),
69
62
 
70
- ink-black: rgba(#000, 0.9),
71
- ink-charcoal: rgba(#000, 0.6),
72
- ink-slate: rgba(#000, 0.45)
73
- );
63
+ red: (
64
+ lightest: #fef6f5,
65
+ lighter: #ffd9d6,
66
+ light: #ff9797,
67
+ base: #ff5d5d,
68
+ dark: #d83e3e,
69
+ darker: #852929
70
+ ),
74
71
 
75
- $color-keys-data: (
76
- text: (
77
- primary: ink-black,
78
- secondary: ink-charcoal,
79
- hint: ink-slate,
80
- link: blue,
81
- error: red-dark,
82
- success: green-dark
72
+ purple: (
73
+ lightest: #faf1fe,
74
+ lighter: #eccdff,
75
+ light: #d098ff,
76
+ base: #b762ff,
77
+ dark: #763eaf,
78
+ darker: #4a1f72
83
79
  ),
84
80
 
85
- background: (
86
- primary: sky-dark,
87
- subdued: sky,
88
- success: green-light,
89
- info: blue-lighter,
90
- attention: yellow-light,
91
- warning: orange-light,
92
- error: red-light,
93
- critical: red-light
81
+ teal: (
82
+ lightest: #eafdf7,
83
+ lighter: #c3f9e4,
84
+ light: #78ecbc,
85
+ base: #29bc94,
86
+ dark: #15966d,
87
+ darker: #186148
94
88
  ),
95
89
 
96
- border: (
97
- primary: sky
90
+ shade: (
91
+ base: rgba(#000, 0.1)
98
92
  ),
99
93
 
100
- shadow: (
101
- primary: shade
94
+ ink: (
95
+ lighter: rgba(#000, 0.38),
96
+ light: rgba(#000, 0.56),
97
+ base: rgba(#000, 0.9)
102
98
  )
103
99
  );
104
- // scss-lint:enable ColorVariable, ColorKeyword
105
100
 
106
101
  //*
107
102
  // Returns the color value for a given color name and group.
108
103
  //
109
- // @param {String} $group - The key for the color group.
110
- // @param {String} $color - The key for the color name. Defaults to primary.
104
+ // @param {String} $hue - The color's hue.
105
+ // @param {String} $value - The darkness/ lightness of the color. Defaults to base.
111
106
  // @return {Color} The color value.
112
107
 
113
- @function color($group, $color: primary) {
114
- $color-palette-key: map-get(map-get($color-keys-data, $group), $color);
115
- $fetched-color: map-get($color-palette-data, $color-palette-key);
108
+ @function color($hue, $value: base) {
109
+ $fetched-color: map-get(map-get($color-palette-data, $hue), $value);
116
110
 
117
111
  @if type-of($fetched-color) == color {
118
112
  @return $fetched-color;
119
113
  } @else {
120
- @error "Color `#{$group} - #{$color}` not found. Available colors: #{available-names($color-keys-data)}";
114
+ @error "Color `#{$hue} - #{$value}` not found. Available colors: #{available-names($color-palette-data)}";
121
115
  }
122
116
  }
@@ -0,0 +1,11 @@
1
+ $shadows-data: (
2
+ base: 0 2px 4px color(shade)
3
+ );
4
+
5
+ //*
6
+ // Returns the default shadow.
7
+ // @return {List} The shadow value.
8
+
9
+ @function shadow() {
10
+ @return map-get($shadows-data, base);
11
+ }
@@ -1,9 +1,9 @@
1
1
  $unit: 4px;
2
2
 
3
3
  $spacing-data: (
4
- base: rem($unit * 4),
5
- tiny: rem($unit),
4
+ extra-tight: rem($unit),
6
5
  tight: rem($unit * 2),
6
+ base: rem($unit * 4),
7
7
  loose: rem($unit * 6)
8
8
  );
9
9
 
@@ -1,181 +1,48 @@
1
- $type-sizes-data: (
2
- x-small: rem(12px),
3
- small: rem(14px),
4
- medium: rem(16px),
5
- large: rem(20px),
6
- x-large: rem(32px)
7
- );
8
-
9
- $type-size-keys-data: (
10
- meta: small,
11
- body: medium,
12
- section-title: medium,
13
- page-title: large,
14
- display-title: x-large,
15
- label: x-small
16
- );
17
-
18
- //*
19
- // Returns the font size value for a given typography style.
20
- //
21
- // @param {String} $style - The key for the style.
22
- // @return {Number} The font size value.
23
-
24
- @function type-size($style) {
25
- $size-key: map-get($type-size-keys-data, $style);
26
- $fetched-value: map-get($type-sizes-data, $size-key);
27
-
28
- @if type-of($fetched-value) == number {
29
- @return $fetched-value;
30
- } @else {
31
- @error "Type style `#{$style}` not found. Available styles: #{available-names($type-size-keys-data)}";
32
- }
33
- }
34
-
35
-
36
-
37
- $type-line-heights-data: (
38
- x-small: rem(14px),
39
- small: rem(20px),
40
- medium: rem(24px),
41
- large: rem(48px)
42
- );
43
-
44
- $type-line-height-keys-data: (
45
- meta: small,
46
- body: medium,
47
- section-title: small,
48
- page-title: small,
49
- display-title: large,
50
- label: x-small
51
- );
52
-
53
- //*
54
- // Returns the line height value for a given typography style.
55
- //
56
- // @param {String} $style - The key for the style.
57
- // @return {Number} The line-height value.
58
-
59
- @function type-line-height($style) {
60
- $line-height-key: map-get($type-line-height-keys-data, $style);
61
- $fetched-value: map-get($type-line-heights-data, $line-height-key);
62
-
63
- @if type-of($fetched-value) == number {
64
- @return $fetched-value;
65
- } @else {
66
- @error "Type style `#{$style}` not found. Available styles: #{available-names($type-line-height-keys-data)}";
67
- }
68
- }
69
-
70
-
71
-
72
- $type-weights-data: (
73
- bold: 600,
74
- medium: 500,
75
- regular: 400,
76
- light: 300
77
- );
78
-
79
- $type-weight-keys-data: (
80
- meta: regular,
81
- emphasized: bold,
82
- body: regular,
83
- section-title: medium,
84
- page-title: regular,
85
- display-title: light
86
- );
87
-
88
- //*
89
- // Returns the font weight value for a given typography style.
90
- //
91
- // @param {String} $style - The key for the variant.
92
- // @return {Number} The font-weight value.
93
-
94
- @function type-weight($style) {
95
- $weight-key: map-get($type-weight-keys-data, $style);
96
- $fetched-value: map-get($type-weights-data, $weight-key);
97
-
98
- @if type-of($fetched-value) == number {
99
- @return $fetched-value;
100
- } @else {
101
- @error "Type style `#{$style}` not found. Available styles: #{available-names($type-weight-keys-data)}";
102
- }
103
- }
104
-
105
-
106
-
107
- $type-family-data: (
108
- sans-serif: ("Helvetica Neue", Helvetica, Arial, sans-serif),
109
- monospace: (Monaco, Consolas, "Lucida Console", monospace)
110
- );
111
-
112
- $type-family-keys-data: (
113
- base: sans-serif,
114
- code: monospace
115
- );
116
-
117
- //*
118
- // Returns the font family for a given typography style.
119
- //
120
- // @param {String} $style - The key for the variant.
121
- // @return {List} The font family list.
122
-
123
- @function type-family($style) {
124
- $family-key: map-get($type-family-keys-data, $style);
125
- $fetched-value: map-get($type-family-data, $family-key);
126
-
127
- @if $fetched-value != null {
128
- @return $fetched-value;
129
- } @else {
130
- @error "Type family `#{$style}` not found. Available families: #{available-names($type-family-keys-data)}";
131
- }
132
- }
133
-
134
-
135
-
136
- @mixin emphasized-text {
137
- font-weight: type-weight(emphasized);
138
- }
139
-
140
- @mixin meta-text {
141
- font-size: type-size(meta);
142
- line-height: type-line-height(meta);
143
- font-weight: type-weight(meta);
144
- color: color(text, secondary);
1
+ @mixin text-style-title {
2
+ color: color(ink);
3
+ font-size: rem(20px);
4
+ line-height: rem(24px);
5
+ font-weight: 400;
145
6
  }
146
7
 
147
- @mixin body-text {
148
- font-size: type-size(body);
149
- line-height: type-line-height(body);
150
- font-weight: type-weight(body);
151
- color: color(text, primary);
8
+ @mixin text-style-heading {
9
+ color: color(ink);
10
+ font-size: rem(18px);
11
+ line-height: rem(24px);
12
+ font-weight: 600;
152
13
  }
153
14
 
154
- @mixin section-title {
155
- font-size: type-size(section-title);
156
- line-height: type-line-height(section-title);
157
- font-weight: type-weight(section-title);
158
- color: color(text, primary);
15
+ @mixin text-style-subheading {
16
+ color: color(ink);
17
+ font-size: rem(13px);
18
+ line-height: rem(20px);
19
+ font-weight: 700;
20
+ text-transform: uppercase;
21
+ letter-spacing: 0.04em;
22
+ -webkit-font-smoothing: antialiased;
23
+ -moz-osx-font-smoothing: grayscale;
159
24
  }
160
25
 
161
- @mixin page-title {
162
- font-size: type-size(page-title);
163
- line-height: type-line-height(page-title);
164
- font-weight: type-weight(page-title);
165
- color: color(text, primary);
26
+ @mixin text-style-body {
27
+ color: color(ink);
28
+ font-size: rem(16px);
29
+ line-height: rem(24px);
30
+ -webkit-font-smoothing: antialiased;
31
+ -moz-osx-font-smoothing: grayscale;
166
32
  }
167
33
 
168
- @mixin display-title {
169
- font-size: type-size(display-title);
170
- line-height: type-line-height(display-title);
171
- font-weight: type-weight(display-title);
172
- color: color(text, primary);
34
+ @mixin text-style-meta {
35
+ color: color(ink);
36
+ font-size: rem(14px);
37
+ line-height: rem(20px);
38
+ -webkit-font-smoothing: antialiased;
39
+ -moz-osx-font-smoothing: grayscale;
173
40
  }
174
41
 
175
- @mixin error-text {
176
- color: color(text, error);
42
+ @mixin text-emphasis-strong {
43
+ font-weight: 600;
177
44
  }
178
45
 
179
- @mixin succes-text {
180
- color: color(text, success);
46
+ @mixin text-emphasis-subdued {
47
+ color: color(ink, light);
181
48
  }
@@ -2,6 +2,14 @@ require 'smart_properties'
2
2
 
3
3
  module Quilt
4
4
  module UIHelper
5
+ def self.logger_callback
6
+ nil
7
+ end
8
+
9
+ def self.render_fallback
10
+ false
11
+ end
12
+
5
13
  class Component < SimpleDelegator
6
14
  # rubocop:disable Alias
7
15
  alias view_context __getobj__
@@ -9,12 +17,33 @@ module Quilt
9
17
 
10
18
  include SmartProperties
11
19
 
12
- def self.fallback
13
- Fallback.new
20
+ property :options, accepts: Hash, default: {}, required: true
21
+
22
+ def initialize(view_context, **args)
23
+ class_properties = self.class.properties.keys
24
+ valid_args = args.slice(*class_properties)
25
+ options = args.except(*class_properties)
26
+
27
+ super(view_context, options: options, **valid_args)
14
28
  end
15
29
 
16
- def self.with_airbag
17
- Airbag.new(self)
30
+ def self.new(*args, **attrs, &block)
31
+ super
32
+ rescue SmartProperties::AssignmentError => error
33
+ fallback_error = FallbackError.new(error)
34
+
35
+ raise unless Quilt::UIHelper.render_fallback
36
+ if Quilt::UIHelper.logger_callback.respond_to?(:call)
37
+ Quilt::UIHelper.logger_callback.call(fallback_error)
38
+ else
39
+ Rails.logger.error(fallback_error)
40
+ end
41
+
42
+ fallback(*args, **attrs, &block)
43
+ end
44
+
45
+ def self.fallback(*)
46
+ Fallback.new
18
47
  end
19
48
 
20
49
  def self.variants
@@ -24,7 +53,7 @@ module Quilt
24
53
 
25
54
  def self.variant(name, accepts: [true, false], **options)
26
55
  @variants ||= {}
27
- @variants[name] = Variant.new(name.to_s.dasherize, Set.new(accepts))
56
+ @variants[name] = Variant.new(name, Set.new(accepts))
28
57
  property name, accepts: accepts, **options
29
58
  end
30
59
 
@@ -32,44 +61,26 @@ module Quilt
32
61
  define_method(:base_css_class) { class_name }
33
62
  end
34
63
 
35
- property :options, accepts: Hash, default: {}, required: true
36
-
37
- def initialize(view_context, **args)
38
- class_properties = self.class.properties.keys
39
- valid_args = args.slice(*class_properties)
40
- options = args.except(*class_properties)
41
-
42
- super(view_context, options: options, **valid_args)
43
- end
44
-
45
64
  def base_css_class
46
65
  raise NotImplementedError, 'You need to define a base_css_class method for your component'
47
66
  end
48
67
 
49
- def render
50
- raise NotImplementedError, 'You must implement a render method'
51
- end
52
-
53
68
  def variant_classes(*additional_classes)
54
- classes = self.class.variants.reduce([base_css_class]) do |matched_classes, (variant_name, variant)|
55
- if self[variant_name]
56
- matched_classes << "#{base_css_class}--#{variant.boolean? ? variant.name : self[variant_name]}"
57
- else
58
- matched_classes
59
- end
69
+ classes = [base_css_class]
70
+
71
+ self.class.variants.each do |variant_key, variant|
72
+ variant_value = self[variant_key]
73
+ next unless variant_value
74
+ classes << base_css_class_variant(variant_key, variant_value, variant)
60
75
  end
61
76
 
62
77
  [classes, additional_classes].flatten.compact
63
78
  end
64
79
 
65
80
  def ui_content_tag(name, *content_or_additional_options, **base_options, &block)
66
- additional_options = content_or_additional_options.last.is_a?(Hash) ? content_or_additional_options.pop : {}
81
+ additional_options = content_or_additional_options.extract_options!
67
82
 
68
- content = if block_given?
69
- capture(&block)
70
- else
71
- Array(content_or_additional_options).compact.inject(''.html_safe, :<<)
72
- end
83
+ content = block_given? ? capture(&block) : safe_join(Array(content_or_additional_options))
73
84
 
74
85
  options = base_options.merge(additional_options) do |key, base_value, additional_value|
75
86
  case key
@@ -83,6 +94,18 @@ module Quilt
83
94
  content.blank? ? ''.html_safe : content_tag(name, options) { content }
84
95
  end
85
96
 
97
+ protected
98
+
99
+ def base_css_class_variant(variant_key, variant_value, variant)
100
+ class_name = "#{base_css_class}--#{variant_key}"
101
+ class_name << "-#{variant_value}" unless variant.boolean?
102
+ bemerize(class_name)
103
+ end
104
+
105
+ def bemerize(css_class_name)
106
+ css_class_name.gsub(/(?<!_)_(?!_)/, '-')
107
+ end
108
+
86
109
  class Variant < Struct.new(:name, :values)
87
110
  BOOLEAN = Set.new([true, false]).freeze
88
111
 
@@ -91,27 +114,13 @@ module Quilt
91
114
  end
92
115
  end
93
116
 
94
- class Airbag < SimpleDelegator
95
- # rubocop:disable Alias
96
- alias component_class __getobj__
97
- # rubocop:enable Alias
98
-
99
- def new(*args, **attrs, &block)
100
- component_class.new(*args, **attrs, &block)
101
- rescue SmartProperties::AssignmentError => error
102
- raise if Rails.env.development? || Rails.env.test?
103
- Bugsnag.notify(FallbackWarning.new(error))
104
- component_class.fallback(*args, **attrs, &block)
105
- end
106
- end
107
-
108
117
  class Fallback
109
118
  def render(*)
110
119
  ''.html_safe
111
120
  end
112
121
  end
113
122
 
114
- class FallbackWarning < RuntimeError; end
123
+ class FallbackError < RuntimeError; end
115
124
  end
116
125
  end
117
126
  end
@@ -1,3 +1,3 @@
1
1
  module Quilt
2
- VERSION = '0.0.4'
2
+ VERSION = '0.0.5'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: quilt_ui
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4
4
+ version: 0.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Chris Sauve
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-04-04 00:00:00.000000000 Z
11
+ date: 2016-04-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: smart_properties
@@ -50,8 +50,10 @@ files:
50
50
  - assets/stylesheets/quilt/components.scss
51
51
  - assets/stylesheets/quilt/components/badge.scss
52
52
  - assets/stylesheets/quilt/foundation.scss
53
+ - assets/stylesheets/quilt/foundation/border-radius.scss
54
+ - assets/stylesheets/quilt/foundation/borders.scss
53
55
  - assets/stylesheets/quilt/foundation/colors.scss
54
- - assets/stylesheets/quilt/foundation/defaults.scss
56
+ - assets/stylesheets/quilt/foundation/shadows.scss
55
57
  - assets/stylesheets/quilt/foundation/spacing.scss
56
58
  - assets/stylesheets/quilt/foundation/typography.scss
57
59
  - assets/stylesheets/quilt/foundation/utilities.scss
@@ -1,22 +0,0 @@
1
- $defaults-data: (
2
- border-radius: 3px,
3
- box-shadow: 0 2px 4px color(shadow),
4
- border-width: 1px,
5
- border: 1px solid color(border)
6
- );
7
-
8
- //*
9
- // Returns the default value for the passed property
10
- //
11
- // @param {String} $property - The property to retrieve
12
- // @return {Mixed} The default value for that property
13
-
14
- @function default($property) {
15
- $fetched-value: map-get($defaults-data, $property);
16
-
17
- @if $fetched-value != null {
18
- @return $fetched-value;
19
- } @else {
20
- @error "Default property `#{$property}` not found. Available properties: #{available-names($defaults-data)}";
21
- }
22
- }