partystreusel 1.1.1 → 1.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (153) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +1 -0
  3. data/.ruby-version +1 -1
  4. data/.travis.yml +5 -2
  5. data/CHANGELOG.md +4 -0
  6. data/Gruntfile.coffee +86 -0
  7. data/README.md +10 -1
  8. data/app/assets/images/icons/icon-sprite.svg +1 -0
  9. data/app/assets/images/icons/png/arrow-left.png +0 -0
  10. data/app/assets/images/icons/png/arrow-right.png +0 -0
  11. data/app/assets/images/icons/png/close.png +0 -0
  12. data/app/assets/images/icons/png/download.png +0 -0
  13. data/app/assets/images/icons/png/folder.png +0 -0
  14. data/app/assets/images/icons/png/menu.png +0 -0
  15. data/app/assets/images/icons/png/search.png +0 -0
  16. data/app/assets/images/icons/source/arrow-left.svg +1 -0
  17. data/app/assets/images/icons/source/arrow-right.svg +1 -0
  18. data/app/assets/images/icons/source/close.svg +1 -0
  19. data/app/assets/images/icons/source/download.svg +1 -0
  20. data/app/assets/images/icons/source/folder.svg +1 -0
  21. data/app/assets/images/icons/source/menu.svg +1 -0
  22. data/app/assets/images/icons/source/search.svg +1 -0
  23. data/app/assets/javascripts/partystreusel/tab.js.coffee +1 -0
  24. data/app/assets/stylesheets/partystreusel.css.sass +1 -0
  25. data/app/controllers/partystreusel/styleguide_controller.rb +14 -0
  26. data/config/routes.rb +6 -0
  27. data/{Gemfile → jasmine/Gemfile} +2 -2
  28. data/{Guardfile → jasmine/Guardfile} +0 -0
  29. data/{config.ru → jasmine/config.ru} +0 -0
  30. data/lib/generators/partystreusel/styleguide_generator.rb +30 -0
  31. data/lib/partystreusel/engine.rb +18 -0
  32. data/lib/partystreusel/helpers/icon_helper.rb +9 -0
  33. data/lib/partystreusel/helpers.rb +1 -0
  34. data/lib/partystreusel/version.rb +1 -1
  35. data/lib/partystreusel.rb +4 -16
  36. data/package.json +22 -0
  37. data/partystreusel.gemspec +0 -1
  38. data/spec/javascripts/partystreusel/readmore_spec.js.coffee +1 -1
  39. data/styleguide/Gemfile +24 -0
  40. data/styleguide/config.rb +110 -0
  41. data/styleguide/source/index.html.haml +8 -0
  42. data/styleguide/source/javascripts/application.js.coffee +30 -0
  43. data/styleguide/source/javascripts/modernizr.js +306 -0
  44. data/styleguide/source/javascripts/views/_initializer.js.coffee +15 -0
  45. data/styleguide/source/layouts/_favicons.html.haml +3 -0
  46. data/styleguide/source/layouts/_icons.html.erb +31 -0
  47. data/styleguide/source/layouts/_typekit.html.haml +4 -0
  48. data/styleguide/source/layouts/application.html.haml +58 -0
  49. data/styleguide/source/partials/_footer.html.haml +0 -0
  50. data/styleguide/source/partials/_google_analytics.html.erb +9 -0
  51. data/styleguide/source/partials/_header.html.haml +3 -0
  52. data/styleguide/source/partials/_offcanvas.html.haml +6 -0
  53. data/styleguide/source/partials/_offcanvas_nav.html.haml +22 -0
  54. data/styleguide/source/styleguide/_styleguide_nav.html.haml +80 -0
  55. data/styleguide/source/styleguide/accordion.html.haml +27 -0
  56. data/styleguide/source/styleguide/breadcrumb.html.haml +18 -0
  57. data/styleguide/source/styleguide/buttons.html.haml +70 -0
  58. data/styleguide/source/styleguide/content.html.haml +20 -0
  59. data/styleguide/source/styleguide/dropdowns.html.haml +30 -0
  60. data/styleguide/source/styleguide/embeds.html.haml +12 -0
  61. data/styleguide/source/styleguide/form.html.haml +71 -0
  62. data/styleguide/source/styleguide/iconbar.html.haml +34 -0
  63. data/styleguide/source/styleguide/icons.html.haml +67 -0
  64. data/styleguide/source/styleguide/image.html.haml +17 -0
  65. data/styleguide/source/styleguide/index.html.haml +6 -0
  66. data/styleguide/source/styleguide/linklist.html.haml +47 -0
  67. data/styleguide/source/styleguide/options.html.haml +28 -0
  68. data/styleguide/source/styleguide/readmore.html.haml +21 -0
  69. data/styleguide/source/styleguide/slider.html.haml +21 -0
  70. data/styleguide/source/styleguide/switches.html.haml +10 -0
  71. data/styleguide/source/styleguide/tab.html.haml +34 -0
  72. data/styleguide/source/styleguide/table.html.haml +51 -0
  73. data/styleguide/source/styleguide/teaser.html.haml +55 -0
  74. data/styleguide/source/styleguide/teaser_assets.html.haml +55 -0
  75. data/styleguide/source/styleguide/teaser_card.html.haml +79 -0
  76. data/styleguide/source/styleguide/teaser_list.html.haml +55 -0
  77. data/styleguide/source/styleguide/topbar.html.haml +72 -0
  78. data/styleguide/source/styleguide/two_column.html.haml +18 -0
  79. data/styleguide/source/styleguide/typo.html.haml +71 -0
  80. data/styleguide/source/stylesheets/fallbacks/grunticon.loader.js +3 -0
  81. data/styleguide/source/stylesheets/partystreusel/_helpers.sass +10 -0
  82. data/styleguide/source/stylesheets/partystreusel/_mixins.sass +14 -0
  83. data/styleguide/source/stylesheets/partystreusel/_settings.sass +129 -0
  84. data/styleguide/source/stylesheets/partystreusel/_styleguide.sass +32 -0
  85. data/styleguide/source/stylesheets/partystreusel/all.css +55 -0
  86. data/styleguide/source/stylesheets/partystreusel/application.css.sass +94 -0
  87. data/styleguide/source/stylesheets/partystreusel/fallbacks/_icons_preview_template.hbs +25 -0
  88. data/styleguide/source/stylesheets/partystreusel/fallbacks/_icons_stylesheet_template.hbs +1 -0
  89. data/styleguide/source/stylesheets/partystreusel/fallbacks/icons.data.png.css +21 -0
  90. data/styleguide/source/stylesheets/partystreusel/fallbacks/icons.data.svg.css +21 -0
  91. data/styleguide/source/stylesheets/partystreusel/fallbacks/icons.fallback.css.scss +21 -0
  92. data/styleguide/source/stylesheets/partystreusel/ie8.css.sass +18 -0
  93. data/styleguide/source/stylesheets/partystreusel/large/_layout.sass +3 -0
  94. data/styleguide/source/stylesheets/partystreusel/large/_states.sass +0 -0
  95. data/styleguide/source/stylesheets/partystreusel/large/_typo.sass +21 -0
  96. data/styleguide/source/stylesheets/partystreusel/large/modules/_accordion.sass +19 -0
  97. data/styleguide/source/stylesheets/partystreusel/large/modules/_breadcrumb.sass +2 -0
  98. data/styleguide/source/stylesheets/partystreusel/large/modules/_content.sass +5 -0
  99. data/styleguide/source/stylesheets/partystreusel/large/modules/_form.sass +2 -0
  100. data/styleguide/source/stylesheets/partystreusel/large/modules/_image.sass +3 -0
  101. data/styleguide/source/stylesheets/partystreusel/large/modules/_links.sass +6 -0
  102. data/styleguide/source/stylesheets/partystreusel/large/modules/_readmore.sass +2 -0
  103. data/styleguide/source/stylesheets/partystreusel/large/modules/_slider.sass +47 -0
  104. data/styleguide/source/stylesheets/partystreusel/large/modules/_tab.sass +8 -0
  105. data/styleguide/source/stylesheets/partystreusel/large/modules/_teaser--assets.sass +12 -0
  106. data/styleguide/source/stylesheets/partystreusel/large/modules/_teaser--card.sass +8 -0
  107. data/styleguide/source/stylesheets/partystreusel/large/modules/_teaser--list.sass +11 -0
  108. data/styleguide/source/stylesheets/partystreusel/large/modules/_teaser.sass +10 -0
  109. data/styleguide/source/stylesheets/partystreusel/large/modules/_topbar.sass +65 -0
  110. data/styleguide/source/stylesheets/partystreusel/large/modules/_two_column.sass +3 -0
  111. data/styleguide/source/stylesheets/partystreusel/medium/_typo.sass +24 -0
  112. data/styleguide/source/stylesheets/partystreusel/medium/modules/_content.sass +2 -0
  113. data/styleguide/source/stylesheets/partystreusel/medium/modules/_form.sass +16 -0
  114. data/styleguide/source/stylesheets/partystreusel/medium/modules/_iconbar.sass +7 -0
  115. data/styleguide/source/stylesheets/partystreusel/medium/modules/_links.sass +5 -0
  116. data/styleguide/source/stylesheets/partystreusel/medium/modules/_teaser--assets.sass +15 -0
  117. data/styleguide/source/stylesheets/partystreusel/medium/modules/_teaser--card.sass +7 -0
  118. data/styleguide/source/stylesheets/partystreusel/medium/modules/_teaser--list.sass +9 -0
  119. data/styleguide/source/stylesheets/partystreusel/medium/modules/_teaser.sass +13 -0
  120. data/styleguide/source/stylesheets/partystreusel/normalize.css +375 -0
  121. data/styleguide/source/stylesheets/partystreusel/partystreusel.css.sass +2 -0
  122. data/styleguide/source/stylesheets/partystreusel/small/_layout.sass +18 -0
  123. data/styleguide/source/stylesheets/partystreusel/small/_states.sass +0 -0
  124. data/styleguide/source/stylesheets/partystreusel/small/_typo.sass +81 -0
  125. data/styleguide/source/stylesheets/partystreusel/small/modules/_accordion.sass +68 -0
  126. data/styleguide/source/stylesheets/partystreusel/small/modules/_breadcrumb.sass +36 -0
  127. data/styleguide/source/stylesheets/partystreusel/small/modules/_button.sass +145 -0
  128. data/styleguide/source/stylesheets/partystreusel/small/modules/_content.sass +5 -0
  129. data/styleguide/source/stylesheets/partystreusel/small/modules/_dropdown.sass +33 -0
  130. data/styleguide/source/stylesheets/partystreusel/small/modules/_embeds.sass +24 -0
  131. data/styleguide/source/stylesheets/partystreusel/small/modules/_form.sass +115 -0
  132. data/styleguide/source/stylesheets/partystreusel/small/modules/_grid.sass +5 -0
  133. data/styleguide/source/stylesheets/partystreusel/small/modules/_iconbar.sass +41 -0
  134. data/styleguide/source/stylesheets/partystreusel/small/modules/_icons.sass +23 -0
  135. data/styleguide/source/stylesheets/partystreusel/small/modules/_image.sass +18 -0
  136. data/styleguide/source/stylesheets/partystreusel/small/modules/_links.sass +49 -0
  137. data/styleguide/source/stylesheets/partystreusel/small/modules/_offcanvas.sass +109 -0
  138. data/styleguide/source/stylesheets/partystreusel/small/modules/_offcanvas_nav.sass +35 -0
  139. data/styleguide/source/stylesheets/partystreusel/small/modules/_options.sass +117 -0
  140. data/styleguide/source/stylesheets/partystreusel/small/modules/_readmore.sass +36 -0
  141. data/styleguide/source/stylesheets/partystreusel/small/modules/_slider.sass +49 -0
  142. data/styleguide/source/stylesheets/partystreusel/small/modules/_switch.sass +70 -0
  143. data/styleguide/source/stylesheets/partystreusel/small/modules/_tab.sass +39 -0
  144. data/styleguide/source/stylesheets/partystreusel/small/modules/_table.sass +43 -0
  145. data/styleguide/source/stylesheets/partystreusel/small/modules/_teaser--assets.sass +57 -0
  146. data/styleguide/source/stylesheets/partystreusel/small/modules/_teaser--card.sass +18 -0
  147. data/styleguide/source/stylesheets/partystreusel/small/modules/_teaser--list.sass +20 -0
  148. data/styleguide/source/stylesheets/partystreusel/small/modules/_teaser.sass +50 -0
  149. data/styleguide/source/stylesheets/partystreusel/small/modules/_topbar.sass +80 -0
  150. data/styleguide/source/stylesheets/partystreusel/small/modules/_two_column.sass +2 -0
  151. data/styleguide/source/stylesheets/partystreusel/xlarge/modules/_teaser_assets.sass +9 -0
  152. data/styleguide/source/stylesheets/partystreusel/xlarge/modules/_teaser_card.sass +8 -0
  153. metadata +148 -38
@@ -0,0 +1,306 @@
1
+ /* Modernizr 2.8.3 (Custom Build) | MIT & BSD
2
+ * Build: http://modernizr.com/download/#-flexbox-flexboxlegacy-csstransforms-csstransforms3d-csstransitions-inlinesvg-svg-cssclasses-teststyles-testprop-testallprops-prefixes-domprefixes
3
+ */
4
+ ;
5
+
6
+
7
+
8
+ window.Modernizr = (function( window, document, undefined ) {
9
+
10
+ var version = '2.8.3',
11
+
12
+ Modernizr = {},
13
+
14
+ enableClasses = true,
15
+
16
+ docElement = document.documentElement,
17
+
18
+ mod = 'modernizr',
19
+ modElem = document.createElement(mod),
20
+ mStyle = modElem.style,
21
+
22
+ inputElem ,
23
+
24
+
25
+ toString = {}.toString,
26
+
27
+ prefixes = ' -webkit- -moz- -o- -ms- '.split(' '),
28
+
29
+
30
+
31
+ omPrefixes = 'Webkit Moz O ms',
32
+
33
+ cssomPrefixes = omPrefixes.split(' '),
34
+
35
+ domPrefixes = omPrefixes.toLowerCase().split(' '),
36
+
37
+ ns = {'svg': 'http://www.w3.org/2000/svg'},
38
+
39
+ tests = {},
40
+ inputs = {},
41
+ attrs = {},
42
+
43
+ classes = [],
44
+
45
+ slice = classes.slice,
46
+
47
+ featureName,
48
+
49
+
50
+ injectElementWithStyles = function( rule, callback, nodes, testnames ) {
51
+
52
+ var style, ret, node, docOverflow,
53
+ div = document.createElement('div'),
54
+ body = document.body,
55
+ fakeBody = body || document.createElement('body');
56
+
57
+ if ( parseInt(nodes, 10) ) {
58
+ while ( nodes-- ) {
59
+ node = document.createElement('div');
60
+ node.id = testnames ? testnames[nodes] : mod + (nodes + 1);
61
+ div.appendChild(node);
62
+ }
63
+ }
64
+
65
+ style = ['&#173;','<style id="s', mod, '">', rule, '</style>'].join('');
66
+ div.id = mod;
67
+ (body ? div : fakeBody).innerHTML += style;
68
+ fakeBody.appendChild(div);
69
+ if ( !body ) {
70
+ fakeBody.style.background = '';
71
+ fakeBody.style.overflow = 'hidden';
72
+ docOverflow = docElement.style.overflow;
73
+ docElement.style.overflow = 'hidden';
74
+ docElement.appendChild(fakeBody);
75
+ }
76
+
77
+ ret = callback(div, rule);
78
+ if ( !body ) {
79
+ fakeBody.parentNode.removeChild(fakeBody);
80
+ docElement.style.overflow = docOverflow;
81
+ } else {
82
+ div.parentNode.removeChild(div);
83
+ }
84
+
85
+ return !!ret;
86
+
87
+ },
88
+ _hasOwnProperty = ({}).hasOwnProperty, hasOwnProp;
89
+
90
+ if ( !is(_hasOwnProperty, 'undefined') && !is(_hasOwnProperty.call, 'undefined') ) {
91
+ hasOwnProp = function (object, property) {
92
+ return _hasOwnProperty.call(object, property);
93
+ };
94
+ }
95
+ else {
96
+ hasOwnProp = function (object, property) {
97
+ return ((property in object) && is(object.constructor.prototype[property], 'undefined'));
98
+ };
99
+ }
100
+
101
+
102
+ if (!Function.prototype.bind) {
103
+ Function.prototype.bind = function bind(that) {
104
+
105
+ var target = this;
106
+
107
+ if (typeof target != "function") {
108
+ throw new TypeError();
109
+ }
110
+
111
+ var args = slice.call(arguments, 1),
112
+ bound = function () {
113
+
114
+ if (this instanceof bound) {
115
+
116
+ var F = function(){};
117
+ F.prototype = target.prototype;
118
+ var self = new F();
119
+
120
+ var result = target.apply(
121
+ self,
122
+ args.concat(slice.call(arguments))
123
+ );
124
+ if (Object(result) === result) {
125
+ return result;
126
+ }
127
+ return self;
128
+
129
+ } else {
130
+
131
+ return target.apply(
132
+ that,
133
+ args.concat(slice.call(arguments))
134
+ );
135
+
136
+ }
137
+
138
+ };
139
+
140
+ return bound;
141
+ };
142
+ }
143
+
144
+ function setCss( str ) {
145
+ mStyle.cssText = str;
146
+ }
147
+
148
+ function setCssAll( str1, str2 ) {
149
+ return setCss(prefixes.join(str1 + ';') + ( str2 || '' ));
150
+ }
151
+
152
+ function is( obj, type ) {
153
+ return typeof obj === type;
154
+ }
155
+
156
+ function contains( str, substr ) {
157
+ return !!~('' + str).indexOf(substr);
158
+ }
159
+
160
+ function testProps( props, prefixed ) {
161
+ for ( var i in props ) {
162
+ var prop = props[i];
163
+ if ( !contains(prop, "-") && mStyle[prop] !== undefined ) {
164
+ return prefixed == 'pfx' ? prop : true;
165
+ }
166
+ }
167
+ return false;
168
+ }
169
+
170
+ function testDOMProps( props, obj, elem ) {
171
+ for ( var i in props ) {
172
+ var item = obj[props[i]];
173
+ if ( item !== undefined) {
174
+
175
+ if (elem === false) return props[i];
176
+
177
+ if (is(item, 'function')){
178
+ return item.bind(elem || obj);
179
+ }
180
+
181
+ return item;
182
+ }
183
+ }
184
+ return false;
185
+ }
186
+
187
+ function testPropsAll( prop, prefixed, elem ) {
188
+
189
+ var ucProp = prop.charAt(0).toUpperCase() + prop.slice(1),
190
+ props = (prop + ' ' + cssomPrefixes.join(ucProp + ' ') + ucProp).split(' ');
191
+
192
+ if(is(prefixed, "string") || is(prefixed, "undefined")) {
193
+ return testProps(props, prefixed);
194
+
195
+ } else {
196
+ props = (prop + ' ' + (domPrefixes).join(ucProp + ' ') + ucProp).split(' ');
197
+ return testDOMProps(props, prefixed, elem);
198
+ }
199
+ } tests['flexbox'] = function() {
200
+ return testPropsAll('flexWrap');
201
+ };
202
+
203
+
204
+ tests['flexboxlegacy'] = function() {
205
+ return testPropsAll('boxDirection');
206
+ };
207
+
208
+ tests['csstransforms'] = function() {
209
+ return !!testPropsAll('transform');
210
+ };
211
+
212
+
213
+ tests['csstransforms3d'] = function() {
214
+
215
+ var ret = !!testPropsAll('perspective');
216
+
217
+ if ( ret && 'webkitPerspective' in docElement.style ) {
218
+
219
+ injectElementWithStyles('@media (transform-3d),(-webkit-transform-3d){#modernizr{left:9px;position:absolute;height:3px;}}', function( node, rule ) {
220
+ ret = node.offsetLeft === 9 && node.offsetHeight === 3;
221
+ });
222
+ }
223
+ return ret;
224
+ };
225
+
226
+
227
+ tests['csstransitions'] = function() {
228
+ return testPropsAll('transition');
229
+ };
230
+
231
+
232
+
233
+ tests['svg'] = function() {
234
+ return !!document.createElementNS && !!document.createElementNS(ns.svg, 'svg').createSVGRect;
235
+ };
236
+
237
+ tests['inlinesvg'] = function() {
238
+ var div = document.createElement('div');
239
+ div.innerHTML = '<svg/>';
240
+ return (div.firstChild && div.firstChild.namespaceURI) == ns.svg;
241
+ }; for ( var feature in tests ) {
242
+ if ( hasOwnProp(tests, feature) ) {
243
+ featureName = feature.toLowerCase();
244
+ Modernizr[featureName] = tests[feature]();
245
+
246
+ classes.push((Modernizr[featureName] ? '' : 'no-') + featureName);
247
+ }
248
+ }
249
+
250
+
251
+
252
+ Modernizr.addTest = function ( feature, test ) {
253
+ if ( typeof feature == 'object' ) {
254
+ for ( var key in feature ) {
255
+ if ( hasOwnProp( feature, key ) ) {
256
+ Modernizr.addTest( key, feature[ key ] );
257
+ }
258
+ }
259
+ } else {
260
+
261
+ feature = feature.toLowerCase();
262
+
263
+ if ( Modernizr[feature] !== undefined ) {
264
+ return Modernizr;
265
+ }
266
+
267
+ test = typeof test == 'function' ? test() : test;
268
+
269
+ if (typeof enableClasses !== "undefined" && enableClasses) {
270
+ docElement.className += ' ' + (test ? '' : 'no-') + feature;
271
+ }
272
+ Modernizr[feature] = test;
273
+
274
+ }
275
+
276
+ return Modernizr;
277
+ };
278
+
279
+
280
+ setCss('');
281
+ modElem = inputElem = null;
282
+
283
+
284
+ Modernizr._version = version;
285
+
286
+ Modernizr._prefixes = prefixes;
287
+ Modernizr._domPrefixes = domPrefixes;
288
+ Modernizr._cssomPrefixes = cssomPrefixes;
289
+
290
+
291
+
292
+ Modernizr.testProp = function(prop){
293
+ return testProps([prop]);
294
+ };
295
+
296
+ Modernizr.testAllProps = testPropsAll;
297
+
298
+
299
+ Modernizr.testStyles = injectElementWithStyles; docElement.className = docElement.className.replace(/(^|\s)no-js(\s|$)/, '$1$2') +
300
+
301
+ (enableClasses ? ' js ' + classes.join(' ') : '');
302
+
303
+ return Modernizr;
304
+
305
+ })(this, this.document);
306
+ ;
@@ -0,0 +1,15 @@
1
+ $ ->
2
+ # Document ready...
3
+ I18n.locale = $('html').attr('lang') if I18n?
4
+
5
+ picturefill() if typeof picturefill is "function"
6
+
7
+ Streusel.selectorType = 'css_class'
8
+ Streusel.selectorPrefix = 'js'
9
+
10
+ Streusel.Readmore.init()
11
+ Streusel.Offcanvas.init()
12
+ Streusel.Topbar.init()
13
+ Streusel.Accordion.init()
14
+ Streusel.Tab.init()
15
+ Streusel.Slider.init()
@@ -0,0 +1,3 @@
1
+ -# 1. take a svg "favicon" and generate all formats with the following service: http://realfavicongenerator.net/
2
+ -# 2. Then add all the icons (and meta tags) with the following syntax example:
3
+ -# = favicon_link_tag("/apple-touch-icon-57x57.png", rel: "apple-touch-icon", sizes: "57x57")
@@ -0,0 +1,31 @@
1
+ <script>
2
+ var supportsSvg = function() {
3
+ var div = document.createElement('div');
4
+ div.innerHTML = '<svg/>';
5
+ return (div.firstChild && div.firstChild.namespaceURI) == 'http://www.w3.org/2000/svg';
6
+ };
7
+
8
+ if (!supportsSvg()) {
9
+
10
+ (function(e){function t(t,n,r,o){"use strict";function a(){for(var e,n=0;u.length>n;n++)u[n].href&&u[n].href.indexOf(t)>-1&&(e=!0);e?i.media=r||"all":setTimeout(a)}var i=e.document.createElement("link"),l=n||e.document.getElementsByTagName("script")[0],u=e.document.styleSheets;return i.rel="stylesheet",i.href=t,i.media="only x",i.onload=o||null,l.parentNode.insertBefore(i,l),a(),i}var n=function(r,o){"use strict";if(r&&3===r.length){var a=e.navigator,i=e.Image,l=!(!document.createElementNS||!document.createElementNS("http://www.w3.org/2000/svg","svg").createSVGRect||!document.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#Image","1.1")||e.opera&&-1===a.userAgent.indexOf("Chrome")||-1!==a.userAgent.indexOf("Series40")),u=new i;u.onerror=function(){n.method="png",n.href=r[2],t(r[2])},u.onload=function(){var e=1===u.width&&1===u.height,a=r[e&&l?0:e?1:2];n.method=e&&l?"svg":e?"datapng":"png",n.href=a,t(a,null,null,o)},u.src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///ywAAAAAAQABAAACAUwAOw==",document.documentElement.className+=" grunticon"}};n.loadCSS=t,e.grunticon=n})(this);
11
+
12
+ grunticon(["", "<%= asset_path('fallbacks/icons.data.png.css')%>", "<%= asset_path(:css, 'fallbacks/icons.fallback.css')%>"]);
13
+
14
+ } else {
15
+
16
+ var ajax = new XMLHttpRequest();
17
+ ajax.open("GET", "<%= asset_path('icons/icon-sprite.svg')%>", true);
18
+ ajax.onload = function(e) {
19
+ var div = document.createElement("div");
20
+ div.innerHTML = ajax.responseText;
21
+ document.body.insertBefore(div, document.body.childNodes[0]);
22
+ }
23
+ ajax.send();
24
+
25
+ }
26
+
27
+ </script>
28
+
29
+ <noscript>
30
+ <link href="<%= asset_path('fallbacks/icons.fallback.css')%>" rel="stylesheet" />
31
+ </noscript>
@@ -0,0 +1,4 @@
1
+ - if false #Rails.application.config.typekit_key.present?
2
+ = javascript_include_tag "//use.typekit.net/#{Rails.application.config.typekit_key}.js"
3
+ :javascript
4
+ try{Typekit.load();}catch(e){}
@@ -0,0 +1,58 @@
1
+ !!! 5
2
+ /[if IE 8]
3
+ %html.no-js.lt-ie10.lt-ie9{ lang: I18n.locale }
4
+ /[if IE 9]
5
+ %html.no-js.lt-ie10{ lang: I18n.locale }
6
+ <!--[if gt IE 9]><!-->
7
+ %html.no-js{ lang: I18n.locale }
8
+ <!--<![endif]-->
9
+ %head
10
+ %meta{ charset: 'utf-8' }
11
+ %meta{ 'http-equiv' => 'X-UA-Compatible', content: 'IE=edge' }
12
+ - if content_for?(:head)
13
+ = yield(:head)
14
+ - else
15
+ %title 'Untitled'
16
+ %meta{ name: 'keywords', content: '' }
17
+ %meta{ name: 'description', content: '' }
18
+
19
+ %meta{ name: 'viewport', content: 'width=device-width, initial-scale=1.0' }
20
+
21
+ -# Favicons
22
+ = render 'layouts/favicons'
23
+
24
+ = stylesheet_link_tag 'partystreusel/application', media: 'all'
25
+
26
+ <!--[if (lt IE 9) & (!IEMobile)]>
27
+ = javascript_include_tag 'html5shiv-printshiv'
28
+ = stylesheet_link_tag 'ie8', media: 'screen'
29
+ <![endif]-->
30
+
31
+ -# JavaScripts
32
+ = render 'layouts/icons'
33
+
34
+ = csrf_meta_tags
35
+
36
+ %body.js-offcanvas{ class: body_class }
37
+ .offcanvas__outer
38
+ .offcanvas__inner
39
+ %header.page__header{role: "banner"}
40
+ = render 'partials/header'
41
+ = render 'partials/offcanvas'
42
+ %main#maincontent{role: "content"}
43
+ = yield
44
+
45
+ %footer{role: "contentinfo"}
46
+ = render 'partials/footer'
47
+ .offcanvas__overlay
48
+
49
+ -# Typekit
50
+ = render 'layouts/typekit'
51
+
52
+ -# Application JavaScripts
53
+ != google_analytics_code
54
+ = javascript_include_tag 'application'#, async: !ScreenConcept.config.assets.debug
55
+
56
+ <!--[if lte IE 8]>
57
+ = javascript_include_tag 'rem'
58
+ <![endif]-->
File without changes
@@ -0,0 +1,9 @@
1
+ <script>
2
+ (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
3
+ (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
4
+ m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
5
+ })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
6
+
7
+ ga('create', '<%= google_analytics_code %>');
8
+ ga('send', 'pageview');
9
+ </script>
@@ -0,0 +1,3 @@
1
+ %button.offcanvas__opener.js-offcanvas__toggler{ href: '#'}
2
+ - streusel_icon( 'menu')
3
+ Menu
@@ -0,0 +1,6 @@
1
+ %nav.offcanvas__container{role: 'navigation'}
2
+ .offcanvas__container-inner
3
+ %button.offcanvas__close.js-offcanvas__toggler{ href: '#'}
4
+ - streusel_icon( 'close')
5
+ Close
6
+ = render 'partials/offcanvas_nav'
@@ -0,0 +1,22 @@
1
+ = render 'styleguide/styleguide_nav'
2
+
3
+ -# %ul.offcanvas-nav
4
+ -# %li
5
+ -# = link_to 'NavItem', '#', class: 'offcanvas-nav__link'
6
+ -# %li
7
+ -# = link_to 'NavItem with Sub', '#', class: 'offcanvas-nav__link'
8
+ -# %ul.offcanvas-nav__sub.offcanvas-nav__sub--open
9
+ -# %li
10
+ -# = link_to 'NavItem', '/', class: 'offcanvas-nav__link'
11
+ -# %li
12
+ -# = link_to 'NavItem active', '/', class: 'offcanvas-nav__link offcanvas-nav__link--active'
13
+ -# %li
14
+ -# = link_to 'NavItem', '/', class: 'offcanvas-nav__link'
15
+ -# %li
16
+ -# = link_to 'NavItem', '/', class: 'offcanvas-nav__link'
17
+ -# %li
18
+ -# = link_to 'NavItem', '#', class: 'offcanvas-nav__link'
19
+ -# %li
20
+ -# = link_to 'NavItem', '#', class: 'offcanvas-nav__link offcanvas-nav__link--active'
21
+ -# %li
22
+ -# = link_to 'NavItem', '#', class: 'offcanvas-nav__link'
@@ -0,0 +1,80 @@
1
+ %ul.offcanvas-nav
2
+ %li
3
+ %a.offcanvas-nav__link{ href: '#'} Base Styles
4
+ %ul.offcanvas-nav__sub
5
+ %li
6
+ = link_to 'Typography', '/styleguide/typo.html', class: 'offcanvas-nav__link'
7
+ %li
8
+ = link_to 'Tables', '/styleguide/table.html', class: 'offcanvas-nav__link'
9
+
10
+ %li
11
+ %a.offcanvas-nav__link{ href: '#'} Icons
12
+ %ul.offcanvas-nav__sub
13
+ %li
14
+ = link_to 'Icons', '/styleguide/icons.html', class: 'offcanvas-nav__link'
15
+
16
+ %li
17
+ %a.offcanvas-nav__link{ href: '#'} Form
18
+ %ul.offcanvas-nav__sub
19
+ %li
20
+ = link_to 'Base form styles', '/styleguide/form.html', class: 'offcanvas-nav__link'
21
+ %li
22
+ = link_to 'Switches', '/styleguide/switches.html', class: 'offcanvas-nav__link'
23
+ %li
24
+ = link_to 'Options (radio/checkbox)', '/styleguide/options.html', class: 'offcanvas-nav__link'
25
+
26
+ %li
27
+ %a.offcanvas-nav__link{ href: '#'} Buttons
28
+ %ul.offcanvas-nav__sub
29
+ %li
30
+ = link_to 'Buttons', '/styleguide/buttons.html', class: 'offcanvas-nav__link'
31
+ %li
32
+ = link_to 'Dropdowns', '/styleguide/dropdowns.html', class: 'offcanvas-nav__link'
33
+
34
+ %li
35
+ %a.offcanvas-nav__link{ href: '#'} Navigation
36
+ %ul.offcanvas-nav__sub
37
+ %li
38
+ = link_to 'TopBar', '/styleguide/topbar.html', class: 'offcanvas-nav__link'
39
+ %li
40
+ = link_to 'IconBar', '/styleguide/iconbar.html', class: 'offcanvas-nav__link'
41
+ %li
42
+ = link_to 'Breadcrumb', '/styleguide/breadcrumb.html', class: 'offcanvas-nav__link'
43
+
44
+ %li
45
+ %a.offcanvas-nav__link{ href: '#'} Content
46
+ %ul.offcanvas-nav__sub
47
+ %li
48
+ = link_to 'Base content', '/styleguide/content.html', class: 'offcanvas-nav__link'
49
+ %li
50
+ = link_to 'Read More', '/styleguide/readmore.html', class: 'offcanvas-nav__link'
51
+ %li
52
+ = link_to 'Accordion', '/styleguide/accordion.html', class: 'offcanvas-nav__link'
53
+ %li
54
+ = link_to 'Tab', '/styleguide/tab.html', class: 'offcanvas-nav__link'
55
+ %li
56
+ = link_to 'Two Column', '/styleguide/two_column.html', class: 'offcanvas-nav__link'
57
+ %li
58
+ = link_to 'Image', '/styleguide/image.html', class: 'offcanvas-nav__link'
59
+ %li
60
+ = link_to 'Linklist', '/styleguide/linklist.html', class: 'offcanvas-nav__link'
61
+
62
+ %li
63
+ %a.offcanvas-nav__link{ href: '#'} Teaser
64
+ %ul.offcanvas-nav__sub
65
+ %li
66
+ = link_to 'Teaser', '/styleguide/teaser.html', class: 'offcanvas-nav__link'
67
+ %li
68
+ = link_to 'Teaser Card', '/styleguide/teaser_card.html', class: 'offcanvas-nav__link'
69
+ %li
70
+ = link_to 'Teaser List', '/styleguide/teaser_list.html', class: 'offcanvas-nav__link'
71
+ %li
72
+ = link_to 'Teaser Assets', '/styleguide/teaser_assets.html', class: 'offcanvas-nav__link'
73
+
74
+ %li
75
+ %a.offcanvas-nav__link{ href: '#'} Media
76
+ %ul.offcanvas-nav__sub
77
+ %li
78
+ = link_to 'Slider', '/styleguide/slider.html', class: 'offcanvas-nav__link'
79
+ %li
80
+ = link_to 'Embeds (Videos)', '/styleguide/embeds.html', class: 'offcanvas-nav__link'
@@ -0,0 +1,27 @@
1
+ %article
2
+ %header
3
+ %h1 Akkordeon
4
+ %a{ href: '/styleguide/' } Back to Index
5
+ %hr
6
+ %section.accordion.js-accordion{ 'data-scroll-offset' => -10 }
7
+ %section.accordion__item.accordion__item--open
8
+ %h1.accordion__title Lorem ipsum dolor
9
+ .accordion__content
10
+ %section.sc-content
11
+ %p
12
+ Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.
13
+ %section.accordion__item
14
+ %h1.accordion__title Lorem ipsum dolor Lorem ipsum dolor Lorem ipsum dolor Lorem ipsum dolor
15
+ .accordion__content
16
+ %section.sc-content
17
+ %p Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum.
18
+ %section.accordion__item
19
+ %h1.accordion__title Lorem ipsum dolor
20
+ .accordion__content
21
+ %section.sc-content
22
+ %p Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum.
23
+ %section.accordion__item
24
+ %h1.accordion__title Lorem ipsum dolor
25
+ .accordion__content
26
+ %section.sc-content
27
+ %p Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum.
@@ -0,0 +1,18 @@
1
+ %article
2
+ %header
3
+ %h1 Breadcrumb
4
+ %a{ href: '/styleguide/' } Back to Index
5
+ %hr
6
+ %section.sc-content
7
+ %ol.breadcrumb{ :'aria-label' => "breadcrumb", role: 'navigation', itemprop: 'breadcrumb', itemscope: '', itemtype: 'http://schema.org/BreadcrumbList'}
8
+ %li.breadcrumb__item{ itemscope: '', itemtype: 'http://data-vocabulary.org/Breadcrumb' }
9
+ %a{ itemprop: 'url', href: 'http://goto', :'aria-level' => '1'}
10
+ %span{ itemprop: 'title' } Stufe 1
11
+ %li.breadcrumb__item{ itemscope: '', itemtype: 'http://data-vocabulary.org/Breadcrumb' }
12
+ %a{ itemprop: 'url', href: 'http://goto', :'aria-level' => '2'}
13
+ %span{ itemprop: 'title' } Stufe 2
14
+ %li.breadcrumb__item{ itemscope: '', itemtype: 'http://data-vocabulary.org/Breadcrumb' }
15
+ %a{ itemprop: 'url', href: 'http://goto', :'aria-level' => '3'}
16
+ %span{ itemprop: 'title' } Stufe 3
17
+ %li.breadcrumb__item.breadcrumb__item--active{ itemscope: '', itemtype: 'http://data-vocabulary.org/Breadcrumb' }
18
+ %span{ itemprop: 'title' } Stufe 4
@@ -0,0 +1,70 @@
1
+ %article
2
+ %header
3
+ %h1 Buttons
4
+ %a{ href: '/styleguide/' } Back to Index
5
+ %hr
6
+ %section
7
+ %div
8
+ %pre
9
+ %code Default: .btn
10
+ %a.btn{href: '#'} LinkButton 1
11
+ %button.btn{href: '#'} Button 1
12
+ %hr.sc-hr-alternate
13
+ %div
14
+ %pre
15
+ %code Secondary: .btn.btn--secondary
16
+ %a.btn.btn--secondary{href: '#'} LinkButton 2
17
+ %button.btn.btn--secondary{href: '#'} Button 2
18
+ %hr.sc-hr-alternate
19
+ %div
20
+ %pre
21
+ %code Tertiary: .btn.btn--tertiary
22
+ %a.btn.btn--tertiary{href: '#'} LinkButton 3
23
+ %button.btn.btn--tertiary{href: '#'} Button 3
24
+ %hr.sc-hr-alternate
25
+ %div
26
+ %pre
27
+ %code Icon: .btn.btn--icon
28
+ %a.btn.btn--icon{href: '#'}
29
+ - streusel_icon( 'folder')
30
+ %button.btn.btn--icon{href: '#'}
31
+ - streusel_icon( 'folder')
32
+
33
+ %hr.sc-hr-alternate
34
+ %div
35
+ %pre
36
+ %code Expanded: .btn.btn--expanded
37
+ %a.btn.btn--expanded{href: '#'} Linkbutton Expanded
38
+ %button.btn.btn--expanded{href: '#'} Linkbutton Expanded
39
+ %hr.sc-hr-alternate
40
+ %div
41
+ %pre
42
+ %code Small: .btn.btn--small
43
+ %a.btn.btn--small{href: '#'} LinkButton Small
44
+ %button.btn.btn--small{href: '#'} Button Small
45
+ %hr.sc-hr-alternate
46
+ %div
47
+ %pre
48
+ %code Button Group: div.btn__group around buttons
49
+ .btn__group{ role: "group", :'aria-label' => "..." }
50
+ %a.btn{href: '#'} Button in Group 1
51
+ %a.btn{href: '#'} Button in Group 2
52
+ %a.btn{href: '#'} Button in Group 3
53
+
54
+ %hr.sc-hr-alternate
55
+ %div
56
+ %pre
57
+ %code All Buttons types with Icons inside
58
+ %a.btn{href: '#'}
59
+ Button with Icon
60
+ - streusel_icon( 'download')
61
+ %a.btn.btn--secondary{href: '#'}
62
+ - streusel_icon( 'download')
63
+ Button with Icon
64
+ %a.btn.btn--tertiary{href: '#'}
65
+ - streusel_icon( 'download')
66
+ Button with Icon
67
+ %a.btn{href: '#'}
68
+ - streusel_icon( 'search')
69
+ %a.btn.btn--icon{href: '#'}
70
+ - streusel_icon( 'folder')