archetype 0.0.1.pre.3.00dfd9a → 0.0.1.pre.3.6ed259b

Sign up to get free protection for your applications and to get access to all the features.
Files changed (44) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +7 -0
  3. data/README.md +1 -1
  4. data/VERSION.yml +1 -1
  5. data/bin/archetype +3 -0
  6. data/lib/archetype.rb +4 -0
  7. data/lib/archetype/actions/help.rb +16 -0
  8. data/lib/archetype/actions/theme.rb +73 -0
  9. data/lib/archetype/executor.rb +27 -0
  10. data/lib/archetype/sass_extensions/functions/lists.rb +26 -32
  11. data/lib/archetype/sass_extensions/functions/styleguide.rb +1 -1
  12. data/lib/archetype/sass_extensions/functions/ui.rb +2 -1
  13. data/lib/archetype/sass_extensions/functions/version.rb +2 -2
  14. data/lib/archetype/version.rb +2 -2
  15. data/stylesheets/archetype/_config.scss +10 -6
  16. data/stylesheets/archetype/_hacks.scss +40 -16
  17. data/stylesheets/archetype/_ui.scss +10 -4
  18. data/stylesheets/archetype/styleguide/components/_buttons.scss +1 -0
  19. data/stylesheets/archetype/util/_styles.scss +14 -3
  20. data/templates/_theme/_components.scss +3 -0
  21. data/templates/_theme/_config.scss +1 -0
  22. data/templates/_theme/_core.scss +13 -0
  23. data/templates/_theme/_helpers.scss +1 -0
  24. data/templates/_theme/_primitives.scss +3 -0
  25. data/templates/_theme/components/README +1 -0
  26. data/templates/_theme/primitives/README +1 -0
  27. data/test/fixtures/stylesheets/archetype/assets/images/vendor/archetype/animations/loaders-s7889ccc8c1.png +0 -0
  28. data/test/fixtures/stylesheets/archetype/config.rb +2 -0
  29. data/test/fixtures/stylesheets/archetype/expected/hacks/ie_pseudo.css +3 -3
  30. data/test/fixtures/stylesheets/archetype/expected/hacks/transparent_focusable.css +4 -0
  31. data/test/fixtures/stylesheets/archetype/expected/styleguide/buttons.css +28 -0
  32. data/test/fixtures/stylesheets/archetype/expected/styleguide/extend.css +7 -0
  33. data/test/fixtures/stylesheets/archetype/expected/styleguide/selective_state.css +3 -0
  34. data/test/fixtures/stylesheets/archetype/expected/ui/glyph_icon.css +52 -5
  35. data/test/fixtures/stylesheets/archetype/expected/utilities/custom_output_styler.css +8 -0
  36. data/test/fixtures/stylesheets/archetype/expected/utilities/targeting/target-browser.css +5 -0
  37. data/test/fixtures/stylesheets/archetype/source/hacks/transparent_focusable.scss +5 -0
  38. data/test/fixtures/stylesheets/archetype/source/styleguide/extend.scss +23 -0
  39. data/test/fixtures/stylesheets/archetype/source/ui/glyph_icon.scss +12 -0
  40. data/test/fixtures/stylesheets/archetype/source/utilities/custom_output_styler.scss +21 -0
  41. data/test/fixtures/stylesheets/archetype/source/utilities/targeting/target-browser.scss +8 -1
  42. data/test/helpers/test_case.rb +2 -2
  43. data/test/units/sass_extensions_test.rb +18 -25
  44. metadata +29 -3
@@ -0,0 +1,8 @@
1
+ .test {
2
+ font-size: 13px;
3
+ line-height: 17px;
4
+ /* post override */
5
+ color: #222222;
6
+ /* pre override */
7
+ font-weight: normal;
8
+ }
@@ -98,3 +98,8 @@
98
98
  .target-opera, .target-opera x:-o-prefocus {
99
99
  width: 82%;
100
100
  }
101
+
102
+ .ie.lte8 .target-with-content-block {
103
+ /* testing content block */
104
+ color: red;
105
+ }
@@ -0,0 +1,5 @@
1
+ @import "archetype";
2
+
3
+ .test {
4
+ @include transparent-focusable();
5
+ }
@@ -0,0 +1,23 @@
1
+ @import "archetype";
2
+
3
+ .some-extend-class {
4
+ color: red;
5
+ }
6
+
7
+ %some-extend-placeholder {
8
+ background: green;
9
+ }
10
+
11
+ @if not styleguide-component-exists(extend-styleguide-test, $CONFIG_THEME) {
12
+ $a-blackhole: styleguide-add-component(extend-styleguide-test, (), (
13
+ (default, (
14
+ extend '.some-extend-class',
15
+ extend '%some-extend-placeholder'
16
+ )),
17
+ nil
18
+ ), $CONFIG_THEME);
19
+ }
20
+
21
+ .extend-styleguide-test {
22
+ @include styleguide(extend-styleguide-test);
23
+ }
@@ -11,3 +11,15 @@
11
11
  .size {
12
12
  @include glyph-icon(caret-down, $size: 20px);
13
13
  }
14
+
15
+ $CONFIG_GENERATED_TAG_INLINE: false;
16
+ .not-inline {
17
+ @include glyph-icon(caret-down);
18
+ }
19
+
20
+ .ie-uid {
21
+ @include glyph-icon(caret-down, $ie-uid: my-custom-id);
22
+ #{$archetype-glyph-selector} {
23
+ color: pink;
24
+ }
25
+ }
@@ -0,0 +1,21 @@
1
+ // define the test function
2
+ @function has-custom-output-styler($property, $value, $method: pre) {
3
+ @if $property == color {
4
+ @return true;
5
+ }
6
+ // only if it's a post processing all values
7
+ @else if $property == line-height and $method == post {
8
+ @return true;
9
+ }
10
+ @return false;
11
+ }
12
+ // define the custom styler
13
+ @mixin custom-output-styler($property, $value, $method: pre) {
14
+ #{$property}: $value; /* #{$method} override */
15
+ }
16
+
17
+ @import "archetype";
18
+
19
+ .test {
20
+ @include styleguide(copy);
21
+ }
@@ -43,7 +43,7 @@
43
43
 
44
44
  .target-ie-lte-9 {
45
45
  @include target-browser(ie lte 9, border-color, #111);
46
- @include target-browser(ie lte 9, background, #2c2c2b);
46
+ @include target-browser(ie lte 9, background, #2c2c2b);
47
47
  }
48
48
 
49
49
  .target-ie-7-8-9 {
@@ -68,3 +68,10 @@
68
68
  .target-opera {
69
69
  @include target-browser(opera, width, 82%);
70
70
  }
71
+
72
+ .target-with-content-block {
73
+ @include target-browser(ie lte 8) {
74
+ /* testing content block */
75
+ color: red;
76
+ };
77
+ }
@@ -24,7 +24,7 @@ module Compass
24
24
  assert false, diff_as_string(before.inspect, after.inspect)
25
25
  end
26
26
  end
27
-
27
+
28
28
  module ClassMethods
29
29
 
30
30
  def let(method, &block)
@@ -51,7 +51,7 @@ module Compass
51
51
  end
52
52
  end
53
53
 
54
- private
54
+ private
55
55
 
56
56
  def underscore(string)
57
57
  string.gsub(' ', '_')
@@ -4,6 +4,7 @@ require 'archetype'
4
4
  class SassExtensionsTest < Test::Unit::TestCase
5
5
  setup do
6
6
  Compass.reset_configuration!
7
+ Compass.configuration.testing = true
7
8
  end
8
9
 
9
10
  ## VERSION
@@ -16,20 +17,20 @@ class SassExtensionsTest < Test::Unit::TestCase
16
17
  assert_equal "true", evaluate("archetype-version('Compass >= 0.12')")
17
18
  assert_equal "false", evaluate("archetype-version('Sass >= 99.0.0')")
18
19
  assert_equal "true", evaluate("archetype-version('Sass gt 3.0')")
19
- assert_equal "false", evaluate("archetype-version(Archetype ne 99)")
20
+ assert_equal "true", evaluate("archetype-version(Archetype ne 99)")
20
21
  end
21
22
 
22
23
 
23
24
  ## ENVIRONMENT
24
25
  # test that archetype-env() is working correctly
25
26
  def test_env
26
- Compass.reset_configuration!
27
+ reset
27
28
  assert_equal "development", evaluate("archetype-env()")
28
29
  Compass.configuration.environment = :production
29
30
  assert_equal "production", evaluate("archetype-env()")
30
31
  Compass.configuration.environment = :staging
31
32
  assert_equal "staging", evaluate("archetype-env()")
32
- Compass.reset_configuration!
33
+ reset
33
34
  end
34
35
 
35
36
 
@@ -49,19 +50,6 @@ class SassExtensionsTest < Test::Unit::TestCase
49
50
  # TODO
50
51
  end
51
52
 
52
- # list-sort
53
- #def test_list_sort
54
- # assert_equal "1 2 3 4", evaluate("list-sort(2 4 3 1)")
55
- # assert_equal "4 3 2 1", evaluate("list-sort(2 4 3 1, true)")
56
- # assert_equal "a b c d", evaluate("list-sort(d a b c)")
57
- #end
58
-
59
- # list-reverse
60
- #def test_list_reverse
61
- # assert_equal "4 3 2 1", evaluate("list-reverse(1 2 3 4)")
62
- # assert_equal "d c b a", evaluate("list-reverse(a b c d)")
63
- #end
64
-
65
53
  # list-add
66
54
  def test_list_add
67
55
  assert_equal "2 3 4", evaluate("list-add(1 2 3, 1)")
@@ -127,16 +115,16 @@ class SassExtensionsTest < Test::Unit::TestCase
127
115
  ## LOCALE
128
116
  # locale
129
117
  def test_locale
130
- Compass.reset_configuration!
118
+ reset
131
119
  assert_equal "en_US", evaluate("locale()")
132
120
  Compass.configuration.locale = "ja_JP"
133
121
  assert_equal "ja_JP", evaluate("locale()")
134
- Compass.reset_configuration!
122
+ reset
135
123
  end
136
124
 
137
125
  # lang
138
126
  def test_lang
139
- Compass.reset_configuration!
127
+ reset
140
128
  assert_equal "true", evaluate("lang(en_US)")
141
129
  assert_equal "true", evaluate("lang(fr_FR en_US)")
142
130
  assert_equal "false", evaluate("lang(fr_FR)")
@@ -145,7 +133,7 @@ class SassExtensionsTest < Test::Unit::TestCase
145
133
  assert_equal "true", evaluate("lang(ja_JP)")
146
134
  assert_equal "true", evaluate("lang(CJK)")
147
135
  assert_equal "true", evaluate("lang(CJK en_US)")
148
- Compass.reset_configuration!
136
+ reset
149
137
  end
150
138
 
151
139
 
@@ -183,11 +171,11 @@ class SassExtensionsTest < Test::Unit::TestCase
183
171
  ## UI
184
172
  # test generating unique tokens
185
173
  def test_unique
186
- assert_equal ".archetype-uid-1", evaluate("unique(class)")
187
- assert_equal ".archetype-uid-2", evaluate("unique(class)")
188
- assert_equal "\#archetype-uid-3", evaluate("unique(id)")
189
- assert_equal "my-prefix-archetype-uid-4", evaluate("unique(my-prefix-)")
190
- assert_equal ".testing-archetype-uid-5", evaluate("unique('.testing-')")
174
+ assert_equal ".archetype-uid-RANDOM_UID", evaluate("unique(class)")
175
+ assert_equal ".archetype-uid-RANDOM_UID", evaluate("unique(class)")
176
+ assert_equal "\#archetype-uid-RANDOM_UID", evaluate("unique(id)")
177
+ assert_equal "my-prefix-archetype-uid-RANDOM_UID", evaluate("unique(my-prefix-)")
178
+ assert_equal ".testing-archetype-uid-RANDOM_UID", evaluate("unique('.testing-')")
191
179
  end
192
180
 
193
181
  # test pseudo content escaping and formatting for innerHTML
@@ -204,4 +192,9 @@ protected
204
192
  def evaluate(value)
205
193
  Sass::Script::Parser.parse(value, 0, 0).perform(Sass::Environment.new).to_s
206
194
  end
195
+
196
+ def reset
197
+ Compass.reset_configuration!
198
+ Compass.configuration.testing = true
199
+ end
207
200
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: archetype
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1.pre.3.00dfd9a
4
+ version: 0.0.1.pre.3.6ed259b
5
5
  platform: ruby
6
6
  authors:
7
7
  - Eugene ONeill
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-05-07 00:00:00.000000000 Z
12
+ date: 2013-08-15 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: compass
@@ -56,7 +56,8 @@ dependencies:
56
56
  description: UI Pattern and component library for quickly iterating on and maintaining
57
57
  scalable web interfaces
58
58
  email: oneill.eugene@gmail.com
59
- executables: []
59
+ executables:
60
+ - archetype
60
61
  extensions: []
61
62
  extra_rdoc_files: []
62
63
  files:
@@ -64,6 +65,10 @@ files:
64
65
  - README.md
65
66
  - CHANGELOG.md
66
67
  - VERSION.yml
68
+ - bin/archetype
69
+ - lib/archetype/actions/help.rb
70
+ - lib/archetype/actions/theme.rb
71
+ - lib/archetype/executor.rb
67
72
  - lib/archetype/functions/hash.rb
68
73
  - lib/archetype/functions/helpers.rb
69
74
  - lib/archetype/functions/styleguide_memoizer.rb
@@ -140,6 +145,13 @@ files:
140
145
  - stylesheets/archetype/util/_styles.scss
141
146
  - stylesheets/archetype/util/_targeting.scss
142
147
  - stylesheets/archetype/util/_units.scss
148
+ - templates/_theme/_components.scss
149
+ - templates/_theme/_config.scss
150
+ - templates/_theme/_core.scss
151
+ - templates/_theme/_helpers.scss
152
+ - templates/_theme/_primitives.scss
153
+ - templates/_theme/components/README
154
+ - templates/_theme/primitives/README
143
155
  - templates/example/index.html
144
156
  - templates/example/manifest.rb
145
157
  - templates/example/screen.scss
@@ -193,13 +205,16 @@ files:
193
205
  - test/fixtures/stylesheets/archetype/assets/images/vendor/archetype/animations/loaders/small/small_dark.png
194
206
  - test/fixtures/stylesheets/archetype/assets/images/vendor/archetype/animations/loaders/small/small_dark_static.png
195
207
  - test/fixtures/stylesheets/archetype/assets/images/vendor/archetype/animations/loaders/small/small_static.png
208
+ - test/fixtures/stylesheets/archetype/assets/images/vendor/archetype/animations/loaders-s7889ccc8c1.png
196
209
  - test/fixtures/stylesheets/archetype/assets/images/vendor/archetype/sprites/hovercard_tip.png
197
210
  - test/fixtures/stylesheets/archetype/config.rb
198
211
  - test/fixtures/stylesheets/archetype/expected/b.css
199
212
  - test/fixtures/stylesheets/archetype/expected/base.css
200
213
  - test/fixtures/stylesheets/archetype/expected/hacks/ie_pseudo.css
214
+ - test/fixtures/stylesheets/archetype/expected/hacks/transparent_focusable.css
201
215
  - test/fixtures/stylesheets/archetype/expected/locale.css
202
216
  - test/fixtures/stylesheets/archetype/expected/styleguide/buttons.css
217
+ - test/fixtures/stylesheets/archetype/expected/styleguide/extend.css
203
218
  - test/fixtures/stylesheets/archetype/expected/styleguide/fallback_styles.css
204
219
  - test/fixtures/stylesheets/archetype/expected/styleguide/nested_styleguides.css
205
220
  - test/fixtures/stylesheets/archetype/expected/styleguide/selective_state.css
@@ -208,6 +223,7 @@ files:
208
223
  - test/fixtures/stylesheets/archetype/expected/ui/stroke.css
209
224
  - test/fixtures/stylesheets/archetype/expected/ui/triangle.css
210
225
  - test/fixtures/stylesheets/archetype/expected/utilities/associative.css
226
+ - test/fixtures/stylesheets/archetype/expected/utilities/custom_output_styler.css
211
227
  - test/fixtures/stylesheets/archetype/expected/utilities/if-set.css
212
228
  - test/fixtures/stylesheets/archetype/expected/utilities/spacing/horizontal-spacing.css
213
229
  - test/fixtures/stylesheets/archetype/expected/utilities/spacing/vertical-spacing.css
@@ -219,8 +235,10 @@ files:
219
235
  - test/fixtures/stylesheets/archetype/source/b.scss
220
236
  - test/fixtures/stylesheets/archetype/source/base.scss
221
237
  - test/fixtures/stylesheets/archetype/source/hacks/ie_pseudo.scss
238
+ - test/fixtures/stylesheets/archetype/source/hacks/transparent_focusable.scss
222
239
  - test/fixtures/stylesheets/archetype/source/locale.scss
223
240
  - test/fixtures/stylesheets/archetype/source/styleguide/buttons.scss
241
+ - test/fixtures/stylesheets/archetype/source/styleguide/extend.scss
224
242
  - test/fixtures/stylesheets/archetype/source/styleguide/fallback_styles.scss
225
243
  - test/fixtures/stylesheets/archetype/source/styleguide/nested_styleguides.scss
226
244
  - test/fixtures/stylesheets/archetype/source/styleguide/selective_state.scss
@@ -229,6 +247,7 @@ files:
229
247
  - test/fixtures/stylesheets/archetype/source/ui/stroke.scss
230
248
  - test/fixtures/stylesheets/archetype/source/ui/triangle.scss
231
249
  - test/fixtures/stylesheets/archetype/source/utilities/associative.scss
250
+ - test/fixtures/stylesheets/archetype/source/utilities/custom_output_styler.scss
232
251
  - test/fixtures/stylesheets/archetype/source/utilities/if-set.scss
233
252
  - test/fixtures/stylesheets/archetype/source/utilities/spacing/horizontal-spacing.scss
234
253
  - test/fixtures/stylesheets/archetype/source/utilities/spacing/vertical-spacing.scss
@@ -284,13 +303,16 @@ test_files:
284
303
  - test/fixtures/stylesheets/archetype/assets/images/vendor/archetype/animations/loaders/small/small_dark.png
285
304
  - test/fixtures/stylesheets/archetype/assets/images/vendor/archetype/animations/loaders/small/small_dark_static.png
286
305
  - test/fixtures/stylesheets/archetype/assets/images/vendor/archetype/animations/loaders/small/small_static.png
306
+ - test/fixtures/stylesheets/archetype/assets/images/vendor/archetype/animations/loaders-s7889ccc8c1.png
287
307
  - test/fixtures/stylesheets/archetype/assets/images/vendor/archetype/sprites/hovercard_tip.png
288
308
  - test/fixtures/stylesheets/archetype/config.rb
289
309
  - test/fixtures/stylesheets/archetype/expected/b.css
290
310
  - test/fixtures/stylesheets/archetype/expected/base.css
291
311
  - test/fixtures/stylesheets/archetype/expected/hacks/ie_pseudo.css
312
+ - test/fixtures/stylesheets/archetype/expected/hacks/transparent_focusable.css
292
313
  - test/fixtures/stylesheets/archetype/expected/locale.css
293
314
  - test/fixtures/stylesheets/archetype/expected/styleguide/buttons.css
315
+ - test/fixtures/stylesheets/archetype/expected/styleguide/extend.css
294
316
  - test/fixtures/stylesheets/archetype/expected/styleguide/fallback_styles.css
295
317
  - test/fixtures/stylesheets/archetype/expected/styleguide/nested_styleguides.css
296
318
  - test/fixtures/stylesheets/archetype/expected/styleguide/selective_state.css
@@ -299,6 +321,7 @@ test_files:
299
321
  - test/fixtures/stylesheets/archetype/expected/ui/stroke.css
300
322
  - test/fixtures/stylesheets/archetype/expected/ui/triangle.css
301
323
  - test/fixtures/stylesheets/archetype/expected/utilities/associative.css
324
+ - test/fixtures/stylesheets/archetype/expected/utilities/custom_output_styler.css
302
325
  - test/fixtures/stylesheets/archetype/expected/utilities/if-set.css
303
326
  - test/fixtures/stylesheets/archetype/expected/utilities/spacing/horizontal-spacing.css
304
327
  - test/fixtures/stylesheets/archetype/expected/utilities/spacing/vertical-spacing.css
@@ -310,8 +333,10 @@ test_files:
310
333
  - test/fixtures/stylesheets/archetype/source/b.scss
311
334
  - test/fixtures/stylesheets/archetype/source/base.scss
312
335
  - test/fixtures/stylesheets/archetype/source/hacks/ie_pseudo.scss
336
+ - test/fixtures/stylesheets/archetype/source/hacks/transparent_focusable.scss
313
337
  - test/fixtures/stylesheets/archetype/source/locale.scss
314
338
  - test/fixtures/stylesheets/archetype/source/styleguide/buttons.scss
339
+ - test/fixtures/stylesheets/archetype/source/styleguide/extend.scss
315
340
  - test/fixtures/stylesheets/archetype/source/styleguide/fallback_styles.scss
316
341
  - test/fixtures/stylesheets/archetype/source/styleguide/nested_styleguides.scss
317
342
  - test/fixtures/stylesheets/archetype/source/styleguide/selective_state.scss
@@ -320,6 +345,7 @@ test_files:
320
345
  - test/fixtures/stylesheets/archetype/source/ui/stroke.scss
321
346
  - test/fixtures/stylesheets/archetype/source/ui/triangle.scss
322
347
  - test/fixtures/stylesheets/archetype/source/utilities/associative.scss
348
+ - test/fixtures/stylesheets/archetype/source/utilities/custom_output_styler.scss
323
349
  - test/fixtures/stylesheets/archetype/source/utilities/if-set.scss
324
350
  - test/fixtures/stylesheets/archetype/source/utilities/spacing/horizontal-spacing.scss
325
351
  - test/fixtures/stylesheets/archetype/source/utilities/spacing/vertical-spacing.scss