archetype 0.0.1.pre.3.55c4182 → 0.0.1.pre.3.83f0d7a

Sign up to get free protection for your applications and to get access to all the features.
Files changed (32) hide show
  1. checksums.yaml +7 -0
  2. data/CHANGELOG.md +6 -0
  3. data/LICENSE +1 -1
  4. data/README.md +1 -1
  5. data/stylesheets/archetype/_config.scss +14 -5
  6. data/stylesheets/archetype/_hacks.scss +1 -4
  7. data/stylesheets/archetype/_ui.scss +13 -4
  8. data/stylesheets/archetype/util/_styles.scss +12 -0
  9. data/test/fixtures/stylesheets/archetype/assets/images/vendor/archetype/animations/loaders-s7889ccc8c1.png +0 -0
  10. data/test/fixtures/stylesheets/archetype/expected/base.css +349 -0
  11. data/test/fixtures/stylesheets/archetype/source/base.scss +3 -0
  12. data/test/fixtures/stylesheets/archetype/tmp/b.css +14 -0
  13. data/test/fixtures/stylesheets/archetype/tmp/base.css +349 -0
  14. data/test/fixtures/stylesheets/archetype/tmp/hacks/ie_pseudo.css +11 -0
  15. data/test/fixtures/stylesheets/archetype/tmp/styleguide/buttons.css +2091 -0
  16. data/test/fixtures/stylesheets/archetype/tmp/styleguide/fallback_styles.css +9 -0
  17. data/test/fixtures/stylesheets/archetype/tmp/styleguide/nested_styleguides.css +24 -0
  18. data/test/fixtures/stylesheets/archetype/tmp/styleguide/selective_state.css +174 -0
  19. data/test/fixtures/stylesheets/archetype/tmp/ui/glyph_icon.css +37 -0
  20. data/test/fixtures/stylesheets/archetype/tmp/ui/hide_element.css +8 -0
  21. data/test/fixtures/stylesheets/archetype/tmp/ui/stroke.css +17 -0
  22. data/test/fixtures/stylesheets/archetype/tmp/ui/triangle.css +35 -0
  23. data/test/fixtures/stylesheets/archetype/tmp/utilities/associative.css +9 -0
  24. data/test/fixtures/stylesheets/archetype/tmp/utilities/if-set.css +9 -0
  25. data/test/fixtures/stylesheets/archetype/tmp/utilities/spacing/horizontal-spacing.css +29 -0
  26. data/test/fixtures/stylesheets/archetype/tmp/utilities/spacing/vertical-spacing.css +29 -0
  27. data/test/fixtures/stylesheets/archetype/tmp/utilities/styles/filter.css +11 -0
  28. data/test/fixtures/stylesheets/archetype/tmp/utilities/styles/font-family.css +16 -0
  29. data/test/fixtures/stylesheets/archetype/tmp/utilities/styles/z-index.css +15 -0
  30. data/test/fixtures/stylesheets/archetype/tmp/utilities/targeting/target-browser.css +100 -0
  31. data/test/fixtures/stylesheets/archetype/tmp/utilities/targeting/target-os.css +55 -0
  32. metadata +57 -20
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: fd37881a20697b5141c48ba115124957e6332e3d
4
+ data.tar.gz: 0ed65c39dbb264d66901c12780388d4c4ea9a069
5
+ SHA512:
6
+ metadata.gz: d50d86a02eb1f61af101de19725af81282fb8d5b24a7fe7ba0991af3b7e2b460ff658a0ab7d6ee1a221c7173cc46fb4463d7f36c2839e5ec2a26e8945efe3cd2
7
+ data.tar.gz: fe7c83bb70a19d4c6b8606928ddde1091905a5bae9527846d66be9e9513a7b27fafd5f4ac3daa9e520e31e49a2a3886cbf7eede80b7e1fc425aab6ab8b2fe3eb
data/CHANGELOG.md CHANGED
@@ -11,14 +11,20 @@
11
11
  - added `styleguide-component-exists()` method to check if a component/extension has already been registered in the theme
12
12
  - added `memoize` compiler configuration to allow enabling/disabling the internal styleguide memoizer
13
13
  - `glyph-icon()` can now take `false` as an icon name and not output anything
14
+ - added `unstyled-button()` method to remove default styling from a `<button>` element
15
+ - added `prefixed-tag()` method for consistency when generating tag names
16
+ - added Chinese font stacks
14
17
 
15
18
  ### Resolved Issues:
16
19
 
17
20
  - quotes on strings passed to `associative()` weren't being stripped correctly
21
+ - fixed some minor glyph issues
18
22
 
19
23
  ### Tests:
20
24
 
21
25
  - added test case for fallback CSS properties
26
+ - added test case for generating loading spinner keyframe animations
27
+ - updated test cases for minor changes
22
28
 
23
29
  ## 0.0.1.pre.2 (unreleased)
24
30
 
data/LICENSE CHANGED
@@ -1,5 +1,5 @@
1
1
  Archetype
2
- Copyright (c) 2012 LinkedIn
2
+ Copyright (c) 2013 LinkedIn Corp. All rights reserved.
3
3
  Apache Software License 2.0
4
4
 
5
5
 
data/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # Archetype
2
2
 
3
- [![Build Status](https://travis-ci.org/eoneill/archetype.png)](https://travis-ci.org/eoneill/archetype)
3
+ [![Build Status](https://travis-ci.org/linkedin/archetype.png)](https://travis-ci.org/linkedin/archetype)
4
4
 
5
5
  Archetype is a UI pattern and component library for quickly iterating on and maintaining scalable web interfaces.
6
6
 
@@ -46,7 +46,7 @@ $CONFIG_Z_INDEX_BASE: 0 !default;
46
46
  $CONFIG_Z_LAYERS_OFFSET: 100 !default; // the offset between z-layers
47
47
  $CONFIG_Z_LAYERS: (default dialog navigation) !default; // the orders for the z-layers
48
48
 
49
- // compass
49
+ // compass
50
50
  $COMPASS_RTL_SUPPORT: false !default; // does your Compass version support RTL? set to true if Compass mixins support RTL
51
51
 
52
52
  // sprites
@@ -304,12 +304,12 @@ $CONFIG_BROWSER_WARN_ON_HACK: false !default;
304
304
  $CONFIG_BROWSER_VENDORS_HACK: (
305
305
  (webkit-all, safari webkit chrome),
306
306
  (gecko-all, firefox gecko mozilla),
307
- (opera-all, opera)
307
+ (opera-all, opera) // NOTE: this may stop working once Opera switches over to using WebKit/Blink
308
308
  ) !default;
309
309
 
310
310
  // os targeting
311
311
  $CONFIG_OS_VENDORS_CLASS: (
312
- (os-win, windows win winxp win7),
312
+ (os-win, windows win winxp win7 win8),
313
313
  (os-mac, apple mac osx),
314
314
  (os-linux, linux),
315
315
  (os-other, other misc unknown)
@@ -321,21 +321,30 @@ $CORE_SAFE_FONTS: (
321
321
  (sans-serif, (
322
322
  (default, (
323
323
  (default (sans-serif)),
324
- (ko_KR ('Malgun Gothic', default))
324
+ (ko_KR ('Malgun Gothic', default)),
325
+ (zh_TW (SimSun, default)),
326
+ (zh_CN (SimSun, default))
325
327
  )),
326
328
  (win, (
327
329
  (default (Arial, sans-serif)),
328
330
  (ja_JP (メイリオ, Meiryo, 'MS Pゴシック', 'MS PGothic', default)),
331
+ (zh_TW ('微軟正黑體', 'Microsoft JhengHei', PMingLiu, '宋体', SimSun, default)),
332
+ (zh_CN ('华文细黑', 'STHeiti Light', '微软雅黑体', 'Microsoft Yahei', '新宋体', NSimSun, '宋体', SimSun, default)),
329
333
  (ko_KR nil)
330
334
  )),
331
335
  (mac, (
332
336
  (default (Helvetica, Arial, sans-serif)),
337
+ (zh_TW ('黑體-繁', 'Heiti TC', '儷黑Pro', 'LiHei Pro', PMingLiu, '宋体', SimSun, default)),
338
+ (zh_CN ('黑体-简', 'Heiti SC', '华文细黑', 'STHeiti Light', '华文黑体', STHeiti, default)),
333
339
  (ja_JP ('Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', 'MS Pゴシック', 'MS PGothic', default)),
334
340
  (ko_KR nil)
335
341
  )),
336
342
  (linux, (
337
343
  (default (Helvetica, FreeSans, 'Liberation Sans', Helmet, Arial, sans-serif)),
338
- (CJK nil)
344
+ (zh_TW (PMingLiu, '宋体', SimSun, default)),
345
+ (zh_CN ('新宋体', NSimSun, '宋体', SimSun, default)),
346
+ (ja_JP nil),
347
+ (ko_KR nil)
339
348
  ))
340
349
  )),
341
350
  (serif, (
@@ -67,9 +67,6 @@
67
67
  $styles: if($styles and $styles != nil, #{$CONFIG_GENERATED_TAG_CSS}#{$styles}, $CONFIG_GENERATED_TAG_CSS);
68
68
  }
69
69
  $styles: if($styles and $styles != nil, 'this.el.style.cssText="#{$styles}",', '');
70
- @if $name != '' {
71
- $name: '-#{$name}';
72
- }
73
- *zoom: expression(this.runtimeStyle.zoom="1", this.el=document.createElement("#{$CONFIG_GENERATED_TAG_PREFIX}#{$name}"),#{$content}#{$styles}this.#{$method}(this.el));
70
+ *zoom: expression(this.runtimeStyle.zoom="1", this.el=document.createElement("#{prefixed-tag($name)}"),#{$content}#{$styles}this.#{$method}(this.el));
74
71
  }
75
72
  }
@@ -124,7 +124,7 @@
124
124
  // @param $direction {String} top=vertical left=horizontal
125
125
  @mixin fade-box($width: 100%, $height: 100%, $direction: top) {
126
126
  $direction: rtl($direction);
127
- // TODO - update this when Compass supports IE alpha channels
127
+ // TODO - update this when Compass supports IE alpha channels
128
128
  @if $direction == left {
129
129
  @include ie-filter(gradient(startColorstr='#00ffffff', endColorstr='#ffffff', GradientType=1));
130
130
  }
@@ -167,13 +167,13 @@
167
167
  @else {
168
168
  @if $size == default {
169
169
  $default-size: nil;
170
- @if icon {
170
+ @if $icon {
171
171
  $default-size: nth-cyclic($char-mapping, 2);
172
172
  }
173
173
  $size: if(type-of($default-size) == number, $default-size, 100%);
174
174
  }
175
175
  // if the size is under a given threshold, use a halfling, if available
176
- @if icon {
176
+ @if $icon {
177
177
  $char-code: nth-cyclic(-compass-list($char-code), if(comparable($CONFIG_GLYPHS_THRESHOLD, $size) and $size <= $CONFIG_GLYPHS_THRESHOLD, 2, 1));
178
178
  }
179
179
  $selector: if(index(before after, $placement), '&:#{$placement}', '&');
@@ -189,7 +189,7 @@
189
189
  content: $char-code;
190
190
  }
191
191
  }
192
- @if($selector != '&') {
192
+ @if($selector != '&' and $ie-styles != nil) {
193
193
  // support for IE6/7
194
194
  $styles: "font-family:'#{$CONFIG_GLYPHS_NAME}';font-weight:#{$CONFIG_GLYPHS_WEIGHT};font-style:#{$CONFIG_GLYPHS_STYLE};text-decoration:inherit;";
195
195
  @if($size != nil) {
@@ -314,4 +314,13 @@
314
314
  height: $height;
315
315
  margin-left: $width / -2;
316
316
  margin-top: $height / -2;
317
+ }
318
+
319
+ // a method for removing default styling from a button
320
+ // @mixin unstyled-button
321
+ @mixin unstyled-button() {
322
+ background: none;
323
+ border: none;
324
+ padding: 0;
325
+ @include appearance(none);
317
326
  }
@@ -452,3 +452,15 @@
452
452
  }
453
453
  z-index: ($value + $layer);
454
454
  }
455
+
456
+ // generate a tag name with a prefix
457
+ // @function prefixed-tag
458
+ // @param $tag {String} the tag to prefix
459
+ // @param $prefix {String} the prefix to prepend to the tag
460
+ // @return {String} the prefix joined with the tag
461
+ @function prefixed-tag($tag: '', $prefix: $CONFIG_GENERATED_TAG_PREFIX) {
462
+ @if $tag != '' {
463
+ $tag: '-#{$tag}';
464
+ }
465
+ @return '#{$prefix}#{$tag}';
466
+ }
@@ -0,0 +1,349 @@
1
+ @-webkit-keyframes archetype-loader {
2
+ from {
3
+ -webkit-transform: rotate(0deg);
4
+ }
5
+
6
+ to {
7
+ -webkit-transform: rotate(360deg);
8
+ }
9
+ }
10
+
11
+ @-moz-keyframes archetype-loader {
12
+ from {
13
+ -moz-transform: rotate(0deg);
14
+ }
15
+
16
+ to {
17
+ -moz-transform: rotate(360deg);
18
+ }
19
+ }
20
+
21
+ @-ms-keyframes archetype-loader {
22
+ from {
23
+ -ms-transform: rotate(0deg);
24
+ }
25
+
26
+ to {
27
+ -ms-transform: rotate(360deg);
28
+ }
29
+ }
30
+
31
+ @-o-keyframes archetype-loader {
32
+ from {
33
+ -o-transform: rotate(0deg);
34
+ }
35
+
36
+ to {
37
+ -o-transform: rotate(360deg);
38
+ }
39
+ }
40
+
41
+ @keyframes archetype-loader {
42
+ from {
43
+ transform: rotate(0deg);
44
+ }
45
+
46
+ to {
47
+ transform: rotate(360deg);
48
+ }
49
+ }
50
+
51
+ @-webkit-keyframes archetype-loader-position-medium-1 {
52
+ from, to {
53
+ background-position: 0 -230px;
54
+ width: 58px;
55
+ height: 58px;
56
+ margin-left: -29px;
57
+ margin-top: -29px;
58
+ }
59
+ }
60
+
61
+ @-moz-keyframes archetype-loader-position-medium-1 {
62
+ from, to {
63
+ background-position: 0 -230px;
64
+ width: 58px;
65
+ height: 58px;
66
+ margin-left: -29px;
67
+ margin-top: -29px;
68
+ }
69
+ }
70
+
71
+ @-ms-keyframes archetype-loader-position-medium-1 {
72
+ from, to {
73
+ background-position: 0 -230px;
74
+ width: 58px;
75
+ height: 58px;
76
+ margin-left: -29px;
77
+ margin-top: -29px;
78
+ }
79
+ }
80
+
81
+ @-o-keyframes archetype-loader-position-medium-1 {
82
+ from, to {
83
+ background-position: 0 -230px;
84
+ width: 58px;
85
+ height: 58px;
86
+ margin-left: -29px;
87
+ margin-top: -29px;
88
+ }
89
+ }
90
+
91
+ @keyframes archetype-loader-position-medium-1 {
92
+ from, to {
93
+ background-position: 0 -230px;
94
+ width: 58px;
95
+ height: 58px;
96
+ margin-left: -29px;
97
+ margin-top: -29px;
98
+ }
99
+ }
100
+
101
+ @-webkit-keyframes archetype-loader-position-medium-2 {
102
+ from, to {
103
+ background-position: 0 -288px;
104
+ width: 58px;
105
+ height: 58px;
106
+ margin-left: -29px;
107
+ margin-top: -29px;
108
+ }
109
+ }
110
+
111
+ @-moz-keyframes archetype-loader-position-medium-2 {
112
+ from, to {
113
+ background-position: 0 -288px;
114
+ width: 58px;
115
+ height: 58px;
116
+ margin-left: -29px;
117
+ margin-top: -29px;
118
+ }
119
+ }
120
+
121
+ @-ms-keyframes archetype-loader-position-medium-2 {
122
+ from, to {
123
+ background-position: 0 -288px;
124
+ width: 58px;
125
+ height: 58px;
126
+ margin-left: -29px;
127
+ margin-top: -29px;
128
+ }
129
+ }
130
+
131
+ @-o-keyframes archetype-loader-position-medium-2 {
132
+ from, to {
133
+ background-position: 0 -288px;
134
+ width: 58px;
135
+ height: 58px;
136
+ margin-left: -29px;
137
+ margin-top: -29px;
138
+ }
139
+ }
140
+
141
+ @keyframes archetype-loader-position-medium-2 {
142
+ from, to {
143
+ background-position: 0 -288px;
144
+ width: 58px;
145
+ height: 58px;
146
+ margin-left: -29px;
147
+ margin-top: -29px;
148
+ }
149
+ }
150
+
151
+ @-webkit-keyframes archetype-loader-position-small-1 {
152
+ from, to {
153
+ background-position: 0 -692px;
154
+ width: 16px;
155
+ height: 16px;
156
+ margin-left: -8px;
157
+ margin-top: -8px;
158
+ }
159
+ }
160
+
161
+ @-moz-keyframes archetype-loader-position-small-1 {
162
+ from, to {
163
+ background-position: 0 -692px;
164
+ width: 16px;
165
+ height: 16px;
166
+ margin-left: -8px;
167
+ margin-top: -8px;
168
+ }
169
+ }
170
+
171
+ @-ms-keyframes archetype-loader-position-small-1 {
172
+ from, to {
173
+ background-position: 0 -692px;
174
+ width: 16px;
175
+ height: 16px;
176
+ margin-left: -8px;
177
+ margin-top: -8px;
178
+ }
179
+ }
180
+
181
+ @-o-keyframes archetype-loader-position-small-1 {
182
+ from, to {
183
+ background-position: 0 -692px;
184
+ width: 16px;
185
+ height: 16px;
186
+ margin-left: -8px;
187
+ margin-top: -8px;
188
+ }
189
+ }
190
+
191
+ @keyframes archetype-loader-position-small-1 {
192
+ from, to {
193
+ background-position: 0 -692px;
194
+ width: 16px;
195
+ height: 16px;
196
+ margin-left: -8px;
197
+ margin-top: -8px;
198
+ }
199
+ }
200
+
201
+ @-webkit-keyframes archetype-loader-position-small-2 {
202
+ from, to {
203
+ background-position: 0 -708px;
204
+ width: 16px;
205
+ height: 16px;
206
+ margin-left: -8px;
207
+ margin-top: -8px;
208
+ }
209
+ }
210
+
211
+ @-moz-keyframes archetype-loader-position-small-2 {
212
+ from, to {
213
+ background-position: 0 -708px;
214
+ width: 16px;
215
+ height: 16px;
216
+ margin-left: -8px;
217
+ margin-top: -8px;
218
+ }
219
+ }
220
+
221
+ @-ms-keyframes archetype-loader-position-small-2 {
222
+ from, to {
223
+ background-position: 0 -708px;
224
+ width: 16px;
225
+ height: 16px;
226
+ margin-left: -8px;
227
+ margin-top: -8px;
228
+ }
229
+ }
230
+
231
+ @-o-keyframes archetype-loader-position-small-2 {
232
+ from, to {
233
+ background-position: 0 -708px;
234
+ width: 16px;
235
+ height: 16px;
236
+ margin-left: -8px;
237
+ margin-top: -8px;
238
+ }
239
+ }
240
+
241
+ @keyframes archetype-loader-position-small-2 {
242
+ from, to {
243
+ background-position: 0 -708px;
244
+ width: 16px;
245
+ height: 16px;
246
+ margin-left: -8px;
247
+ margin-top: -8px;
248
+ }
249
+ }
250
+
251
+ @-webkit-keyframes archetype-loader-position-large-1 {
252
+ from, to {
253
+ background-position: 0 -462px;
254
+ width: 115px;
255
+ height: 115px;
256
+ margin-left: -57.5px;
257
+ margin-top: -57.5px;
258
+ }
259
+ }
260
+
261
+ @-moz-keyframes archetype-loader-position-large-1 {
262
+ from, to {
263
+ background-position: 0 -462px;
264
+ width: 115px;
265
+ height: 115px;
266
+ margin-left: -57.5px;
267
+ margin-top: -57.5px;
268
+ }
269
+ }
270
+
271
+ @-ms-keyframes archetype-loader-position-large-1 {
272
+ from, to {
273
+ background-position: 0 -462px;
274
+ width: 115px;
275
+ height: 115px;
276
+ margin-left: -57.5px;
277
+ margin-top: -57.5px;
278
+ }
279
+ }
280
+
281
+ @-o-keyframes archetype-loader-position-large-1 {
282
+ from, to {
283
+ background-position: 0 -462px;
284
+ width: 115px;
285
+ height: 115px;
286
+ margin-left: -57.5px;
287
+ margin-top: -57.5px;
288
+ }
289
+ }
290
+
291
+ @keyframes archetype-loader-position-large-1 {
292
+ from, to {
293
+ background-position: 0 -462px;
294
+ width: 115px;
295
+ height: 115px;
296
+ margin-left: -57.5px;
297
+ margin-top: -57.5px;
298
+ }
299
+ }
300
+
301
+ @-webkit-keyframes archetype-loader-position-large-2 {
302
+ from, to {
303
+ background-position: 0 -577px;
304
+ width: 115px;
305
+ height: 115px;
306
+ margin-left: -57.5px;
307
+ margin-top: -57.5px;
308
+ }
309
+ }
310
+
311
+ @-moz-keyframes archetype-loader-position-large-2 {
312
+ from, to {
313
+ background-position: 0 -577px;
314
+ width: 115px;
315
+ height: 115px;
316
+ margin-left: -57.5px;
317
+ margin-top: -57.5px;
318
+ }
319
+ }
320
+
321
+ @-ms-keyframes archetype-loader-position-large-2 {
322
+ from, to {
323
+ background-position: 0 -577px;
324
+ width: 115px;
325
+ height: 115px;
326
+ margin-left: -57.5px;
327
+ margin-top: -57.5px;
328
+ }
329
+ }
330
+
331
+ @-o-keyframes archetype-loader-position-large-2 {
332
+ from, to {
333
+ background-position: 0 -577px;
334
+ width: 115px;
335
+ height: 115px;
336
+ margin-left: -57.5px;
337
+ margin-top: -57.5px;
338
+ }
339
+ }
340
+
341
+ @keyframes archetype-loader-position-large-2 {
342
+ from, to {
343
+ background-position: 0 -577px;
344
+ width: 115px;
345
+ height: 115px;
346
+ margin-left: -57.5px;
347
+ margin-top: -57.5px;
348
+ }
349
+ }